我们有一个在AWS(EKS)上运行的kubernetes集群(v1.10),并且我们已经在该集群上部署了jupyterhub舵图。
(有关系统架构的更多详细信息,本教程将深入介绍我们的设置:Zero to JupyterHub with Kubernetes on AWS (EKS)
它已经运行了大约3个月,没有问题。
今天早上,工作节点与k8s集群断开连接。
调查时,我的第一个发现是代理公共ELB将工作节点标记为不健康。这使我怀疑网络流量问题...
我查看了与工作节点相关联的安全组,发现该组未接受来自代理公共ELB的流量。 (最初有一条规则允许流量来自与代理公共ELB相关联的安全组。)
目前尚不清楚如何删除规则。但是,我又添加了它。但是,尽管节点正在运行,但ELB仍未将节点标记为正常。
一些我可以通过kubectl获得的诊断信息:
kubectl describe svc proxy-public --namespace jhub
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Warning UnAvailableLoadBalancer 1h service-controller There are no available nodes for LoadBalancer service jhub/proxy-public
和
kubectl get nodes --namespace jhub
No resources found
注意:我有一个完全相同的集群,使用完全相同的配置创建,并且目前运行良好。通过比较两个群集环境,这可能有助于诊断此问题。
不确定下一步的最佳做法是什么。我在考虑应该以某种方式尝试使节点重新加入集群。
理想情况下,我想让群集恢复运行,而不会丢失任何数据。