kubernetes二进制部署(二)多节点部署

这是kubernetes二进制部署的第二篇
如果没有看过前面第一篇的朋友可以看看下面的:
Kubernetes二进制部署(一)单节点部署

实验环境:

负载均衡:Nginx1:192.168.35.104/24Nginx2:192.168.35.105/24Master节点:master1:192.168.35.100/24master2:192.168.35.103/24Node节点:node1:192.168.35.101/24node2:192.168.35.102/24

master02部署

1、关闭防火墙

[root@localhost ~]# systemctl stop firewalld.service?[root@localhost ~]# setenforce 0

2、在master1上操作

(1)复制kubernetes目录到master2

[root@localhost k8s]# scp -r /opt/kubernetes/ root@192.168.35.103:/optThe authenticity of host ‘192.168.35.103 (192.168.35.103)‘ can‘t be established.ECDSA key fingerprint is SHA256:VBIpN6lYzzdqZmVfp5cGBOYgDBwYuVkI55sXRAz2C/s.ECDSA key fingerprint is MD5:fe:66:e7:bd:10:1d:ce:1b:4b:82:9e:e0:99:23:d4:5f.Are you sure you want to continue connecting (yes/no)? yesWarning: Permanently added ‘192.168.35.103‘ (ECDSA) to the list of known hosts.root@192.168.35.103‘s password:?token.csv ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?100% ? 84 ? ?55.0KB/s ? 00:00 ? ?kube-apiserver ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 100% ?934 ? ? 1.0MB/s ? 00:00 ? ?kube-scheduler ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 100% ? 94 ? 122.4KB/s ? 00:00 ? ?kube-controller-manager ? ? ? ? ? ? ? ? ? ? ? ? ? ?100% ?483 ? 393.2KB/s ? 00:00 ? ?kube-apiserver ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 100% ?184MB ?91.9MB/s ? 00:02 ? ?kubectl ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?100% ? 55MB ?72.2MB/s ? 00:00 ? ?kube-controller-manager ? ? ? ? ? ? ? ? ? ? ? ? ? ?100% ?155MB ?77.3MB/s ? 00:02 ? ?kube-scheduler ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 100% ? 55MB ?74.8MB/s ? 00:00 ? ?ca-key.pem ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 100% 1679 ? ? 1.5MB/s ? 00:00 ? ?ca.pem ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 100% 1359 ? 984.7KB/s ? 00:00 ? ?server-key.pem ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 100% 1675 ? ? 1.0MB/s ? 00:00 ? ?server.pem ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 100% 1643 ? 338.6KB/s ? 00:00 ? ?

(2)复制master中的三个组件启动脚本kube-apiserver.service、kube-controller-manager.service、kube-scheduler.service。

[root@localhost k8s]# scp /usr/lib/systemd/system/{kube-apiserver,kube-controller-manager,kube-scheduler}.service root@192.168.35.103:/usr/lib/systemd/system/root@192.168.35.103‘s password:?kube-apiserver.service ? ? ? ? ? ? ? ? ? ? ? ? ? ? 100% ?282 ? 164.1KB/s ? 00:00 ? ?kube-controller-manager.service ? ? ? ? ? ? ? ? ? ?100% ?317 ? 294.5KB/s ? 00:00 ? ?kube-scheduler.service ? ? ? ? ? ? ? ? ? ? ? ? ? ? 100% ?281 ? 352.0KB/s ? 00:00 ? ?

(3)拷贝master1上已有的etcd证书给master2使用

特别注意:master2一定要有etcd证书,否则apiserver服务无法启动

[root@localhost k8s]# scp -r /opt/etcd/ root@192.168.35.103:/opt/root@192.168.35.103‘s password:?etcd ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 100% ?516 ? 196.4KB/s ? 00:00 ? ?etcd ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 100% ? 18MB ?82.4MB/s ? 00:00 ? ?etcdctl ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?100% ? 15MB ?55.2MB/s ? 00:00 ? ?ca-key.pem ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 100% 1679 ? ? 1.0MB/s ? 00:00 ? ?ca.pem ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 100% 1265 ? ? 1.1MB/s ? 00:00 ? ?server-key.pem ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 100% 1679 ? ? 2.0MB/s ? 00:00 ? ?server.pem ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 100% 1338 ? ? 1.6MB/s ? 00:00 ? ?

3、在master2上操作

(1)修改配置文件kube-apiserver中的IP

