Назад | Перейти на главную страницу

kubelet не может обновить статус узла

отчеты о состоянии узлов kubernetes, как показано ниже.

root@csp-nso-server78:~# kubectl get nodes 10.213.5.78
NAME          STATUS     AGE
10.213.5.78   NotReady   1h

Журналы kubelet показывают ошибку ниже

E0812 11:00:31.626169   10488 kubelet.go:2745] Error updating node status, will retry: client: response is invalid json. The endpoint is probably not valid etcd cluster endpoint.
E0812 11:00:31.696155   10488 kubelet.go:2745] Error updating node status, will retry: client: response is invalid json. The endpoint is probably not valid etcd cluster endpoint.
E0812 11:00:31.788017   10488 kubelet.go:2745] Error updating node status, will retry: client: response is invalid json. The endpoint is probably not valid etcd cluster endpoint.
E0812 11:00:31.897751   10488 kubelet.go:2745] Error updating node status, will retry: client: response is invalid json. The endpoint is probably not valid etcd cluster endpoint.
E0812 11:00:31.972326   10488 kubelet.go:2745] Error updating node status, will retry: client: response is invalid json. The endpoint is probably not valid etcd cluster endpoint.
E0812 11:00:31.972366   10488 kubelet.go:1183] Unable to update node status: update node status exceeds retry count

Похоже, это что-то связано с etcd. Может кто поможет.

Ошибка, которую я опубликовал, на самом деле происходит от kube-apiserver.

По-видимому, kube-apiserver на моей машине использовал аргумент --etcd-servers =http: //x.x.x.x: 14001'. В моей настройке прокси ha будет слушать 14001, а затем перенаправлять его на 4001, где etcd будет слушать.

Изменение файла инициализации для kube-apiserver на использование порта 4001 напрямую решило проблему в моем случае.

Все еще не уверен, как haproxy мешает общению, но теперь все работает, как ожидалось.