Kubernetes 集群升级docker版本

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 

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

重复上边的步骤。