[root@localhost ~]# vim /opt/kubernetes/cfg/kube-apiserver?KUBE_APISERVER_OPTS="--logtostderr=true --v=4 --etcd-servers=https://192.168.35.100:2379,https://192.168.35.101:2379,https://192.168.35.102:2379 --bind-address=192.168.35.103 --secure-port=6443 --advertise-address=192.168.35.103 --allow-privileged=true --service-cluster-ip-range=10.0.0.0/24 --enable-admission-plugins=NamespaceLifecycle,LimitRanger,ServiceAccount,ResourceQuota,NodeRestriction --authorization-mode=RBAC,Node --kubelet-https=true --enable-bootstrap-token-auth --token-auth-file=/opt/kubernetes/cfg/token.csv --service-node-port-range=30000-50000 --tls-cert-file=/opt/kubernetes/ssl/server.pem ?--tls-private-key-file=/opt/kubernetes/ssl/server-key.pem --client-ca-file=/opt/kubernetes/ssl/ca.pem --service-account-key-file=/opt/kubernetes/ssl/ca-key.pem --etcd-cafile=/opt/etcd/ssl/ca.pem --etcd-certfile=/opt/etcd/ssl/server.pem --etcd-keyfile=/opt/etcd/ssl/server-key.pem"

(2)启动master2中的三个组件服务

[root@localhost ~]# systemctl start kube-apiserver.service?[root@localhost ~]# systemctl enable kube-apiserver.service?Created symlink from /etc/systemd/system/multi-user.target.wants/kube-apiserver.service to /usr/lib/systemd/system/kube-apiserver.service.[root@localhost cfg]# systemctl status kube-apiserver.service● kube-apiserver.service - Kubernetes API Server? ?Loaded: loaded (/usr/lib/systemd/system/kube-apiserver.service; enabled; vendor preset: disabled)? ?Active: active (running) since 六 2020-02-08 14:29:42 CST; 22s ago? ? ?Docs: https://github.com/kubernetes/kubernetes?Main PID: 3287 (kube-apiserver)? ?CGroup: /system.slice/kube-apiserver.service? ? ? ? ? ?└─3287 /opt/kubernetes/bin/kube-apiserver --logtostderr=true --v=4 --et...2月 08 14:29:54 localhost.localdomain kube-apiserver[3287]: I0208 14:29:54.583442...2月 08 14:29:54 localhost.localdomain kube-apiserver[3287]: I0208 14:29:54.585482...2月 08 14:29:54 localhost.localdomain kube-apiserver[3287]: I0208 14:29:54.587185...2月 08 14:29:54 localhost.localdomain kube-apiserver[3287]: I0208 14:29:54.588646...2月 08 14:29:54 localhost.localdomain kube-apiserver[3287]: I0208 14:29:54.590160...2月 08 14:29:54 localhost.localdomain kube-apiserver[3287]: I0208 14:29:54.591712...2月 08 14:29:54 localhost.localdomain kube-apiserver[3287]: I0208 14:29:54.593487...2月 08 14:29:54 localhost.localdomain kube-apiserver[3287]: I0208 14:29:54.598787...2月 08 14:30:03 localhost.localdomain kube-apiserver[3287]: I0208 14:30:03.331185...2月 08 14:30:03 localhost.localdomain kube-apiserver[3287]: I0208 14:30:03.333531...Hint: Some lines were ellipsized, use -l to show in full.[root@localhost ~]# systemctl start kube-controller-manager.service?[root@localhost ~]# systemctl enable kube-controller-manager.service?Created symlink from /etc/systemd/system/multi-user.target.wants/kube-controller-manager.service to /usr/lib/systemd/system/kube-controller-manager.service.[root@localhost ~]# systemctl start kube-scheduler.service?[root@localhost ~]# systemctl enable kube-scheduler.service?Created symlink from /etc/systemd/system/multi-user.target.wants/kube-scheduler.service to /usr/lib/systemd/system/kube-scheduler.service.

(3)增加环境变量(在配置文件末行加入)

[root@localhost ~]# vim /etc/profileexport PATH=$PATH:/opt/kubernetes/bin/? ? ? ? ? ? ? ? ##添加[root@localhost ~]# source /etc/profile? ? ? ? ? ?##重新加载

(4)查看群集中的节点

[root@localhost cfg]# kubectl get nodeNAME ? ? ? ? ? ? STATUS ? ROLES ? ?AGE ? VERSION192.168.35.101 ? Ready ? ?<none> ? 17m ? v1.12.3192.168.35.102 ? Ready ? ?<none> ? 10m ? v1.12.3

相关文章