栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

kubeadm升级版本(生产实战)

kubeadm升级版本(生产实战)

背景:外部部署的三节点etcd, kubeadm部署双master,多node的k8s环境。由于版本迭代原因需要升级k8s

思路:
1、etcd数据备份(防止升级失败导致数据丢失)
2、升级master节点
3、升级node节点
4、验证集群状态

1、数据备份
etcdctl --cacert=/opt/kubernetes/ssl/ca.pem --cert=/opt/kubernetes/ssl/server.pem --key=/opt/kubernetes/ssl/server-key.pem --endpoints=https://192.168.1.36:2379 snapshot save /data/etcd_backup_dir/etcd-snapshot-`date +%Y%m%d`.db
2、升级master节点
1、查看kubeadm版本,并更新
yum list --showduplicates kubeadm 
yum install -y kubeadm-1.23.x-0

2、验证升级计划
kubeadm upgrade plan

3、选择要升级到的目标版本(apiserver、controller-manager、scheduler、kube-proxy)
kubeadm upgrade apply v1.23.x

4、node标记为不可调度,腾空节点
kubectl drain  --ignore-daemonsets

5、升级kubelet 和 kubectl
yum install -y kubelet-1.23.x-0 kubectl-1.23.x-0

6、重启
sudo systemctl daemon-reload
sudo systemctl restart kubelet

7、将节点标记为可调度,让其重新上线
kubectl uncordon 

升级其他控制节点与第一个控制面节点相同,但是使用
kubeadm upgrade node

3、升级node节点

1、更新kubeadm
yum install -y kubeadm-1.23.x-0
2、对于工作节点,下面的命令会升级本地的 kubelet 配置
kubeadm upgrade node
3、腾空节点
kubectl drain  --ignore-daemonsets
4、升级 kubelet 和 kubectl
yum install -y kubelet-1.23.x-0 kubectl-1.23.x-0
5、重启 kubelet
sudo systemctl daemon-reload
sudo systemctl restart kubelet
6、取消对节点的保护
kubectl uncordon 
4、验证集群的状态

kubectl get nodes

kubeadm upgrade 原理(来自k8s官网):

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/746042.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号