使用 Kubeadm 部署 K8S安装( 二 )

5. 加入 K8S Node向集群添加新节点,执行在kubeadm init输出的kubeadm join命令:
[root@k8snode2 ~]# kubeadm join 172.16.3.181:6443 --token jvv3up.7oy3647hgiozpoh7 \--discovery-token-ca-cert-hash sha256:962693618045022ac50317a00397e917dc5881ccb1152d53b586907ccc179724默认token有效期为24小时,当过期之后,该token就不可用了 。这时就需要重新创建token,操作如下:
[root@k8snode2 ~]# kubeadm token create --print-join-command

使用 Kubeadm 部署 K8S安装

文章插图
再回到 Mater 上执行,会发现 node 已经加进来了
使用 Kubeadm 部署 K8S安装

文章插图
状态为 NotReady 需要安装 CNI 插件
6. 部署CNI网络插件[root@k8smaster ~]# kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml#查看 pods 情况[root@k8smaster ~]# kubectl get pods -n kube-system#查看 nodes 情况[root@k8smaster ~]# kubectl get nodes如果 kubectl apply -f 后面的地址下不下来 。可以单独下载下来 。然后 apply 上去
使用 Kubeadm 部署 K8S安装

文章插图
7. 测试kubernetes集群在Kubernetes集群中创建一个pod,验证是否正常运行:
# 拉一个 Nginx 下来,便于测试用[root@k8smaster ~]# kubectl create deployment nginx --image=nginx# 查看状态[root@k8smaster ~]# kubectl get pod# 对外暴露 80 端口[root@k8smaster ~]# kubectl expose deployment nginx --port=80 --type=NodePort#$ kubectl get pod,svc访问地址:http://NodeIP:Port
使用 Kubeadm 部署 K8S安装

文章插图

经验总结扩展阅读