【发布时间】:2019-07-01 17:08:16
【问题描述】:
我们已将 Azure 上的 Kubernetes 服务集群升级到最新版本 1.12.4。之后我们突然意识到 pod 和节点之间不能再通过私有 ip 进行通信了:
kubectl get pods -o wide -n kube-system -l component=kube-proxy
NAME READY STATUS RESTARTS AGE IP NODE
kube-proxy-bfhbw 1/1 Running 2 16h 10.0.4.4 aks-agentpool-16086733-1
kube-proxy-d7fj9 1/1 Running 2 16h 10.0.4.35 aks-agentpool-16086733-0
kube-proxy-j24th 1/1 Running 2 16h 10.0.4.97 aks-agentpool-16086733-3
kube-proxy-x7ffx 1/1 Running 2 16h 10.0.4.128 aks-agentpool-16086733-4
如您所见,节点 aks-agentpool-16086733-0 具有私有 IP 10.0.4.35 。当我们尝试检查此节点上的 pod 上的日志时,我们收到了这样的错误:
获取 https://aks-agentpool-16086733-0:10250/containerLogs/emw-sit/nginx-sit-deploy-864b7d7588-bw966/nginx-sit?tailLines=5000×tamps=true: 拨号 tcp 10.0.4.35:10250: i/o 超时
我们在这个节点上也有 Tiller ( Helm),如果尝试连接到 Tiller,我们会从客户端 PC 收到这样的错误:
shmits-imac:~ andris.shmits01$ helm version 客户端: &version.Version{SemVer:"v2.12.3", GitCommit:"eecf22f77df5f65c823aacd2dbd30ae6c65f186e", GitTreeState:"clean"} 错误:转发端口:升级错误 连接:错误拨号后端:拨打 tcp 10.0.4.35:10250: i/o 超时
有人知道为什么 pod 和节点会因私有 IP 而失去连接吗?
【问题讨论】:
-
很确定您需要一张支持票。您是否尝试重新启动节点?你可以检查 kube-proxy 日志吗?据人们说,它的 docker 守护进程通常在节点上被破坏
-
是的,重启了,检查日志,什么都没有
-
节点可以互相通信吗? node 可以和上面的 pod 对话吗?
-
我无法登录 pod,因为出现了同样的错误 dial tcp 10.0.4.35:10250: i/o
-
只登录节点,而不是pod...
标签: azure kubernetes