【问题标题】:For each environment do we need separate GKE Cluster?对于每个环境,我们是否需要单独的 GKE 集群?
【发布时间】:2023-03-05 07:47:01
【问题描述】:

我正在使用 GKE。对于单个区域,它是免费的(仅实例成本)。对于 DEV,我们正在使用它,但对于 QA/DEV/Production 等其他环境,我们是否需要单独的 GKE 集群或在当前 GKE 中使用不同的命名空间?这是成本和安全性的最佳方式

【问题讨论】:

    标签: kubernetes google-kubernetes-engine istio


    【解决方案1】:

    这取决于您的要求。两种选择都是可行的。

    像 QA/DEV/Production 这样的环境我们是否需要单独的 GKE 集群

    在大型企业的专业环境中,这将是不同VPC 中的不同集群(每个环境一个VPC),您也可以使用单独的项目,但不是必需的。

    在当前 GKE 中,一个不同的命名空间将起作用

    这更便宜,但你有更少的分离。只有你知道你需要什么。

    【讨论】:

    • 好吧,让我这样取。我打算在同一个 GKE 集群中部署 DEV 和 QA。我的 GKE 正在使用 istio 入口网关。在这种情况下,ingree 网关主机 IP 将是什么。因为 istio 的入口似乎是独一无二的,就像它来自 -n istio-system 一样?
    • 因为在这种 Istio 案例中,DEV 和 QA 需要单独的负载均衡器地址,所以 dev 和 QA 只需要 1 个地址?
    • 您应该从用于公开网关的负载均衡器获取 IP 地址,但在大多数情况下,您希望创建一个特定的静态 IP 地址。还建议创建尽可能简单的环境,这样更容易管理,所以我不建议将 DEV 和 QA 结合起来。
    【解决方案2】:

    没有。对于不同的环境,您可以在同一个集群中拥有不同的命名空间。这将具有成本效益。

    如果您使用 nodeports,您需要注意以下几点:

    但是节点端口在同一个集群中必须是唯一的。因此,如果您使用 nodeports 访问您的应用程序,则需要不同的集群(如果您仍然希望在所有环境中拥有相同的节点端口。如果没有,您可以使用具有不同命名空间的同一个集群。 例如。如果您在 Cluster1 命名空间 1 中有带有节点端口 30077 的 app1(用作开发人员) 您不能在 Cluster1 命名空间 2 中使用 nodeport 30077 部署 app1(用作测试) 但是您可以在 cluster1 namespace2 中使用 nodeport 3xxxx 部署 app1(除了已经使用的端口 - 例如在本例中为 30077)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-10
      • 2019-05-13
      • 2023-03-28
      • 2023-02-23
      • 1970-01-01
      • 2011-12-19
      相关资源
      最近更新 更多