Kubernetes 节点端口在主机上侦听时不可见,但服务正常
Kubernetes nodeport not visible as listening on host but service working
我在通过节点端口公开的 kubernetes 上有一个服务 运行,如下所示:
test-service NodePort 100.100.246.5 <none> 30005:30005/TCP
该服务可以从其他节点访问并且工作正常;但是,如果我执行 netstat -tunlp | grep 30005
.
,我看不到 kubernetes 在那个端口上监听
我有 External Traffic Policy: Local
,如果我理解正确的话,那应该意味着上面有 pod 的节点应该在所述端口上侦听?同样,一切正常,但我想弄清楚为什么我看不到主机上的端口侦听。
Kubernetes 服务未实现为侦听特定端口的进程。相反,使用 iptables(或 IPVS),服务基本上是 iptables 规则。这就是为什么它们不会出现在您的 netstat 中的原因。您可以找到有关它的更多信息 here。
我在通过节点端口公开的 kubernetes 上有一个服务 运行,如下所示:
test-service NodePort 100.100.246.5 <none> 30005:30005/TCP
该服务可以从其他节点访问并且工作正常;但是,如果我执行 netstat -tunlp | grep 30005
.
我有 External Traffic Policy: Local
,如果我理解正确的话,那应该意味着上面有 pod 的节点应该在所述端口上侦听?同样,一切正常,但我想弄清楚为什么我看不到主机上的端口侦听。
Kubernetes 服务未实现为侦听特定端口的进程。相反,使用 iptables(或 IPVS),服务基本上是 iptables 规则。这就是为什么它们不会出现在您的 netstat 中的原因。您可以找到有关它的更多信息 here。