如何在 EKS 集群中基于内存的指标实现自动缩放

How to implement Auto scale on Memory based metric in EKS cluster

我有一个包含最少 3 个和最多 6 个节点的 EKS 集群,为此设置创建了自动缩放组,我如何在内存使用量达到峰值 up/down 时实现节点的自动缩放,因为没有这样的指标在像 cpu 这样的自动缩放组中。 有人可以建议我清楚的步骤吗我是这个设置的新手。

您需要部署集群自动缩放器,它会为您增加或减少节点数量。

查看official docs

开箱即用的 ASG 不支持基于内存利用率的缩放。 您必须使用自定义指标才能做到这一点。

Here 是方法。

您是否考虑过使用 CloudWatch 警报来监控您的节点? 脚本可以收集内存参数供以后使用。

参见 here 如何设置。

我认为你需要步进扩展策略

  • 目标跟踪政策;可以为所需容量与指标成比例的指标创建,例如,如果平均 CPU 利用率接近或高于目标值,ASG 将增加容量,即横向扩展。

请参阅 https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-scaling-target-tracking.html

的注意事项
  • 步骤扩展策略;是用户控制的您创建自己的云监视警报并决定操作并设置成反比的策略,例如,如果平均可用内存较少,您将想要横向扩展,反之亦然