Kubernetes節點失效刪除Route記錄後恢復

kubernetes集羣在調整網絡後,其中一個 node 節點出現NotReady狀態。能夠ssh登陸到該節點,kubectl get node沒法訪問集羣的master節點,ping一下主服務器的地址也出現異常,以下:node

supermap@podc04:/etc/keepalived$ ping 10.1.1.199
connect: 無效的參數

路由問題

檢查一下路由表,以下:git

supermap@podc04:/etc/keepalived$ route
內核 IP 路由表
目標            網關            子網掩碼        標誌  躍點   引用  使用 接口
default         router.asus.com 0.0.0.0         UG    300    0        0 bond0
10.1.1.0        0.0.0.0         255.255.255.0   U     300    0        0 bond0
10.1.1.199      0.0.0.0         255.255.255.255 UH    300    0        0 bond0
link-local      0.0.0.0         255.255.0.0     U     1000   0        0 bond0
172.17.0.0      0.0.0.0         255.255.0.0     U     0      0        0 docker0

發現一個奇怪的路由記錄,集羣的apiserver地址10.1.1.199路由記錄。其它節點都是沒有的。github

刪除該路由記錄,以下:docker

sudo route del -net 10.1.1.199 netmask 255.255.255.255

再次檢查路由表,以下:api

supermap@podc04:/etc/keepalived$ route
內核 IP 路由表
目標            網關            子網掩碼        標誌  躍點   引用  使用 接口
default         router.asus.com 0.0.0.0         UG    300    0        0 bond0
10.1.1.0        0.0.0.0         255.255.255.0   U     300    0        0 bond0
link-local      0.0.0.0         255.255.0.0     U     1000   0        0 bond0
172.17.0.0      0.0.0.0         255.255.0.0     U     0      0        0 docker0
supermap@podc04:/etc/keepalived$ ping 10.1.1.199
PING 10.1.1.199 (10.1.1.199) 56(84) bytes of data.
64 bytes from 10.1.1.199: icmp_seq=1 ttl=64 time=0.232 ms
64 bytes from 10.1.1.199: icmp_seq=2 ttl=64 time=0.210 ms
64 bytes from 10.1.1.199: icmp_seq=3 ttl=64 time=0.187 ms
^Z

獲取節點信息,通信已經恢復,以下:服務器

supermap@podc04:/etc/keepalived$ kubectl get node
NAME     STATUS   ROLES    AGE    VERSION
podc01   Ready    master   69d    v1.13.3
podc02   Ready    <none>   63d    v1.13.3
podc03   Ready    <none>   69d    v1.13.3
podc04   Ready    <none>   69d    v1.13.3
pods01   Ready    <none>   67d    v1.13.3
pods02   Ready    <none>   64d    v1.13.3
pods03   Ready    <none>   64d    v1.13.3
pods04   Ready    <none>   64d    v1.13.3
pods05   Ready    <none>   7d1h   v1.13.3

再次使用ping 10.1.1.199,徹底正常。網絡

只是不知道這個路由記錄是怎麼被加上的,由於運行正常,暫時不去管了。app

CNI問題

其中一個節點的Nvidia鏡像啓動失敗,提示「CNI故障」,檢查flannel服務失敗。ssh

從新運行flannel安裝程序後,恢復正常運行狀態。以下:spa

kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

Kube-proxy問題

其中一個節點的kube-proxy服務鏡像運行失敗,爲後來新加的節點。

檢查該節點的kube-proxy的images爲1.13.1版本,該機不存在該版本的鏡像。

  • 估計是添加時自動獲取的版本爲1.13.1,但在後來升級爲1.13.4了(已經拉取到該機)。
  • 運行狀態顯示仍然使用的是1.13.1版本。

到Dashboard將kube-system中的服務集kube-proxy的images版本改成 1.13.4,該節點的kube-proxy服務恢復正常。

相關文章
相關標籤/搜索