温馨提示×

centos k8s更新升级流程

小樊
100
2025-03-27 23:41:58
栏目: 智能运维

在CentOS上更新和升级Kubernetes(k8s)集群的流程通常涉及以下步骤。以下是一个基本的指南,基于从旧版本升级到较新版本的一般过程:

准备工作

  1. 备份数据:在进行任何升级之前,确保所有重要数据和配置都已备份。
  2. 检查兼容性:查看Kubernetes官方文档,了解新版本与当前集群版本的兼容性。
  3. 更新仓库:确保所有节点的kubernetes仓库已更新到最新版本。

升级流程

1. 升级Master节点

  • 更改repo仓库
    cat <<EOF | sudo tee /etc/yum.repos.d/kubernetes.repo
    [kubernetes]
    name=Kubernetes
    baseurl=https://mirrors.aliyun.com/kubernetes-new/core/stable/v1.28/rpm/
    enabled=1
    gpgcheck=1
    gpgkey=https://mirrors.aliyun.com/kubernetes-new/core/stable/v1.28/rpm/repodata/repomd.xml.key
    EOF
    
  • 确定要升级的版本
    kubectl get nodes
    
  • 验证升级计划
    kubeadm upgrade plan
    
  • 升级Master节点
    kubeadm upgrade apply v1.28.2
    
  • 手动升级CNI驱动插件
    yum install -y kubeadm-1.28.2 kubelet-1.28.2-0
    systemctl daemon-reload
    systemctl restart kubelet
    

2. 升级Worker节点

  • 标记节点为不可调度并驱逐所有负载
    kubectl cordon k8s-node01
    kubectl drain k8s-node01 --ignore-daemonsets --force
    
  • 升级Worker节点
    kubeadm upgrade node v1.28.2
    yum install -y kubeadm-1.28.2 kubelet-1.28.2-0
    systemctl daemon-reload
    systemctl restart kubelet
    
  • 将节点标记为可调度
    kubectl uncordon k8s-node01
    

3. 验证升级

  • 检查集群状态
    kubectl get nodes
    kubectl get pods --all-namespaces
    

注意事项

  • 版本兼容性:升级时不能跳过次版本,例如从1.y升级到1.y+1,而不能从1.y直接升级到1.y+2。
  • 自定义资源(CRD):新版本中可能需要对自定义资源进行格式调整。
  • 运行时兼容性:注意运行时的兼容性调整。

参考文档

在进行升级之前,请仔细阅读相关文档,并根据自己的实际情况调整命令和步骤。如果在升级过程中遇到问题,可以参考官方文档或在社区寻求帮助。

0