无法使用外部 IP 连接到 kubernetes 服务

Cannot connect to kubernetes service using external IP

我已经使用 kubeadm 在 GCE 中设置了一个 kubernetes 集群。我已经部署了一个简单的 mosquitto 代理和一个 Nodeport 服务来连接它。我可以使用内部 IP 地址从集群内部连接、发送和接收消息,但在尝试使用外部 IP(来自 GCE 的外部 IP)从外部连接时无法连接。这是我的服务的屏幕截图。

更新 防火墙规则

根据您的更新和我们的评论对话,我认为您需要添加防火墙规则。下面显示了如何打开所有端口,以便任何外部用户都可以访问 VM 上的任何端口。对安全性来说不是很好,但应该有希望表明这是问题所在。确保不要 运行 像这样用于生产等

  1. 转到 GCP 中“VPC 网络”中的“防火墙”
  2. 点击“创建防火墙规则”
  3. 给它起一个像“all”这样的名字
  4. 将目标更改为“网络中的所有实例”
  5. 将源 IP 范围更改为 0.0.0.0/0
  6. 在端口范围上单击“全部允许”

您应该可以访问 SERVERIP:30177。这应该与 VM 中的 NodePort 一起正常工作(而不是使用 GKE)并且服务器建议端口正在侦听 netstat -ntlp 显示 0.0.0.0:30177.