【问题标题】:GKE Cluster autoscaler profile for older luster旧光泽的 GKE 集群自动扩缩器配置文件
【发布时间】:2021-02-16 11:00:33
【问题描述】:

现在在 GKE 中创建新的 K8s 集群时有一个新选项卡

Automation - 为自动维护、自动扩展和自动供应设置集群级标准。编辑节点池以实现自动扩展、自动升级和修复等自动化。

它有两个选项 - 平衡(默认) & 优化利用率(测试版)

我们不能为旧集群设置这个吗?

我们正在运行旧的 GKE 版本 1.14,我们希望在现有节点的资源利用率达到 70% 时自动扩展集群。

目前,我们有 2 个不同的池 - 只有 一个 启用了自动节点配置,但在高峰时段如果 HPA 扩展 POD,新节点需要一些时间才能加入集群有时由于资源压力,退出节点开始崩溃。

【问题讨论】:

  • 您可以通过以下路径为集群设置Optimize utilization参数:GCP Cloud Console (Web UI) --> Kubernetes Engine --> CLUSTER -> Edit -> Autoscaling profile。您可以通过关注this documentation 来了解它的行为方式。 Autoscaler 基于集群无法在当前存在的节点上调度 pod。它考虑了工作负载的请求,而不是实际的资源利用率。您是否在工作负载上设置了requests 参数?
  • 是的,我们在所有工作负载中都有资源请求和限制。

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


【解决方案1】:

您可以通过以下方式设置自动缩放配置文件:

  • GCP Cloud Console (Web UI) -> Kubernetes Engine -> CLUSTER-NAME -> Edit -> Autoscaling profile

此截图是在GKE 版本1.14.10-gke.50 上制作的

你也可以运行:

  • gcloud beta container clusters update CLUSTER-NAME --autoscaling-profile optimize-utilization

官方文档说明:

您可以指定在做出此类决定时使用哪个自动缩放配置文件。当前可用的配置文件有:

  • balanced:默认配置文件。
  • optimize-utilization:优先考虑优化利用率而不是保留集群中的备用资源。选中后,集群自动缩放器会更积极地缩减集群:它可以删除更多节点,并更快地删除节点。 此配置文件已针对对启动延迟不敏感的批处理工作负载进行了优化。我们目前不建议将此配置文件用于服务工作负载。

-- Cloud.google.com: Kubernetes Engine: Cluster autoscaler: Autoscaling profiles

此设置 (optimize-utilization) 在用于处理工作负载时可能不是最佳选择。它将更积极地尝试scale-down(删除一个节点)。它会自动减少集群拥有的可用资源量,并且可能更容易受到工作负载高峰的影响。


回答部分问题:

我们正在运行旧的 GKE 1.14 版,我们希望在现有节点的资源利用率达到 70% 时自动扩展集群。

如文档中所述:

Cluster autoscaler 根据在该节点池的节点上运行的 Pod 的资源请求(而不是实际资源利用率)自动增加或减少节点池的大小。它会定期检查 Pod 和节点的状态,并采取行动:

  • 如果 Pod 由于节点池中没有足够的节点而无法调度,则集群自动扩缩器会添加节点,直至节点池的最大大小

-- Cloud.google.com: Kubernetes Engine: Cluster autoscaler: How cluster autoscaler works

您无法根据资源利用率 (70%) 的百分比直接扩展集群。 Autoscaler 基于集群无法在当前存在的节点上调度 pod。

您可以通过CPU 使用Horizontal Pod Autoscaler 来扩展Deployment 的副本数量。这个Pods 可以有一个缓冲区来处理增加的流量,并且在特定阈值之后,它们可以产生新的PodsCA(集群自动缩放器)将发送一个新节点的请求(如果新的Pods 是不可调度)。该缓冲区将成为防止应用程序无法管理的突然峰值的机制。

缓冲区部分和over-provisioning详细解释在:



GKE 上有大量关于运行具有成本效益的应用程序的文档:

我鼓励您查看上面的链接,因为有很多关于(扩展、过度配置、工作负载峰值、HPAVPA 等)的提示和见解

其他资源:

【讨论】:

    猜你喜欢
    • 2018-05-13
    • 2017-09-20
    • 1970-01-01
    • 2017-01-20
    • 2021-04-10
    • 2020-03-12
    • 2018-08-04
    • 2021-11-21
    • 1970-01-01
    相关资源
    最近更新 更多