![Kubernetes权威指南:从Docker到Kubernetes实践全接触(第5版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/305/47379305/b_47379305.jpg)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
2.2.5 将新的Node加入集群
对于新节点的添加,系统准备和安装Master节点的过程是一致的,在待安装的各个Node主机上进行下面的安装过程。
(1)安装kubeadm和kubelet(在Node上无须安装kubectl):
![img](https://epubservercos.yuewen.com/EB1063/26763832509462206/epubprivate/OEBPS/Images/txt002_24.jpg?sign=1739918663-AjujUdWJwK2RmRW08jbqUj0ApLOB7zjn-0-234511941d1e14a666608986a019095e)
运行systemctl start命令启动kubelet服务,并设置为开机自启动:
![img](https://epubservercos.yuewen.com/EB1063/26763832509462206/epubprivate/OEBPS/Images/txt002_25.jpg?sign=1739918663-icfKYcyGb0eVsOiI4XhZfg84uGUljktY-0-ec90d9a9ecfe73effa9b0a96b3cb6678)
(2)使用kubeadm join命令加入集群,可以从安装Master节点的成功提示内容中复制完整的命令,例如:
![img](https://epubservercos.yuewen.com/EB1063/26763832509462206/epubprivate/OEBPS/Images/txt002_26.jpg?sign=1739918663-FDLWtfF8evdGtKbDiL5PsE1OiY5Cry5D-0-f4651d42f024ece6862b37e6f46bcde4)
如果需要调整其他配置,则也可以通过自定义配置文件的方式进行操作,通过kubeadm config print join-defaults命令获取默认配置的内容,再进行修改,例如:
![img](https://epubservercos.yuewen.com/EB1063/26763832509462206/epubprivate/OEBPS/Images/txt002_27.jpg?sign=1739918663-8UU8SyDaa7hRnVTQQyp2munjO4NHtbjc-0-8fc3e28a7e74638156711eb2c49a9790)
修改配置文件join.config.yaml的内容如下:
![img](https://epubservercos.yuewen.com/EB1063/26763832509462206/epubprivate/OEBPS/Images/txt002_28.jpg?sign=1739918663-CL7nSCujFZnXkuwFiy1GSZH7HzRDiW5k-0-8481a02810a22bb80fbdf2ad1276703c)
![img](https://epubservercos.yuewen.com/EB1063/26763832509462206/epubprivate/OEBPS/Images/txt002_29.jpg?sign=1739918663-2KyOXjJDmsyXsgyk4GMRYvHZcV39oE1Q-0-7c8dad8cfc241354e08fea7d4eb9356b)
其中,apiServerEndpoint的值为Master服务的URL地址,token和tlsBootstrapToken的值来自使用kubeadm init安装Master时的最后一行提示信息。
运行kubeadm join命令,将本Node加入集群:
![img](https://epubservercos.yuewen.com/EB1063/26763832509462206/epubprivate/OEBPS/Images/txt002_30.jpg?sign=1739918663-cYSLBwOXx9UxdgTjlufN3Qy9pJOf2n03-0-4abc87261d007814e5b909341d4b6c35)
成功将Node加入集群后,可以通过kubectl get nodes命令确认新的Node已加入:
![img](https://epubservercos.yuewen.com/EB1063/26763832509462206/epubprivate/OEBPS/Images/txt002_31.jpg?sign=1739918663-H6ch32phRVInXU5GFv25qvkAt89dvaFx-0-ebdd808af7de08980a2be8a11ee5744a)
另外,在初始安装的Master节点上也启动了kubelet和kube-proxy,在默认情况下并不参与工作负载的调度。如果希望Master节点也作为Node角色,则可以运行下面的命令(删除Node的Label“node-role.kubernetes.io/master”),让Master节点也成为一个Node:
![img](https://epubservercos.yuewen.com/EB1063/26763832509462206/epubprivate/OEBPS/Images/txt002_32.jpg?sign=1739918663-tY2mYBgmMMHGX1XeHjFIWPVgWa8YBYhx-0-4185df27c28200ca654021ceb1d48cc8)
![img](https://epubservercos.yuewen.com/EB1063/26763832509462206/epubprivate/OEBPS/Images/txt002_33.jpg?sign=1739918663-uZTuFoz8NymuINPEjaS9rFbVa7CIzYZT-0-c3ffbd6aafa0523b586eae856cde9ab9)