一、前置準備
sudo swapoff -a;若需永久禁用,編輯/etc/fstab刪除swap行);安裝Docker(Kubernetes默認容器運行時,Ubuntu用sudo apt install docker.io -y,CentOS用sudo yum install docker -y),并啟動服務(sudo systemctl enable --now docker)。二、安裝Kubernetes核心組件
sudo apt update),安裝傳輸工具(sudo apt install -y apt-transport-https curl),添加Kubernetes GPG密鑰(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)。cat <<EOF | sudo tee /etc/yum.repos.d/kubernetes.repo,內容參考官方文檔),禁用SELinux(sudo setenforce 0;編輯/etc/selinux/config設置SELINUX=permissive)。kubelet、kubeadm、kubectl(Ubuntu用sudo apt install -y kubelet kubeadm kubectl,CentOS用sudo yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes);標記組件為hold(防止自動升級,sudo apt-mark hold kubelet kubeadm kubectl)。三、初始化Master節點
sudo kubeadm init --pod-network-cidr=10.244.0.0/16(--pod-network-cidr指定Pod網絡CIDR,需與后續網絡插件匹配)。admin.conf復制到用戶目錄并設置權限):mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
```。
四、加入Worker節點
kubeadm join命令(包含Token和CA證書哈希,如sudo kubeadm join 192.168.1.100:6443 --token abcdef.0123456789abcdef --discovery-token-ca-cert-hash sha256:xxxxxxxx...)。五、安裝網絡插件
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml(等待插件部署完成,可通過kubectl get pods -n kube-system查看Pod狀態)。六、驗證集群狀態
kubectl get nodes,若所有節點狀態顯示為Ready,則說明集群部署成功。kubectl get pods --all-namespaces,確認所有系統Pod(如kube-apiserver、kube-controller-manager)狀態為Running。