【问题标题】:Best Practice GCP - GKE | Multiple services最佳实践 GCP - GKE |多项服务
【发布时间】:2019-10-28 12:23:26
【问题描述】:

我们有不同的 GCP 项目,即 DEV/STAGE/PROD。 在 DEV 项目中,作为第 1 阶段的一部分,我们确实在一个集群中运行了两个服务,在自定义 VPC 网络和子网中。

随着项目的扩展(称为第 2 阶段),我们将向 DEV GCP 项目添加更多服务,其中服务将从 2 个服务增加到 6 个。

我们目前正在进行的讨论是,对于第 2 阶段,是否在以下地区提供服务: - 同一个集群或 - 不同的集群

考虑到入口规则和页面路由策略,如果老手能提供一些线索就好了,以上哪种方法对项目有好处?

【问题讨论】:

  • 我找到了一个可能对描述GKE best practice 有用的链接。请记住,容量是您做出选择的关键
  • 定义两个服务使用什么资源。定义了您如何配置 GKE。对于具有一个主节点和三个节点的小型 GKE 集群,两个服务或六个或二十个不会有太大区别。它只是取决于每个服务/pod/容器在 CPU、内存和网络带宽方面所需的资源。
  • 感谢您的输入和指点,我将在这里发布我的更新@Adebisi
  • @JohnHanley 我有 3 个节点和 n1-standard-8 类型机器的 GKE 集群。由于一些应用程序在 JAVA spring boot 中,而一些在 Node JS 中,我认为它们需要更多资源
  • 我可以写一个只需要100mils或2000的Java App。没有足够的细节。 n1-standard-8 是小型集群的不错选择。除非您的应用消耗大量资源,否则我会运行它们并对行为进行基准测试。

标签: google-cloud-platform google-kubernetes-engine


【解决方案1】:

您可以使用相同的集群。如果您没有足够的资源来部署各种服务所需的所有 pod,请考虑扩展集群而不是创建新集群。您可能还想考虑node pool autoscalingnode auto provisionning

集群中的服务数量实际上只有两个限制:k8s 对象的总数(这接近 300k~400k 并且是 etcd 的限制),以及在创建集群时提供的服务 IP 的数量(您为服务分配的次要范围)。

除了上述两个限制之外,我真的认为没有太多理由为新服务创建新集群。如果您有内部设计要求,那是不同的,但从纯粹的 k8s 或 GKE 角度来看,您绝对可以继续使用相同的集群。

【讨论】:

  • 这是一个很好的指针,我们已经得出结论,减少集群的数量并改用命名空间。
猜你喜欢
  • 1970-01-01
  • 2011-12-16
  • 1970-01-01
  • 2015-07-26
  • 1970-01-01
  • 2016-03-27
  • 2018-09-11
  • 2014-07-07
  • 2011-08-06
相关资源
最近更新 更多