google-cloud-endpoints - 谷歌端点 + GKE + GRPC
问题描述
我一直在尝试将 grpc 应用程序部署为 GKE 集群上的谷歌端点的前端,并在 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
推荐阅读
- php - 在 laravel 中以 URL 为条件
- doxygen - Doxygen 如何生成参考 ID?
- jenkins - Jenkins X v3 发布管道在 step-promote-changelog 上失败
- database-design - 将区间编码为字符串以进行交集查询
- django - 连接到 Spotfire 服务器时的 JSESSIONID cookie 是什么?
- asp.net - 如何将空 div 添加到 ext:Window
- c# - 如何在 C# 中映射列表?
- asp.net - 初始化字符串的格式不符合从索引 0 开始的规范
- html - 如何使用 flexbox css 使卡片项目始终具有相同的大小
- docker - 在 docker 内运行 docker