在 Ubuntu 上扩容 Kubernetes 集群的实操指南
一 前置条件与系统初始化
sudo swapoff -a 并注释 /etc/fstab 中的 swap 行。sudo systemctl enable --now kubelet。二 扩容 Worker 节点
kubeadm token create --print-join-commandsudo kubeadm init phase upload-certs --upload-certs,再创建 token 并打印加入命令(含 –control-plane --certificate-key 参数)。kubeadm join ... 命令复制到新节点执行。kubectl get nodes -o wide,确认新节点状态为 Ready。kubectl label nodes <node-name> node-role.kubernetes.io/worker=、kubectl taint nodes <node-name> key=value:NoSchedule。三 扩容 Control Plane 节点(高可用)
kubeadm init phase upload-certs --upload-certs 上传了控制平面证书。sudo kubeadm init phase upload-certs --upload-certskubeadm token create --print-join-command(随后在命令后追加 --control-plane --certificate-key <key>)kubectl get nodes 与 kubeadm token list、kubeadm certs check-expiration 检查状态与证书有效期。四 使用自动化工具 KubeKey 扩容(可选)
./kk add nodes -f <config.yaml> 完成扩容。五 验证与常见问题
kubectl get nodes(应为 Ready)kubectl get pods -n kube-system(如 kube-proxy、coredns 等 Running)kubectl cluster-infokubeadm token create --print-join-command。kubeadm init phase upload-certs --upload-certs 再生成 join 命令。