k8s weave和hostNetwork = true给出随机端口

时间:2018-04-29 23:07:07

标签: networking kubernetes weave

如果我用

生成一个pod
  

hostNetwork:true

然后附加到它

  

kubectl exec -it my-pod-test bash

并产生一些愚蠢的东西

  

nc -l< HOST_IP> 5678

和netstat告诉我

  

tcp 0 0 0.0.0.0:34592 0.0.0.0:* LISTEN 94 / nc

为什么分配了随机端口(在这种情况下)34592?我希望看到端口5678正在使用中。

这是Weave的“功能”,我应该选择另一个网络插件吗?

更多背景信息:我正在努力关注 https://www.compoundtheory.com/scaling-dedicated-game-servers-with-kubernetes-part-1-containerising-and-deploying/

1 个答案:

答案 0 :(得分:3)

您没有说出您的广告正在运行的图片,但在使用基于{{3}的图片中找到的busybox nc时,我已经出现此症状例如。

正如您将在alpine中看到的,侦听特定端口的语法是:

  nc -l -p 5678

请注意,hostNetwork: true会绕过任何pod网络,因此这与the docs无关 - 您的pod正在主机网络中运行,就好像它是直接在主机上运行的进程一样。