当前位置: 首页 > news >正文

k8s-Kubernetes集群升级

文章目录

  • 前言
  • 一、集群升级
    • 1.部署cri-docker (所有集群节点)
    • 2.升级master节点
    • 3.升级worker节点


前言


一、集群升级

https://v1-24.docs.kubernetes.io/zh-cn/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/

1.部署cri-docker (所有集群节点)

k8s从1.24版本开始移除了dockershim,所以需要安装cri-docker插件才能使用docker
软件下载:https://github.com/Mirantis/cri-dockerd

安装
[root@k8s2 ~]# rpm -ivh cri-dockerd-0.3.1-3.el7.x86_64.rpm
配置cri-docker
[root@k8s2 ~]# vim /usr/lib/systemd/system/cri-docker.service
[Service]
Type=notify
ExecStart=/usr/bin/cri-dockerd --container-runtime-endpoint fd:// --network-plugin=cni[root@k8s2 ~]# systemctl daemon-reload
[root@k8s2 ~]# systemctl  enable --now cri-docker[root@k8s2 ~]# ll /var/run/cri-dockerd.sock
srw-rw---- 1 root docker 0 Jan  9 17:51 /var/run/cri-dockerd.sock

2.升级master节点

首先上传镜像到harbor仓库,便于升级
reg.westos.org/k8s/kube-apiserver v1.24.0
reg.westos.org/k8s/kube-proxy v1.24.0
reg.westos.org/k8s/kube-scheduler v1.24.0
reg.westos.org/k8s/kube-controller-manager v1.24.0
reg.westos.org/k8s/etcd 3.5.3-0
reg.westos.org/k8s/pause 3.7
reg.westos.org/k8s/coredns v1.8.6

升级kubeadm
[root@k8s2 ~]# yum install -y kubeadm-1.24.0-0

执行升级
[root@k8s2 ~]# kubeadm upgrade plan

修改节点套接字
[root@k8s2 ~]# kubectl edit nodes k8s2

kubeadm.alpha.kubernetes.io/cri-socket: unix:///var/run/cri-dockerd.sock

[root@k8s2 ~]# kubeadm upgrade apply v1.24.0

腾空节点
[root@k8s2 ~]# kubectl drain k8s2 --ignore-daemonsets

升级kubelet
[root@k8s2 ~]# yum install -y kubelet-1.24.0-0 kubectl-1.24.0-0

配置kubelet使用cri-docker
[root@k8s2 ~]# vim /var/lib/kubelet/kubeadm-flags.env
KUBELET_KUBEADM_ARGS=“–pod-infra-container-image=reg.westos.org/k8s/pause:3.7 --container-runtime-endpoint=unix:///var/run/cri-dockerd.sock”

重启kubelet
[root@k8s2 ~]# systemctl daemon-reload
[root@k8s2 ~]# systemctl restart kubelet

解除节点保护
[root@k8s2 ~]# kubectl uncordon k8s2

3.升级worker节点

升级kubeadm
[root@k8s3 ~]# yum install -y kubeadm-1.24.0-0

执行升级
[root@k8s3 ~]# kubeadm upgrade node

腾空节点
[root@k8s2 ~]# kubectl drain k8s3 --ignore-daemonsets #需要在master节点执行

升级kubelet
[root@k8s3 ~]# yum install -y kubelet-1.24.0-0 kubectl-1.24.0-0

配置kubelet使用cri-docker
[root@k8s3 ~]# vim /var/lib/kubelet/kubeadm-flags.env
KUBELET_KUBEADM_ARGS=“–pod-infra-container-image=reg.westos.org/k8s/pause:3.7 --container-runtime-endpoint=unix:///var/run/cri-dockerd.sock”

修改节点套接字
[root@k8s2 ~]# kubectl edit nodes k8s3 #需要在master节点执行

kubeadm.alpha.kubernetes.io/cri-socket: unix:///var/run/cri-dockerd.sock

重启kubelet
[root@k8s3 ~]# systemctl daemon-reload
[root@k8s3 ~]# systemctl restart kubelet

解除节点保护
[root@k8s2 ~]# kubectl uncordon k8s3 #需要在master节点执行

其它节点依此类推


http://www.lryc.cn/news/32388.html

相关文章:

  • Linux25 -- 监听队列链接上限测试、命令uname、ulimit
  • idea:地址被占用
  • JavaScript常用小技巧(js优化)
  • 【项目实战】MySQL 5.7中的关键字与保留字详解
  • Git图解-常用命令操作
  • LeetCode096不同的二叉搜索树(相关话题:卡特兰数)
  • 软件测试7
  • 12 结构:如何系统设计框架的整体目录?
  • 假如你知道这样的MySQL性能优化
  • 79、ClimateNeRF: Physically-based Neural Rendering for Extreme Climate Synthesis
  • 前端面试题(一)
  • Java基础常见面试题(七)
  • 【springmvc】报文信息转换器
  • 3.5知识点复习
  • 湖南中创教育PMP分享项目经理有哪些优势?
  • LeetCode:27. 移除元素
  • 麻雀算法SSA优化LSTM长短期记忆网络实现分类算法
  • 哈希表题目:数组中的 k-diff 数对
  • SAP ERP系统PP模块计划策略2050详解
  • TIA博途中将硬件目录更改为中文的具体方法演示
  • 【多线程操作】线程池模拟实现
  • HBase---Hbase安装(单机版)
  • 启动项管理工具Autoruns使用实验(20)
  • BFD单臂回声实验详解
  • 详解JAVA类加载器
  • 记录一些常用C标准库函数,以及Linux系统调用函数的作用(不断更新)
  • RK3568平台开发系列讲解(显示篇)DRM的atomic接口
  • 2022年MathorCup数学建模C题自动泊车问题解题全过程文档加程序
  • 【需求响应】基于数据驱动的需求响应优化及预测研究(Matlab代码实现)
  • Bellman-ford和SPFA算法