AWS Beanstalk自动扩展缩放触发器具有HealthyHostCount或UnhealthyHost计数

时间:2015-03-03 12:39:36

标签: amazon-web-services elastic-beanstalk autoscaling

我有Elastic Beanstalk环境,我需要设置自动调节策略,就像Elastic Loadbalancer有不健康实例一样,它会调出新实例我现在使用的策略是

My configuration

3 个答案:

答案 0 :(得分:7)

将第一个选项“HealthyInstanceCount”更改为UnHealthyInstanceCount,如果有1个或更多不健康,请添加+1实例。如果UnHealthyInstanceCount为0,则添加-1实例(取一个)。确保将最小值设置为1或更高(建议最少2个,在高可用性的两个单独可用区域中)。

enter image description here

答案 1 :(得分:2)

跟进这个因为我遇到了同样的问题。 @Max提出的解决方案是正确的,但需要对数字进行轻微调整。

1)确保将最小实例数和最大实例数设置为注意事项

2)设置以下参数 触发测量:UnHealthyHostCount 触发统计:最大值 计量单位:计数 上限阈值:0 上部突破比例增量:1 降低阈值:1 较低的违规规模增量:-1

答案 2 :(得分:1)

EB console > Configuration > Capacity<=没有选择的意义上,>=中的缩放触发器有些受限。要完全控制触发器,请转到AWS Console > EC2 > Auto Scaling Groups

选择您的Beanstalk应用程序的Auto Scaling组(如果您无法识别Beanstalk应用程序的Auto Scaling组,那么这里有个提示:默认情况下,自动扩展组将以awseb-e-<Environment ID>-stack-AWSEBAutoScalingLaunchConfiguration-XXXXXXXXXXX的方式命名。可以从应用程序的信息中心找到我们的beantalk应用程序的环境ID)

在选择应用程序的Auto Scaling组时,选择底部的Scaling Policies。在那里,您可以用普通的英语阅读放大和缩小的触发器。

您会注意到awseb-e-<Environment ID>-stack-AWSEBAutoScalingScaleDownPolicy-YYYYYYYYYYawseb-e-<Environment ID>-stack-AWSEBAutoScalingScaleUpPolicy-ZZZZZZZZZZ形式的2条策略。对于每个策略,将有一个awseb-e-<Environment ID>-stack-AWSEBCloudwatchAlarm***-AAAAAAAAAA形式的CloudWatch警报,被关联为触发器。

然后,如果您想微调触发器,请转到AWS CloudWatch>警报,然后选择警报。在这里,您将获得更多选项来编辑触发器。您可以选择阈值,例如<=>=并添加SNS主题等。还有更多选项。

编辑和更新警报,然后返回到Auto Scaling组的扩展策略。您将在那里看到新的更新,再次以纯正的英语,非常易于遵循和理解。