zoukankan      html  css  js  c++  java
  • 使用kubeadm平滑地升级kubenetes集群(v1.10.2到v1.10.3)

    写在前面

    kubernetes是目前最炙手火热的容器管理、调度、编排平台,不仅拥有全面的生态系统,而且还开源、开放自治,谁贡献的多,谁的话语权就大,云提供商都有专门的工程师来从事kubernetes开源项目,其软件的升级迭代非常快,今天我们就来谈谈如何使用kubeadm平滑地升级kubenetes集群到v1.10.3。

    备注:kubeadm是一个快速构建kubernetes集群的工具。

    查看目前集群版本


    从上面可以看到,master节点kubelete版本低于woker节点,kubernetes的版本倾斜并不支持此情况,详细原因如下:

    基于这两个原因,为了避免出现一些不必要的问题,所以决定立即升级集群。

    检视集群

    检查哪些版本可用于升级并验证当前群集是否可升级。

    kubeadm upgrade plan [flags]
    


    上图已经说得很清楚了,我们需要先升级kubeadm,然后才能升级control pannel,而kubeadm并不会自动安装和管理kubelet、kubectl,所以我们需要手工完成这三个组件的升级。

    升级kubeadm kubelet kubectl

    yum install -y kubelet kubeadm kubectl
    

    升级集群组件

    kubeadm upgrade apply v1.10.3
    

    升级网络插件

    kubernetes支持符合CNI规范的所有网络插件,生产环境一般建议使用calico,其他网络插件的升级大家可以自行去官网查看。

    kubectl apply -f https://docs.projectcalico.org/v3.1/getting-started/kubernetes/installation/hosted/rbac-kdd.yaml
    kubectl apply -f https://docs.projectcalico.org/v3.1/getting-started/kubernetes/installation/hosted/kubernetes-datastore/calico-networking/1.7/calico.yaml
    

    再次检视集群



    从上面可以看到,各个control pannel和组件都成功升级完成!!!

    备注:命令执行后,可能一段时间kubectl get nodes看到的版本还是没有改变,dashboard也处于僵死状态,不要着急,等待大概20分钟左右就好了,不过服务会很快恢复,基本用户是无感知的。

    延伸阅读

    https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-upgrade
    https://kubernetes.io/docs/tasks/tools/install-kubeadm
    https://kubernetes.io/docs/setup/independent/create-cluster-kubeadm

  • 相关阅读:
    Cmder配置
    uboot移植
    嵌入式产品开发技术问题
    flexbox布局
    使用PS过程
    STM32 使用 FreeRTOS过程记录
    TTL、RS232、RS485、串口
    用纯css改变下拉列表select框的默认样式
    task9暂存
    Hello World
  • 原文地址:https://www.cnblogs.com/justmine/p/9139496.html
Copyright © 2011-2022 走看看