kubernetes - 您将如何确保您的 GKE 集群靠近您的最终客户端?
问题描述
如果我正在构建一个应用程序并将其部署到 GKE 集群,但要为来自多个区域的用户提供服务,我如何最大限度地减少从用户到我的集群的延迟?
我一定要吗:
- 将同一个应用部署到不同地域的不同集群?
- 将负载均衡器与 GKE 一起用作后端服务?
或者在部署时是否有任何设置以确保我的集群从多区域的角度来看具有最小的延迟?
此外,如果我正在运行单独的前端和后端应用程序。我认为最好的做法是将前端与后端分开放置在两个不同的集群中,或者在同一个集群和不同的 Pod 中?
解决方案
您应该将前端和后端应用程序部署到位于不同区域的不同数据中心的不同 kubernetes 集群中。您可以使用 ingress 设置 Google Cloud Load Balancer,它可以处理多集群 Kubernetes 环境的跨区域流量。
您应该使用部署来部署 pod 的多个副本。此外,您可以使用podAffinity将前端 pod 和后端 pod 并置在同一个工作节点上。
https://cloud.google.com/solutions/prep-kubernetes-engine-for-prod
推荐阅读
- webpack - 带有 webpack 的 lightbox2 模块导致图像丢失
- web-bluetooth - device.watchAdvertisements() 不是函数。网络蓝牙(chrome)
- python - 如何从现有数据框创建新数据框
- r - R:删除 ggplot2 对象不会释放空间?可能的内存泄漏?
- c# - 无法连接到 Redis
- javascript - firebase onCall 云函数不返回结果
- load-balancing - HAproxy 不缓存凭据
- c# - 将 CheckBox 绑定到枚举值
- r - 根据同一行中的其他值选择值
- javascript - 如何删除 Firebase 对象映射中的深层嵌套字段