Google 端点 + GKE + GRPC

Google Endpoints + GKE + GRPC

我一直在尝试部署一个 grpc 应用程序作为 GKE 集群上 google 端点的前端,并在 3 天的大部分时间里终止负载均衡器本身的 TLS,我很困惑如何让它工作。

起初我尝试了一个没有 Google 端点的简单部署,以确保负载平衡器正常工作。这里有更详细的描述

https://github.com/kubernetes/ingress-gce/issues/18#issuecomment-454047010

那没有用。然后我尝试在此处部署应用程序

https://github.com/salrashid123/gcegrpc/tree/master/gke_ingress_lb

这似乎很有效,但我不太明白是什么让它起作用。在我看来(正如其他人所建议的)这可能是因为应用程序在 grpc 端点上使用 TLS

我已经尝试在我的应用程序 grpc 端点中启用 TLS,包括按照其他人的建议添加 grpc 健康检查,但这似乎没有帮助。

我的 esp 配置与

一样简单
- name: endpoints-proxy
  image: gcr.io/endpoints-release/endpoints-runtime:1
  args: [
    "--http2_port=8080",
    "--backend=grpc://127.0.0.1:50051",
    "--service=myapp.endpoints.myproject-34342.cloud.goog",
    "--rollout_strategy=managed",
    "--service_account_key=/etc/nginx/creds/endpoints-credentials.json"
  ]

究竟如何终止 GLB 上的 TLS 及其背后的 ESP 代理和 grpc 应用程序?关于如何让所有这些东西一起工作,我似乎缺少一个最佳点

想出了怎么做。事实证明有一些事情需要完成,但没有很好的记录。

详情看这里

https://github.com/GoogleCloudPlatform/endpoints-samples/issues/52#issuecomment-454387373