Kubernetes 集群升級docker版本
原則:升級完一台正常后再接着升下一台。
Work Node
一、遷移上的pod(保證業務,但期間會出現抖動)
kubectl drain $NODE --ignore-daemonsets --delete-local-data --force
遷移的過程中如果提示pod無法刪除,則需要手動delete。
二、升級docker版本至18.09.9
1.停掉kubelet及docker服務
systemctl stop kubelet systemctl stop docker
2.卸載舊版本
sudo yum remove docker docker-common docker-selinux docker-engine
只會刪除相關軟件及依賴,數據目錄/var/lib/docker會保留
3.安裝依賴
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
添加yum倉庫
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
4.安裝新版本
sudo yum install -y docker-ce-18.09.9-3.el7 docker-ce-cli-18.09.9-3.el7 containerd.io
5.啟動docker服務
systemctl start docker
6.檢查版本
docker version
7.啟動kubelet
systemctl start kubelet
8.去掉禁止調度
kubelet uncordon $NODE
K8s Master
work node都升級完加入集群正常后,建議現將master服務器做快照,以防萬一升級出現問題。
一、
master 上跑的基本上是靜態pod,mater相關組件,不需要遷移也遷移不了。
二、升級docker版本至18.09.9
重復上邊的步驟。
