AWS Beanstalk Auto-scaling 使用 UnhealthyHost 计数和运行状况检查进行扩展触发器

rug*_*ert 5 amazon-web-services autoscaling elastic-beanstalk

我将扩展触发器设置为寻找不健康的主机计数,但它似乎不起作用。 我的配置设置

现在来测试一下 - 我通过 SSH 连接到我的一个实例并停止 HTTPD 服务。然后,当我导航到运行状况概述时,我将立即看到我通过 SSH 连接到的服务器现在的状态为严重。

严重===不健康?

我假设此时经过 1 分钟后(根据我的规则)将创建一个新服务器,但这并没有发生。

如果我正确理解我的规则 - 现在有 1 个(高于上限阈值)不健康的服务器,因此我们增加 1。然后,一旦不健康的服务器数量为 0(低于下限阈值),则删除 1 个服务器。

但是,是的,我等了大约 5 分钟,但没有配置新的 EC2 服务器。

我还有一些健康检查的设置:

在此输入图像描述

这是否与我的自动缩放规则相冲突?我认为健康检查文件需要返回 200 响应才能被视为健康,并且如果 HTTPD 停止 - 它们不会返回该响应。

那么什么给出呢?

小智 1

看来您离开了单位设置,我认为该指标不存在该单位。您可以进入cloudwatch控制台检查警报和指标是否匹配。

但此外,在 UnHealthyHostCount 上进行扩展并不是一个好主意。它只是要启动一个新实例,但不会对不健康的实例执行任何操作。相反,启用 ELB 运行状况检查通常是一个更好的主意。

https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environmentconfig-autoscaling-healthchecktype.html