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
重复上边的步骤。