首页 > 解决方案 > K8s azure VM 节点 - 可以从主节点 ping 工作节点,但无法 ping 工作节点上的 pod

问题描述

我在我的工作节点上启动并运行了一个简单的 pod,我试图从我的主节点 ping。我得到 100% 的数据包丢失。

什么在起作用?

什么不工作?

我的看法

我认为主节点上发生了印花布错误配置,因为主节点不太了解 Pod 的 IP。

到 pod IP 的 tracepath 的结果

masternode@Master:~$ tracepath 192.168.171.67
 1?: [LOCALHOST]                      pmtu 1440
 1:  no reply
 2:  no reply
 3:  no reply

请帮忙。

标签: azurekubernetesproject-calico

解决方案


无法从控制/数据平面节点访问 Kubernetes pod 网络。您可以访问任何 Pod,包括彼此之间的控制平面 Pod,但不能访问主机上的任何内容。

文档中引用的 Kubernetes 网络基础知识:

  • 一个节点上的 Pod 可以在没有 NAT 的情况下与所有节点上的所有 Pod 通信
  • 节点上的代理(例如系统守护进程、kubelet)可以与该节点上的所有 pod 通信。-- 请注意,例如,您可以使用 docker 执行此操作,但不能使用 pod 网络。

此外,来自文档

  • Pod 中的容器使用网络通过环回进行通信。
  • 集群网络提供不同 Pod 之间的通信。
  • Service 资源允许您公开在 Pod 中运行的应用程序,以便从集群外部访问。
  • 您还可以使用服务发布服务,仅供集群内部使用。

推荐阅读