您的位置:首页 > 运维架构 > Linux

在centos7上部署kubernetes

2017-12-14 10:18 363 查看


部署kubernetes


环境准备

K8S 分为 master 和 slave 两类角色。

环境说明如下表:
对象版本IP备注
k8s-mastercentos7XX.XX.XX.179K8S的master所在主机
etcd-servercentos7XX.XX.XX.179etcd服务所在主机,与master在同一机器
k8s-slavecentos7XX.XX.XX.182K8S节点所在主机


更新yum

登录 k8s-master 主机
yum update -y
1


创建yum源

注意:k8s-master,k8s-slave都要按照以下操作创建yum源

登录master/slave主机:
vi  virt7-docker-common-release.repo
1

加入以下内容:
[virt7-docker-common-release]
name=virt7-docker-common-release
baseurl=http://cbs.centos.org/repos/virt7-docker-common-release/x86_64/os/
gpgcheck=0
1
2
3
4


安装服务

执行以下命令,安装kubernetes和etcd。
yum -y install --enablerepo=virt7-docker-common-release kubernetes etcd
1

1.修改文件/etc/kubernetes/config(所有节点)

注意,master和slave主机都要修改 

指定master主机的ip,文件内容如下:
$ cat /etc/kubernetes/config

KUBE_LOGTOSTDERR="--logtostderr=true"

KUBE_LOG_LEVEL="--v=0"

KUBE_ALLOW_PRIV="--allow-privileged=false"

KUBE_MASTER="--master=http://XX.XX.XX.179:8080"
1
2
3
4
5
6
7
8
9
10


禁用防火墙

systemctl disable iptables-services firewalld
systemctl stop iptables-services firewalld
1
2


在master节点配置kubernetes服务

1.修改配置文件/etc/etcd/etcd.conf,确保etcd监听所有地址。内容如下:
$ cat /etc/etcd/etcd.conf

ETCD_NAME=default
ETCD_DATA_DIR="/var/lib/etcd/default.etcd"
ETCD_LISTEN_CLIENT_URLS="http://0.0.0.0:2379"
1
2
3
4
5
6

2.修改配置文件/etc/kubernetes/apiserver
cat /etc/kubernetes/apiserver

KUBE_API_ADDRESS="--address=0.0.0.0"

KUBE_API_PORT="--port=8080"

KUBELET_PORT="--kubelet-port=10250"

KUBE_ETCD_SERVERS="--etcd-servers=http://127.0.0.1:2379"

KUBE_SERVICE_ADDRESSES="--service-cluster-ip-range=10.254.0.0/16"

KUBE_ADMISSION_CONTROL="--admission-control=NamespaceLifecycle,NamespaceExists,LimitRanger,ResourceQuota"

KUBE_API_ARGS=""
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

3.修改配置文件/etc/kubernetes/controller-manager,定义slave主机ip地址
KUBELET_ADDRESSES="--machines=XX.XX.XX.182"
1


在master主机上,启动服务

执行如下命令,批量启动服务
for SERVICES in etcd kube-apiserver kube-controller-manager kube-scheduler; do
systemctl restart $SERVICES
systemctl enable $SERVICES
systemctl status $SERVICES
done
1
2
3
4
5


slave节点配置

注意:slave节点主机,要安装docker,docker版本1.7以上


yum 安装kubernetes

yum -y install --enablerepo=virt7-docker-common-release kubernetes flannel
1

1.修改kubernetes配置文件,指定master。
$ cat /etc/kubernetes/config

KUBE_MASTER="--master=http://XX.XX.XX.179:8080"
1
2
3
4

2.配置kubelet服务。
$ cat /etc/kubernetes/kubelet

KUBELET_ADDRESS="--address=0.0.0.0"

KUBELET_PORT="--port=10250"

KUBELET_HOSTNAME="--hostname-override=XX.XX.XX.182"

KUBELET_API_SERVER="--api-servers=http://XX.XX.XX.179:8080"
1
2
3
4
5
6
7
8
9
10


在slave主机上,启动服务

for SERVICES in kube-proxy kubelet docker flanneld; do
systemctl restart $SERVICES
systemctl enable $SERVICES
systemctl status $SERVICES
done
1
2
3
4
5


验证

现在登陆master,确认slave的状态
$ kubectl get nodes

NAME           LABELS                                STATUS    AGE
10.16.93.182   kubernetes.io/hostname=XX.XX.XX.182   Ready     1h
1
2
3
4


参考文献

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: