从本周一开始,在从Rancher内部升级到1.17.2之后,每个新节点(DigitalOcean Drops,全部使用Ubuntu 18.04.3)都将其InternalIP错误地等同于ExternalIP,即PublicIP!反过来,这也是我自星期一以来一直缺乏群集内DNS解析的主要嫌疑人,因为我刚刚发现响应不灵的服务位于使用InternalIP = ExternalIP的新节点上。
kubectl describe node exacto-devel-mail-01
...
Addresses:
InternalIP: 37.139.20.177
Hostname: exacto-devel-mail-01
一个“旧”节点(1.17.2之前的升级,所以大概我们在1.16.6上运行):
kubectl describe node exacto-devel-06
...
Addresses:
InternalIP: 10.129.254.119
Hostname: exacto-devel-06
我尝试编辑节点,分配了正确的InternalIP值,但是什么也没发生!它只是继续显示错误的地址!
此问题未能解决在那些损坏的InternalIP上在那些“坏”节点上运行的容器的群集DNS名称,将其升级到v1.16.6后出现在另一个群集上。所以我可以说这个问题至少在Rancher管理的k8s集群中会影响Kubernetes 1.16.6和1.17.2。
请告知下一步的建议!谢谢
--node-ip
(节点的IP地址。如果设置,kubelet将使用该IP地址作为节点)标志来设置正确的IP,然后重新启动kubelet。 systemctl daemon-reload
systemctl restart kubelet