在所有节点执行以下命令:
# 卸载旧版本Docker
sudo apt-get remove docker docker-engine docker.io containerd runc
# 安装依赖工具
sudo apt-get update
sudo apt-get install -y apt-transport-https ca-certificates curl gnupg lsb-release
# 添加Docker官方GPG密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/docker.gpg
# 添加Docker源
echo "deb [arch=$(dpkg --print-architecture)] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# 安装Docker
sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io
# 启动并设置开机自启
sudo systemctl start docker
sudo systemctl enable docker
# 验证安装
sudo docker run hello-world在所有节点执行:
# 安装kubeadm、kubelet、kubectl
sudo apt-get update && sudo apt-get install -y apt-transport-https curl
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list
sudo apt-get update
sudo apt-get install -y kubelet kubeadm kubectl
sudo apt-mark hold kubelet kubeadm kubectl # 锁定版本
# 初始化Master节点(以master-01为例)
sudo kubeadm init --pod-network-cidr=10.244.0.0/16 --apiserver-advertise-address=<master-ip>
# 配置kubectl(Master节点执行)
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
# 安装网络插件(如Flannel)
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml从Kurator官方仓库拉取代码并部署:
# 克隆Kurator仓库
git clone https://github.com/Kurator-Community/kurator.git
cd kurator
# 部署Kurator(需提前配置K8s集群)
kubectl apply -f deploy/
# 验证Kurator部署
kubectl get pods -n kurator-systemkubeadm init报错“找不到合适的CRI(容器运行时)”
解决:确保Docker已正确安装并运行,执行sudo systemctl status docker确认状态,或在kubeadm init时指定--cri-socket=/var/run/dockershim.sock。
kubectl get pods显示Pending状态
解决:检查网络插件是否正常运行(如Flannel的Pod是否Running),可执行kubectl describe pod <flannel-pod-name> -n kube-system查看日志。

Kurator的集群生命周期治理功能可实现对K8s集群的创建、扩容、缩容、升级、销毁等全生命周期管理。以下以集群扩容为例,展示代码与流程。
假设需要将K8s集群的Worker节点从3个扩容到5个,步骤如下:
在新节点上重复“环境准备”和“安装Docker、Kubernetes”的步骤,确保新节点能加入集群。
kubeadm token create --print-join-command
# 输出示例:kubeadm join 192.168.1.100:6443 --token abcdef.1234567890abcdef --discovery-token-ca-cert-hash sha256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxkubeadm join 192.168.1.100:6443 --token abcdef.1234567890abcdef --discovery-token-ca-cert-hash sha256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxkubectl get nodes
# 应看到新节点状态为“Ready”


通过本次实战,我们深入体验了Kurator在分布式云原生环境搭建、功能使用和企业落地中的价值。从环境搭建的代码实践,到生命周期治理的功能分析,再到企业案例的全流程落地,Kurator为云原生运维提供了高效、稳定的解决方案。未来,随着云原生技术的普及,Kurator有望在更多场景中发挥重要作用。