解决Kubernetes在Ubuntu上的兼容性问题,可按以下步骤操作:
sudo apt update && sudo apt upgrade -y
。curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
,然后echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
,最后sudo apt update && sudo apt install docker-ce docker-ce-cli containerd.io -y
。/etc/docker/daemon.json
,添加{"exec-opts": ["native.cgroupdriver=systemd"]}
,重启Docker。sudo swapoff -a
(临时)或修改/etc/fstab
永久禁用。curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
,然后cat <<EOF | sudo tee /etc/apt/sources.list.d/kubernetes.list
,输入deb https://apt.kubernetes.io/ kubernetes-xenial main
,最后sudo apt update
。sudo apt install -y kubelet kubeadm kubectl
,并使用sudo apt-mark hold
防止自动升级。sudo kubeadm init --pod-network-cidr=10.244.0.0/16
(可根据需求调整CIDR)。mkdir -p $HOME/.kube
,sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
,sudo chown $(id -u):$(id -g) $HOME/.kube/config
。kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
。kubectl get nodes
,确保节点状态为Ready
。kubectl get pods --all-namespaces
。journalctl -u kubelet -f
查看kubelet日志,或使用kubectl describe pod <pod-name>
排查具体错误。参考资料: