【问题标题】:Cannot access GKE with static external IP无法使用静态外部 IP 访问 GKE
【发布时间】:2021-12-21 07:46:31
【问题描述】:

我正在尝试为 GKE LB 分配静态外部 IP。

apiVersion: v1
kind: Service
metadata:
  name: onesg
  labels:
    app: onesg
spec:
  selector:
    app: onesg
  ports:
  - port: 80
    targetPort: 5000
  type: LoadBalancer
  loadBalancerIP: "my regional IP"

但部署后,我无法从区域 IP 访问我的应用程序。有什么想法吗?

NAME         TYPE           CLUSTER-IP      EXTERNAL-IP     PORT(S)        AGE
kubernetes   ClusterIP      10.104.0.1      <none>          443/TCP        23h
onesg        LoadBalancer   10.104.15.191   my regional IP  80:31293/TCP  7m18s

如果我使用 GKE LB 分配的临时 IP,我可以访问我的应用。

【问题讨论】:

  • 检查在 GCP 控制台中创建的负载均衡器,是否也分配了相同的 IP?

标签: gke-networking


【解决方案1】:

您必须检查您的 Service 是否确实指向正确的 pod。

运行以下

kubectl describe service onesg

在输出中应该有一个名为端点的字段。

运行这个

kubectl 获取 pods -o 宽

并确保第一个命令的端点字段中的 IP 列表与第二个命令中的 pod 的 IP 匹配

接下来要进行故障排除,您可以尝试确保您的应用正常工作,您可以使用 kubectl port-forward 命令来做到这一点

https://kubernetes.io/docs/tasks/access-application-cluster/port-forward-access-application-cluster/

【讨论】:

  • 谢谢,我重试了几次,最终通过在 URL 中键入区域 IP,而不是单击 GCP 控制台中的链接来工作......
猜你喜欢
  • 1970-01-01
  • 2020-04-23
  • 2020-07-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-08-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多