首页 > 解决方案 > GKE 在 2 个后端应用程序之间的集群负载平衡

问题描述

我的集群上运行了 2 个应用程序:G 和 C。G 只是一个 pod,C 在 2 个 pod 上。

G 暴露于外部连接,而 C 没有。G首先接收请求,然后处理并发送给C。

所以我想知道如何在 C 的 2 个 pod 之间对 G 发送给 C 的请求进行负载平衡。

我目前正在为 C 使用 Kubernetes 本机服务,但我不确定它是否是我的 2 个 pod 之间的负载平衡。我正在阅读的所有内容似乎都将服务暴露在外部,我不希望那样

谢谢

标签: kubernetesload-balancinggoogle-kubernetes-engine

解决方案


为应用程序 C 的部署创建一个ClusterIP类型的 Kubernetes 服务。这样的服务获得一个内部 IP,它没有暴露在集群之外。该服务在其目标 pod 之间(来自部署)对其流量进行简单的循环路由。

使用它通过服务从 G 引用应用程序 C:

<k8s-service-name>.<namespace>.svc.cluster.local

以上假设集群上运行着DNS(通常有)。


推荐阅读