![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=1739233323-o0qgdSgjRtSShvMffKaX89GrU3IH4wo3-0-84d51d3cd4a460ab3422ed946a26a5a6)
运行systemctl start命令启动kubelet服务,并设置为开机自启动:
![img](https://epubservercos.yuewen.com/EB1063/26763832509462206/epubprivate/OEBPS/Images/txt002_25.jpg?sign=1739233323-pzAGv4YZGY4ZgFt7grW4SPPlUH3Ih56O-0-874bc0808a2d2371a9e8770e254ed7e5)
(2)使用kubeadm join命令加入集群,可以从安装Master节点的成功提示内容中复制完整的命令,例如:
![img](https://epubservercos.yuewen.com/EB1063/26763832509462206/epubprivate/OEBPS/Images/txt002_26.jpg?sign=1739233323-0WQOqZ5iRcPXUL62LNwMQtLknf7rjQKW-0-6f234af47761b778e787b655226cd332)
如果需要调整其他配置,则也可以通过自定义配置文件的方式进行操作,通过kubeadm config print join-defaults命令获取默认配置的内容,再进行修改,例如:
![img](https://epubservercos.yuewen.com/EB1063/26763832509462206/epubprivate/OEBPS/Images/txt002_27.jpg?sign=1739233323-LRVblIO81YisVYsEH80st2JwgqWjqL0F-0-36cf6b7a06baa976776c6b27ae032a17)
修改配置文件join.config.yaml的内容如下:
![img](https://epubservercos.yuewen.com/EB1063/26763832509462206/epubprivate/OEBPS/Images/txt002_28.jpg?sign=1739233323-7kIJyJ6sGsQAeNyd4hi29xfJb6oryoh1-0-ab81325ef6fc7ecbcab57581ee858a4a)
![img](https://epubservercos.yuewen.com/EB1063/26763832509462206/epubprivate/OEBPS/Images/txt002_29.jpg?sign=1739233323-PbsupbivvJK5uIyRdsTN4E5wCT0v61vA-0-3a70edb57d94f97f0001dd4cdcfb2c7c)
其中,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=1739233323-vAGKxlwO5ifq6OzQK7IfiAqnc97Fjoc9-0-960a8506b255a49adb9966de53a82753)
成功将Node加入集群后,可以通过kubectl get nodes命令确认新的Node已加入:
![img](https://epubservercos.yuewen.com/EB1063/26763832509462206/epubprivate/OEBPS/Images/txt002_31.jpg?sign=1739233323-ImiFMChdG0bs3HQEpsQPsDt05QgalyjZ-0-c0a034a8d94ceb55381839a1aa48450f)
另外,在初始安装的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=1739233323-E1jHblAC6FWPVUCGYO0ScmNZ4nECI6HX-0-d38c92052511109b9e7a87e404c4c98d)
![img](https://epubservercos.yuewen.com/EB1063/26763832509462206/epubprivate/OEBPS/Images/txt002_33.jpg?sign=1739233323-Q2QP1pLFVRAWXmDrJiBStubVIfRBthPy-0-ab17d552ff75542290545ab87abaa3bb)