我尝试使用this documentation中提到的以下注释创建内部负载均衡器:

networking.gke.io/internal-load-balancer-allow-global-access: "true"

这是完整的 list :
apiVersion: v1
kind: Service
metadata:
  name: ilb-global
  annotations:
    cloud.google.com/load-balancer-type: "Internal"
    networking.gke.io/internal-load-balancer-allow-global-access: "true"
  labels:
    app: hello
spec:
  type: LoadBalancer
  selector:
    app: hello
  ports:
  - port: 80
    targetPort: 8080
    protocol: TCP

我尝试从其他区域的VM访问负载平衡器,但该VM无法访问端点。

但是,根据this documentation的要求,我在创建的转发规则上运行了以下命令(GCP为所有负载均衡器创建了具有随机名称的转发规则,可以使用gcloud compute forwarding-rules list命令进行检索)以更新全局访问权限:
gcloud beta compute forwarding-rules update abcrandomnamehehe --region [REGION-NAME] --allow-global-access

运行上述命令并手动更新负载均衡器后,可以从所有区域访问该端点。这是运行gcloud命令的手动步骤吗?

如果是,注释的用途是什么?我也使用了最新的GKE版本(1.15.4-gke.22)进行注释,但是如果不使用gcloud命令进行更新,则该注释将不起作用。是否有我缺少的东西,或者它是GCP中的错误?

编辑:我还打开了GCP的this问题,该问题很快得到解决,他们更新了公共(public)文档(2020年1月15日),特别提到了GKE 1.16才能使Global Access功能正常工作。

最佳答案

这是预料之中的,但是在公共(public)文档中根本没有解释这种现象的原因。实际上,“全局访问”功能可与GKE 1.16群集一起使用。

到目前为止,我可以与您分享以下要点:

  • 关于全局访问有2个不同的功能:1个用于ILB,另外1个专门用于GKE。
  • GKE的
  • 全局访问功能已于12月23日启动。
  • GKE的
  • GKE全局访问功能可从GKE 1.16开始使用,但似乎未在文档中提及。
  • 我们的测试已使用GKE 1.13.11-gke.14集群完成。
  • 需要创建一个GKE 1.16集群并再次对其进行测试。

  • 话虽如此,我想通知您,公共(public)信息中的这种不匹配已由正确的团队正确解决,正在处理,以便更新可用的here公共(public)文档,以防止将来造成困惑。您可以通过跟踪更新here来跟踪此过程

    您如何验证上面提供的信息?在这里,您可以执行一个简短的过程:

    测试1:
  • 在europe-west4中创建GKE 1.16集群(此区域/区域不是强制性的)。
  • 创建部署。
  • 通过写入服务配置文件,创建带有注释“networking.gke.io/internal-load-balancer-allow-global-access:”true”的内部TCP负载平衡器。
  • 进入“网络服务”>“负载平衡”>“高级”菜单(在底部)>:应该启用全局访问。
  • europe-west1中的SSH VM。
  • 运行命令$ curl -v:您应该收到HTTP/1.1 200 OK。

  • 测试2:
  • 在服务配置文件中删除注释“networking.gke.io/internal-load-balancer-allow-global-access:“true”。
  • 通过运行命令$ kubectl apply -f
  • 更新我的服务
  • 进入“网络服务”>“负载平衡”>“高级”菜单(位于底部)>:应禁用全局访问。
  • europe-west1中的SSH VM。
  • 运行命令$ curl -v:您应该收到超时错误消息。
  • 关于kubernetes - GCP内部负载平衡器全局访问(Beta)注释不起作用?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59680679/

    10-15 23:03