重复的 AWS EC2 自动缩放

Repeated AWS EC2 Autoscaling

我正在查看 AWS EC2 Auto-Scaling with Cloud Watch 功能。

我无法收集到的是自动缩放是否只能应用一次或重复应用?不过我想只有一次。

例如如果达到 60% cpu,则最大从 2 扩展到 4。

然后,如果根据 Cloud Watch 目标规则,从 2 变为 4,然后再次达到 60% cpu,我们可以再次重新应用自动缩放吗?

我看到了 "step" 选项,但它似乎适用于不同的目标值。该步骤可以重复 60% 配置还是需要 60%、70% 等等?这方面还不是很清楚。

或者这样的迭代方法根本不可能吗?暗示需要重新设定初始分配的基线?我认为不是基于步骤方法。

当您的警报超过您的阈值时,CloudWatch 警报将触发自动缩放。

因此,如果您的策略是在整个队列的平均 CPU 超过 60% 超过 15 分钟时增加 50% 的容量,则警报将触发您的缩放组的变化,从而增加您的价值"desired capacity" 属性,比方说从 2 到 3 个实例。 Autoscaling 然后会做出反应并将队列带到 "desired capacity"

如果以后相同的警报仍然存在,则会对您的缩放组触发新的更改,将所需容量增加到 4。然后 AutoScaling 将创建 EC2 实例以使您的队列达到新的所需容量。

以此类推

当然,您不想增加机队规模超出预算。因此,您可以定义 MAX 队列大小,AutoScaling 永远不会超过该大小。如果您的最大车队规模为 3,则我示例中的第二个警报将保留所需容量(3),因为新的所需容量 > 最大容量。这将结束缩放过程。

要恢复正常,除了横向扩展策略之外,您还必须在策略中创建扩展:即当我的机队的平均 CPU 低于 15% 达 1 小时时,让我们删除一个实例.您的 CloudWatch 警报将触发,导致队列的所需容量发生变化,AutoScaling 将调整(终止实例)以达到新的所需容量值。

当然,您不希望 AutoScaling 杀死队列中的最后一个实例(从所需容量 1 到所需容量 0),因此,与 MAX Capacity 值类似,您还定义了 MIN 容量,即在您的队列中保留的最小实例数,无论触发什么警报并尝试更改所需的容量。