当我们遇到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负载,即可。

最新文章

  1. 如何使用其他文件中定义的类Python
  2. Bzoj1176 [Balkan2007]Mokia
  3. magento 安装
  4. [转]mysql drop、truncate和delete比较
  5. [20140117]疑似checkpoint堵塞数据库连接
  6. 《ASP.NET1200例》ListView 控件与DataPager控件的结合<一>
  7. 值不能为 null 或为空。参数名: linkText
  8. iOS之设置状态栏颜色
  9. c#中总是提示“在代码运行时或者在禁用“只要一个进程中断,就中断所有进程”选项时,不允许进行更改。
  10. iOS 地图坐标系之间的转换WGS-84世界标准坐标、GCJ-02中国国测局(火星坐标,高德地图)、BD-09百度坐标系转换
  11. Linux命令之ifconfig
  12. 企业架构与建模之使用ArchiMate进行分析
  13. 1209:Catch That Cow(bfs)
  14. grep的用法笔记
  15. nginx参数的详细说明
  16. Html语言,使用<a>标签发送电子邮件
  17. python基础—列表的使用[]
  18. V-REP与C++初步通信测试
  19. Lodop打印语句最基本结构介绍(什么是一个任务)
  20. 安装FP

热门文章

  1. 工作记录:记一次线上ZK掉线问题排查
  2. pscp 从win10远程传输文件到centos7,多个虚拟机之间传文件
  3. Python 中 lru_cache 的使用和实现
  4. 解决MyBatis-Plus 3.3.1中自动生成代码tinyint(1)无法自动转换为Boolean 的办法
  5. Angular入门到精通系列教程(11)- 模块(NgModule),延迟加载模块
  6. TCP服务器程序
  7. Beating JSON performance with Protobuf https://auth0.com/blog/beating-json-performance-with-protobuf/
  8. 浅析 record 使用场景
  9. HTML5 初学者一步一步攀爬 努力加油学习
  10. 设计模式c++(4)——装饰者模式