kubefwd 不适用于特定端口/主机名

发布于 2025-01-11 11:55:15 字数 1113 浏览 0 评论 0原文

我正在使用此命令来运行 kubefwd (https://github.com/txn2/kubefwd)

<代码>sudo kubefwd services -x; -n <命名空间> -c; -l "app in (idm, sbb-amq)"

这就是日志:

    INFO[14:13:58] Port-Forward: 127.1.27.1 sbb-amq:8161 to pod sbb-amq-0:8161
    INFO[14:13:58] Port-Forward: 127.1.27.1 sbb-amq:61616 to pod sbb-amq-0:61616
    INFO[14:13:58] Port-Forward: 127.1.27.1 sbb-amq:61616 to pod sbb-amq-0:61616
    INFO[14:13:58] Port-Forward: 127.1.27.7 idm:9006 to pod idm-0:9006
    INFO[14:13:58] Port-Forward: 127.1.27.7 idm:80 to pod idm-0:9006
    ERRO[14:14:01] ForwardPorts error: unable to listen on any of the requested ports: [{80 9006}]

我在日志的最后一行收到错误,所以我意识到与端口 80 和 9006 相关的所有主机名都不是附加到 IP,这意味着:

但是:

  • http://sbb-amq:8161 也有效(不使用端口 9006)

有人见过这个吗?

编辑:我使用的是 Ubuntu,端口 80/9006 未使用。

I am using this command to run kubefwd (https://github.com/txn2/kubefwd)

sudo kubefwd services -x <context> -n <namespace> -c <kube_file_path> -l "app in (idm, sbb-amq)"

That is the log:


    INFO[14:13:58] Port-Forward: 127.1.27.1 sbb-amq:8161 to pod sbb-amq-0:8161
    INFO[14:13:58] Port-Forward: 127.1.27.1 sbb-amq:61616 to pod sbb-amq-0:61616
    INFO[14:13:58] Port-Forward: 127.1.27.1 sbb-amq:61616 to pod sbb-amq-0:61616
    INFO[14:13:58] Port-Forward: 127.1.27.7 idm:9006 to pod idm-0:9006
    INFO[14:13:58] Port-Forward: 127.1.27.7 idm:80 to pod idm-0:9006
    ERRO[14:14:01] ForwardPorts error: unable to listen on any of the requested ports: [{80 9006}]

I got an error in the last line of the log, so I have realized that all the hostnames related to ports 80 and 9006 were not attached to the IP, which means:

However:

  • http://sbb-amq:8161 works as well (not using the port 9006)

Has anyone seen this before?

EDIT: I am using Ubuntu and the ports 80/9006 are not in use.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

风蛊 2025-01-18 11:55:15

无法侦听任何请求的端口通常意味着您的本地工作站上有某些东西正在侦听这些端口,0.0.0.0:800.0.0.0在本例中为:9006。 IP 0.0.0.0 表示它正在侦听所有接口上的这些端口。

kubefwd 使用本地环回 IP 地址来允许多个服务使用同一端口,这样您就可以拥有 127.27.1.1:80 -> someservice:80 和 127.27.1.2:80 ->某个其他服务:80

不幸的是,当您的本地应用程序使用 0.0.0.0:80 时,您将无法将 80 绑定到任何接口,因为它已被使用。我不知道为什么应用程序经常绑定到每个接口,因为 localhost 几乎总是指向 127.0.0.1

您有几个选择:

  1. 更改其他服务的配置以使用单个 IP,例如 127.0.0.1
  2. 使用映射标志并让 kubefwd 使用不同的端口:-m 80: 8080 -m 9006:9007

unable to listen on any of the requested ports usually means that you have something on your local workstation listening on those ports, 0.0.0.0:80 and 0.0.0.0:9006 in this case. The IP 0.0.0.0 means it's listening to those ports on all interfaces.

kubefwd uses local loopback IP addresses to allow the same port for multiple services so that you can have 127.27.1.1:80 -> someservice:80 and 127.27.1.2:80 -> someotherservice:80.

Unfortunately, when you have local applications using 0.0.0.0:80, you will not be able to bind 80 to any interface, as it is already being used. I don't know why applications often bind to every interface since localhost almost always points to 127.0.0.1.

You have a couple of options:

  1. change the configuration of those other services to use a single IP such as 127.0.0.1
  2. use the mapping flag and have kubefwd use a differnt port: -m 80:8080 -m 9006:9007
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文