【问题标题】:Setup CloudWatch Alarms for EC2 instances in Autoscaling Group(CF)为 Autoscaling Group(CF) 中的 EC2 实例设置 CloudWatch 警报
【发布时间】:2021-07-15 12:21:36
【问题描述】:
我有一个运行两个 EC2 实例的 AWS::AutoScaling::AutoScalingGroup 配置。我的问题是 - 是否可以为两个实例附加 CloudWatch 警报?例如,我想观察组中每个 EC2 的 StatusCheckFailed_Instance 指标?
通常您可以通过 EC2 Instance ID 附加警报,但如何知道 AutoScalingGroup 中的每个 EC2 Instance ID 附加警报?或者这里应该是另一种附加警报的方式?我真的在互联网上找不到有用和可行的东西。
【问题讨论】:
标签:
amazon-web-services
amazon-cloudformation
amazon-cloudwatch
autoscaling
alerts
【解决方案1】:
选项 1)
- 创建您自己的在启动/终止事件时触发的脚本
- 每个脚本都将设置为触发 lambda,该 lambda 将读取实例 ID 并创建/删除警报
选项 2)
- 如果您不尝试使用自动恢复选项(在 ASG 中不需要该选项,因为 ASG 只会替换实例),那么您可以为 ASG 发出 1 个聚合警报
- 根据具有 ASGName= 维度的 StatusCheckFailed_Instance 指标创建警报
- 将其设置为在 MAX 统计值 > 1 时触发(因为这意味着至少有 1 个实例出现故障,每个实例都会将自己的数据点推送到 EC2 指标的 ASG 版本)
- 由于您只有 2 个实例,您可以手动检查它们是否触发。但对于较大的 ASG,在 CloudWatch 指标控制台(或仪表板)上使用 SEARCH() 数学表达式将是查看所有 ASG 实例并查看其指标以了解哪个实例失败的好方法