在 AWS 中缩减 Auto Scaling 组会导致永久警报
Posted
技术标签:
【中文标题】在 AWS 中缩减 Auto Scaling 组会导致永久警报【英文标题】:Scaling Down Auto Scaling Group in AWS causes perpetual alarm 【发布时间】:2016-06-02 06:59:57 【问题描述】:我目前正在使用附加到我的 Auto Scaling 组的两个扩展策略: 一个
-
在调用 CloudWatch 警报时调用的纵向扩展策略。此 CloudWatch 警报使用 CPUUtilization 指标并在 CPU 超过 80% 时触发。
另一个是缩减策略,在调用不同的 CloudWatch 警报时调用。此 CloudWatch 警报使用 CPUUtilization 指标并在 CPU 低于 50% 时触发。
这种方法的副作用是,当我的 ASG 实例处于空闲状态(完全缩减,没有进行处理)时,我的 ASG 处于警报状态。
有没有办法进行不同的设置,使我的 ASG 不会处于持续警报状态?
以下是来自我的 CloudFormation 模板的这些警报的一部分:
"ScaleUpPolicy" :
"Type" : "AWS::AutoScaling::ScalingPolicy",
"Properties" :
"AdjustmentType" : "ChangeInCapacity",
"AutoScalingGroupName" : "Ref" : "WebApplicationASG" ,
"Cooldown" : "1",
"ScalingAdjustment" : "1"
,
"CPUAlarmHigh":
"Type": "AWS::CloudWatch::Alarm",
"Properties":
"EvaluationPeriods": "1",
"Statistic": "Average",
"Threshold": "80",
"AlarmDescription": "Alarm if CPU too high or metric disappears indicating instance is down",
"Period": "60",
"AlarmActions": [ "Ref": "ScaleUpPolicy" ],
"Namespace": "AWS/EC2",
"Dimensions": [
"Name": "AutoScalingGroupName",
"Value": "Ref": "WebApplicationASG"
],
"ComparisonOperator": "GreaterThanThreshold",
"MetricName": "CPUUtilization"
,
"ScaleDownPolicy" :
"Type" : "AWS::AutoScaling::ScalingPolicy",
"Properties" :
"AdjustmentType" : "ChangeInCapacity",
"AutoScalingGroupName" : "Ref" : "WebApplicationASG" ,
"Cooldown" : "1",
"ScalingAdjustment" : "-1"
,
"CPUAlarmLow":
"Type": "AWS::CloudWatch::Alarm",
"Properties":
"EvaluationPeriods": "1",
"Statistic": "Average",
"Threshold": "50",
"AlarmDescription": "Alarm if CPU is low, causing scale down",
"Period": "60",
"AlarmActions": [ "Ref": "ScaleDownPolicy" ],
"Namespace": "AWS/EC2",
"Dimensions": [
"Name": "AutoScalingGroupName",
"Value": "Ref": "WebApplicationASG"
],
"ComparisonOperator": "LessThanThreshold",
"MetricName": "CPUUtilization"
,
【问题讨论】:
这个“问题”也困扰着我。我也没有找到解决办法。 aws论坛上有一个帖子:forums.aws.amazon.com/thread.jspa?threadID=175650 【参考方案1】:这是正常和预期的行为。
在警报状态下拥有指标不是问题 - 请记住,警报状态的变化会触发事件。因此,大概一旦您的放大触发器发出警报,缩小的触发器就会发出警报。然后当指标下降时,它会回到警报状态,并触发缩减事件。
【讨论】:
虽然这是正常行为,但并不能真正回答问题。当我在 CLoudWatch 面板中看到 RED 时,这应该意味着存在问题,而不是一切都很好。或者至少这就是我希望 CloudWatch 提供的。 @CyrilDuchon-Doris:您可以随时向 CloudWatch 团队提出功能请求。这个问题真的没有其他简单的答案。【参考方案2】:您可以在控制台中隐藏这些,方法是单击“隐藏自动缩放警报”复选框。
https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/hide-autoscaling-alarms.html
仍然不理想,但总比没有好。
【讨论】:
以上是关于在 AWS 中缩减 Auto Scaling 组会导致永久警报的主要内容,如果未能解决你的问题,请参考以下文章