• kubernetes进阶(六)k8s平滑升级


    当我们遇到K8S有漏洞的时候,或者为了满足需求,有时候可能会需要升级或者降级版本,

    为了减少对业务的影响,尽量选择在业务低谷的时候来升级:

    首先准备好文件:我这里选择的是内网文件服务器上下载的,请自行下载所需的k8s源文件:3

    这里演示更换一个节点:7-21

    查看版本:将7-21更换成1.15.2

    # cd /opt/src
    # wget http://192.168.1.60:8080/day1/kubernetes-server-linux-amd64-v1.15.2.tar.gz
    # tar -zxf kubernetes-server-linux-amd64-v1.15.2.tar.gz
    # cd ..
    # cp -r kubernetes /opt/kubernetes-v1.15.2
    # cd kubernetes-v1.15.2/
    # rm -rf kubernetes-src.tar.gz
    # cd server/bin/
    # rm -rf *.tar
    # rm -rf *tag
    # mkdir cert conf
    # cp /opt/kubernetes-v1.15.4/server/bin/cert/* ./cert/
    # cp /opt/kubernetes-v1.15.4/server/bin/conf/* ./conf/
    # cp /opt/kubernetes-v1.15.4/server/bin/*.sh /opt/kubernetes-v1.15.2/server/bin/

    然后在nginx上摘除api-server的四层负载:7-11,7-12

    # vi /etc/nginx/nginx.conf

    把我们要升级的apiserver节点注释掉:

    # nginx -t
    # nginx -s reload

    准备好后,摘除node,先看下哪个node上跑的pod少:我们这里一样多,那我们就搞7-21,

    # kubectl delete node hdss7-21.host.com

    我们的coredns已经从node7-21迁移到了7-22上,接下来我们更换软连接:

    # rm -rf kubernetes
    # ln -s /opt/kubernetes-v1.15.2 /opt/kubernetes

    然后重启使用supervisor重启服务:生产上记得一个一个重启,我们这里为了方便,直接重启所有:

    # supervisorctl restart all

     启动成功后,查看版本:

     可以看到node版本已经从1.15.4变更为了1.15.2,并且kubelet已经自动帮我们把节点加入到了集群,然后打开nginx负载,即可。

  • 相关阅读:
    html5 input type=search
    深入理解html5系列-文本标签
    HTML5里autofocus属性
    sessionStorage和localStorage中 存储
    knockoutjs foreach array绑定 表格 下拉框绑定
    redis’五种格式的存储与展示
    redis与memcache的区别2
    mysql分区及实例演示
    windows下安装redis以及测试
    mysql导入导出sql文件
  • 原文地址:https://www.cnblogs.com/slim-liu/p/11952863.html
Copyright © 2020-2023  润新知