k8s CKA upgrade - Kubeadm 版本升级实测

升级版本最好是逐步去升级,不要跨越多个大版本,可能会出错

大体流程:

1.先确定升级版本

2.升级kubeadm

3.驱逐节点

4.升级kubelet和kubectl

5.重启kubelet服务

6.恢复节点,使其上线

1.查看现版本:升级版本

bash 复制代码
kubectl get nodes

当前版本1.16.2

2.执行如下命令确定升级版本

bash 复制代码
yum list --showduplicates kubeadm --disableexcludes=kubernetes

3.升级kubeadm

这里选择升级到1.17版本,升级一个版本

bash 复制代码
yum install -y kubeadm-1.17.2-0 --disableexcludes=kubernetes

4.查看kubeadm版本升级过了

bash 复制代码
kubeadm version

5.验证升级计划

检查当前集群是否可被升级,可升级到1.17.17

bash 复制代码
kubeadm upgrade plan

6.将目标升级到该版本

不升级etcd

bash 复制代码
kubeadm upgrade apply v1.17.2 --etcd-upgrade=false

7.当前节点标记为不可调度,并驱逐节点上的Pod

bash 复制代码
kubectl drain master --ignore-daemonsets

8.升级kubelet和kubectl组件

bash 复制代码
yum -y install kubelet-1.17.2-0 kubectl-1.17.2-0 --disableexcludes=kubernetes

9.重启kubelet

bash 复制代码
systemctl daemon-reload

systemctl restart kubelet

10.恢复当前节点上的Pod调度,使其上线

bash 复制代码
kubectl uncordon master

11.验证master版本已确认升级

相关推荐
浪兎兎1 小时前
Docker 容器技术笔记
笔记·docker·容器
Linux-lucky1 小时前
28-Linux学习之旅之Maven与Nexus制品库
linux·运维·学习·nginx·tomcat·maven
Zhu7582 小时前
在Docker环境离线部署最新版Harbor
运维·docker·容器
众人皆醒我独醉2 小时前
流量路由:Istio 与 Knative 的集成
面试·kubernetes·llm
众人皆醒我独醉3 小时前
模型加载:storage-initializer 与节点级缓存
面试·kubernetes·gpu
敲代码还房贷3 小时前
VMware17 + Ubuntu22.04 共享 完整步骤
linux·python·ubuntu
SakitamaX4 小时前
pod管理及其相关实验
运维·kubernetes
King of fraud4 小时前
Linux 下 MySQL 基础操作:创建用户、数据库与权限管理实战
linux·数据库·mysql
天蓝不会忘记024 小时前
pod的控制器
容器·kubernetes
DevOps老兵4 小时前
Kubernetes生产运维02:只会get pods还不够,kubectl排障工具箱怎么组合使用
运维·容器·kubernetes·kubectl·devops·故障排查·sre