-
Notifications
You must be signed in to change notification settings - Fork 3.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
高可用apiserver中,Node短暂出现Not Ready #257
Comments
我在使用两个节点的keepalived和haproxy做高可用时,运行正常; |
如果有遇到相同问题的,一起交流下。 |
keepalived切换按理说很快的,秒级切换的;Node出现NotReady状态,应该第一时间查看故障node的kubelet日志; |
我说下我的环境,我使用了两台节点做了master 如果我把kubelet注册apiserver使用http的方式一切就正常,不会出现Not Ready的情况。 kubelet日志我待会贴上来。 |
补充下日志: E0710 20:19:31.039064 2739179 kubelet_node_status.go:390] Error updating node status, will retry: error getting node "5.0.0.191": Get https://5.0.0.200:8443/api/v1/nodes/5. |
另外我看到keepalived备节点中没有对haproxy做检测,如果主节点的keepalived挂掉了,应该不能再去检测haproxy的检测状态了吧。 |
在异常或则切换的时候,你直接到NOT_READY机器上去curl 或则telnet 能通吗? |
@kobehaha 是可以通的。 而且kubelet重启下也是可以马上变成Ready状态的。 |
[root@hz-test1 ansible]# kubectl get node [root@hz-test1 ansible]# curl -k https://5.0.0.200:8443 }, E0711 10:58:06.463689 2833600 kubelet_node_status.go:383] Error updating node status, will retry: error getting node "5.0.0.191": Get https://5.0.0.200:8443/api/v1/nodes/5. |
"如果我把kubelet注册apiserver使用http的方式一切就正常,不会出现Not Ready的情况。" |
@gjmzj 试过http的方式,我在1.8.6上的kubelet.kubeconfig把apiserver改成http://5.0.0.200:8080,发现是不会变成Not Ready的。 [root@hz-test1 ansible]# kubectl get node |
我这边已经测试v1.10.2也会出现同样问题,而v1.11.0版本没有问题; |
那看来是k8s自身的问题,我去找找它的更新日志。 |
No description provided.
The text was updated successfully, but these errors were encountered: