![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=1738881233-hOLeKxS1ytOuBdhUPFMPs04vzMJczR3E-0-849bed8ddb2288fb0ac910f11990d06b)
运行systemctl start命令启动kubelet服务,并设置为开机自启动:
![img](https://epubservercos.yuewen.com/EB1063/26763832509462206/epubprivate/OEBPS/Images/txt002_25.jpg?sign=1738881233-1I90G2HyhZ1YMLyI0UCS8IWPml5TWHeE-0-4820eb37d7012bbb7c0d91aeffd6235b)
(2)使用kubeadm join命令加入集群,可以从安装Master节点的成功提示内容中复制完整的命令,例如:
![img](https://epubservercos.yuewen.com/EB1063/26763832509462206/epubprivate/OEBPS/Images/txt002_26.jpg?sign=1738881233-fAcD0JZB97IahU7o0eIqgi7ZNnUiJhxM-0-9ab69ed6b12bd8866d12b21506c06945)
如果需要调整其他配置,则也可以通过自定义配置文件的方式进行操作,通过kubeadm config print join-defaults命令获取默认配置的内容,再进行修改,例如:
![img](https://epubservercos.yuewen.com/EB1063/26763832509462206/epubprivate/OEBPS/Images/txt002_27.jpg?sign=1738881233-jM0if9wTvflLVt8gmUDM5U5EUfTSwtUG-0-51a9dff03d95fe61a8cf982042bad5fe)
修改配置文件join.config.yaml的内容如下:
![img](https://epubservercos.yuewen.com/EB1063/26763832509462206/epubprivate/OEBPS/Images/txt002_28.jpg?sign=1738881233-qOjD4KzJv6nvvoLdaaCKhRwFlIaFOaEC-0-ad990b597b010b3898b8065573b4e2fe)
![img](https://epubservercos.yuewen.com/EB1063/26763832509462206/epubprivate/OEBPS/Images/txt002_29.jpg?sign=1738881233-MzmW3OybldoDP2A2swp6TxIdZ0muWXFf-0-b02763d4b51132730eb00b7be1c44c0a)
其中,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=1738881233-tnECNXinhTkMG6aIFERF3ihXoF8tMyoy-0-32a1c36fe011ec6942c9a6d455d83051)
成功将Node加入集群后,可以通过kubectl get nodes命令确认新的Node已加入:
![img](https://epubservercos.yuewen.com/EB1063/26763832509462206/epubprivate/OEBPS/Images/txt002_31.jpg?sign=1738881233-fTvI2gR8iDSNyJUzzLd7vDCoi2AjLsP4-0-ae8a70066eaa3963a4ce745896b128b8)
另外,在初始安装的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=1738881233-IFGvoQselSMLrkQZdaXGDiOeD45JIPL0-0-da717a1afa68c5071d21e7d839c9730f)
![img](https://epubservercos.yuewen.com/EB1063/26763832509462206/epubprivate/OEBPS/Images/txt002_33.jpg?sign=1738881233-R6zkO0TgaCTcYF3DfpfoAJM74jMSzr3y-0-65331266c766b074401607b3146121a2)