k8s node 宕機


1.查看當前的項目運行

image.pngimage.png

image.png

 

無論是web訪問還是看log日志 都能請求到我的這個項目 接下來演示下宿主機掛掉的流程

2.前提准備

首先設置副本至少2個

image.png

image.png

image.png

image.png

[root@hdss7-21 ~]# kubectl delete node  hdss7-22.host.com 

這里要刪除掛掉的node 如果不刪除k8s會認為短暫的不可達 但用戶訪問可能會出現網絡不可達。這塊的話可以寫腳本進行監控宿主機。

刪除之后k8s 自己會觸發自愈機制,然后dashboard 會從21上啟動,會將pod 調度到node21上

image.png

然后將前端nignx負載注釋掉

[root@hdss7-11 ~]# vim /etc/nginx/nginx.conf

stream {

    upstream kube-apiserver {

        server 192.168.40.21:6443     max_fails=3 fail_timeout=30s;

#        server 192.168.40.22:6443     max_fails=3 fail_timeout=30s;

    }

    server {

        listen 7443;

        proxy_connect_timeout 2s;

        proxy_timeout 900s;

        proxy_pass kube-apiserver;

        include proxy_params;

    }

}

 

[root@hdss7-11 ~]# cat /etc/nginx/conf.d/od.com.conf

upstream default_backend_traefik {

    server 192.168.40.21:81    max_fails=3 fail_timeout=10s;

    #server 192.168.40.22:81    max_fails=3 fail_timeout=10s;

}

server {

    server_name *.od.com;

  

    location / {

        proxy_pass http://default_backend_traefik;

        proxy_set_header Host       $http_host;

        proxy_set_header x-forwarded-for $proxy_add_x_forwarded_for;

    }

}

[root@hdss7-11 ~]# nginx -t

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok

nginx: configuration file /etc/nginx/nginx.conf test is successful

[root@hdss7-11 ~]# nginx -s reload

再次訪問dubbo項目已經正常了

image.png

3.節點恢復

22節點恢復 他會自動啟動自身的服務加入到集群內部

[root@hdss7-22 ~]# supervisorctl status

etcd-server-7-22                 STARTING  

flanneld-7-22                    STARTING  

kube-apiserver-7-22              STARTING  

kube-controller-manager-7-22     STARTING  

kube-kubelet-7-22                STARTING  

kube-proxy-7-22                  STARTING  

kube-scheduler-7-22              STARTING  

 

[root@hdss7-22 ~]# kubectl label node hdss7-22.host.com node-role.kubernetes.io/master=

[root@hdss7-22 ~]# kubectl label node hdss7-22.host.com node-role.kubernetes.io/node=

image.png

image.png

去掉前端nginx注釋即可


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM