3

我们一直在尝试使用最经济的设置来配置部署到 Google Cloud Platform 中的 K8 集群。由于围绕我们的商业计费即服务平台 Bill Rush 的监管和地缘政治限制,我们的解决方案将部署到不同的区域数据中心。

鉴于我们的区域要求意味着我们希望使用以下基础设施设置:

  1. 承诺使用虚拟机资源分配。我们的 K8 节点将在配置时分配给预定义的固定期限计算基础设施配额。
  2. 标准网络层 - 由于本地客户距离 GCP 区域/区域数据中心位置只有一两跳,我们很乐意使用外部网络提供商将流量传送到最近的谷歌网络出口点进入数据中心。不需要高级网络路由。
  3. 区域环境和部署。我们只需要一个系统在一个或两个区域上运行以实现冗余。我们不需要更高级的全局冗余设置。

使用这 3 个选项将为我们的每个区域应用程序环境提供最便宜的设置。

此外,所有区域实例都需要可收藏的 URL,以便用户可以轻松找到我们的应用程序环境。因此,我们需要使用 DNS 和外部 IP 为每个环境播种。当我们将它们应用到我们的 K8 集群环境时,需要在我们的 YAML 入口文件中引用它们。

问题:

我们想使用传统的 Kubernetes 最佳实践并定义一个入口。这将向集群公开一个外部入口点,该入口点由 GKE 特定的 Google Cloud 控制器配置和管理。

对于 GKE 入口,仅支持单一设置:一个全局 HTTP(S) 负载均衡器,其中包括 [代理、转发规则、外部 IP、后端、证书]。使用区域外部 IP 时,LB 设置失败。

问题:

  1. 为什么我们不允许在入口 YAML 声明中使用区域外部 IP?
  2. 哪些替代 GKE 集群配置将支持符合标准网络层的外部 IP 地址
  3. 这是否会影响我们使用 Anthos 进行开发和本地部署的 UAT 集群的能力。

提前致谢。

4

1 回答 1

1

1) 为什么我们不允许在入口 YAML 声明中使用区域外部 IP?

根据有关静态外部 IP 地址的 GCP 文档,“静态外部 IP 地址可以是区域资源或全局资源。区域静态 IP 地址允许该区域的资源或该区域内的区域资源使用 IP 地址。在此在这种情况下,VM 实例和区域转发规则可以使用区域静态 IP 地址。

全局静态外部 IP 地址仅对全局转发规则可用,用于全局负载平衡。您不能将全局 IP 地址分配给区域或区域资源。”

2) 哪些替代 GKE 集群配置将支持标准网络层兼容的外部 IP 地址?

您可能需要考虑一些区域入口或第三方 nginx 入口并在那里使用区域 IP 地址,您必须使用--region 标志创建新的区域外部 IP 地址。您可以在此社区文档中找到有关“Google Kubernetes Engine 上使用 NGINX 控制器的 Ingress”的更多信息

3) 这是否会影响我们使用 Anthos 进行开发和本地部署的 UAT 集群的能力。

据我了解,它将使用区域资源,因此您不会获得全球资源的任何优势,例如将 GCP GFE 访问到客户或您的服务用户最近的位置。

于 2020-05-20T23:58:13.070 回答