前言
注意:根据不同的业务选择流量低谷的时候操作,比如游戏公司,肯定不能晚上12点停服升级,可以选择凌晨四五点。像银行,就可以选择晚上升级。
1、查看节点状态
2、查看pod状态
kubectl get pod -n kube-system -o wide
3、删除节点(首先删除节点上服务最少的那个)
执行:kubectl delete node hdss7-22.host.com
kubectl get node
再次查看pod状态
kubectl get pod -n kube-system -o wide
可以看到,之前在7-22节点上的pod,已经自动迁移到7-21节点上。
查看服务是否受影响。
[root@hdss7-21 ~]# dig -t A kubernetes.default.svc.cluster.local @192.168.0.2 +short
192.168.0.1
4、注释nginx和conf文件对应内容并重启相应的服务
[root@hdss7-11 conf.d]# vim /etc/nginx/nginx.conf
# server 10.4.7.22:6443 max_fails=3 fail_timeout=30s;
[root@hdss7-11 conf.d]# vim /etc/nginx/cond.f/jack.com.conf
# server 10.4.7.22:81 max_fails=3 fail_timeout=10s;
[root@hdss7-11 conf.d]# nginx -t
[root@hdss7-11 conf.d]# nginx -s reload
5、下载配置新的kubernetes
[root@hdss7-21 /]# cd opt
[root@hdss7-21 opt]# mkdir kubernetes-v1.18.0
cd /opt/src
下载:wget https://dl.k8s.io/v1.18.0/kubernetes-server-linux-amd64.tar.gz
解压:tar xf kubernetes-server-linux-amd64.tar.gz -C /opt/kubernetes-v1.18.0
删除之前kubernetes软连接:rm -fr kubernetes
新的软链接:ln -s /opt/kubernetes-v1.18.0/ /opt/kubernetes
cd kubernetes
删除kubernetes下的源码:
[root@hdss7-21 kubernetes]# rm -fr kubernetes-src.tar.gz
进入kubernetes的server目录下的bin文件夹:
删除所有压缩包: rm -f .tar
删除所有tag:rm -f _tag
mkdir cert
mkdir conf
cd cert
cp /opt/kubernetes-v1.15.4/server/bin/cert/* .
cd ..
cd conf
cp /opt/kubernetes-v1.15.4/server/bin/conf/* .
cd .. 进入bin目录
cp /opt/kubernetes-v1.15.4/server/bin/*.sh .
supervisorctl restart all
查看有没有开启新的node
kubectl get nodes
查看服务状态:superstorctl status
ps aux | grep kubectl
kill -9 进程id
如果有失败服务:superstorctl start 服务名
