要将新节点加入 Kubernetes 集群,需要使用 kubeadm 工具,并按照以下步骤操作:
- 在新节点上安装 Docker 和 kubeadm
- 获取集群的 join token(可以在 master 节点上运行
kubeadm token create
命令生成) - 在新节点上运行以下命令:
sudo kubeadm join <master-node-ip>:<master-node-port> --token <token> --discovery-token-ca-cert-hash <hash>
其中 <master-node-ip>
和 <master-node-port>
是主节点的 IP 地址和端口号,<token>
是通过 kubeadm token create
获取的 join token,<hash>
是通过 kubeadm token create
并在主节点运行 kubeadm token list
获取的 CA 证书哈希值。
- 如果一切顺利,您应该会看到类似以下输出:
[preflight] Running pre-flight checks
[preflight] Reading configuration from the cluster...
[preflight] FYI: You can look at this config file with 'kubectl -n kube-system get cm kubeadm-config -oyaml'
[kubelet-start] Downloading configuration for the kubelet from the "kubelet-config-1.15" ConfigMap in the kube-system namespace
[kubelet-start] Writing kubelet configuration to file "/var/lib/kubelet/config.yaml"
[kubelet-start] Writing kubelet environment file with flags to file "/var/lib/kubelet/kubeadm-flags.env"
[kubelet-start] Starting the kubelet
[...]
[kubelet] Configured RBAC rules to allow Node Client /discovery API Group
[kubelet] Starting client certificate rotation controller
[kubelet] Started Kubernetes client certificate rotation.
[kubelet] Node joined Kubernetes cluster
- 在主节点上运行
kubectl get nodes
,你应该可以看到新加入的节点已经显示在列表中了。