【问题标题】:k8s weave and hostNetwork=true giving random portsk8s weave 和 hostNetwork=true 给出随机端口
【发布时间】:2018-04-29 23:07:06
【问题描述】:

如果我用

生成一个 pod

hostNetwork:真

然后附加到它上面

kubectl exec -it my-pod-test bash

然后产生一些像

这样愚蠢的东西

nc -l 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/

【问题讨论】:

    标签: networking kubernetes weave


    【解决方案1】:

    您没有说您的 pod 正在运行什么映像,但我在使用 busybox nc 时出现了这种症状,例如在基于 alpine 的映像中发现。

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

      nc -l -p 5678
    

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

    【讨论】:

    • 是的,谢谢,我混乱的调试复制粘贴让我失去了行之间的 -p 标志!
    • 这件事深深印在我的脑海里,因为我曾经在教授培训课程时花了 30 分钟,试图弄清楚为什么这条确切的线路不起作用!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-26
    • 1970-01-01
    • 2019-06-29
    • 2020-09-09
    • 2017-07-22
    • 2021-08-12
    相关资源
    最近更新 更多