我有以下命令会创建警报。唯一的事情 未设置为在实例处于警报状态时终止EC2实例。
我认为我没有正确陈述以下内容:
--actions-enabled --alarm-actions ec2:terminate
这是我的完整CLI命令:
aws cloudwatch put-metric-alarm --actions-enabled --alarm-actions ec2:terminate --alarm-name "High-CPU" --alarm-description "CPU has exceeded 70" --metric-name CPUUtilization --namespace AWS/EC2 --statistic Maximum --period 60 --threshold 70 --comparison-operator GreaterThanThreshold --dimensions Name=InstanceId,Value=$INSTANCE_ID --evaluation-periods 2 --unit Percent --alarm-actions arn:aws:sns:us-east-2:499000881936:Alarm-test
感谢您的输入!
答案 0 :(得分:1)
--actions-enabled
是默认设置,因此您不需要它。arn:aws:automate:REGION:ec2:terminate
,例如arn:aws:automate:us-east-2:ec2:terminate
--alarm-actions
包含值列表,因此您需要一个带有两个值的参数。将它们放在一起:
aws cloudwatch put-metric-alarm \
--alarm-name "High-CPU" \
--alarm-description "CPU has exceeded 70" \
--metric-name CPUUtilization \
--namespace AWS/EC2 \
--statistic Maximum \
--period 60 \
--threshold 70 \
--comparison-operator GreaterThanThreshold \
--dimensions Name=InstanceId,Value=$INSTANCE_ID \
--evaluation-periods 2 \
--unit Percent \
--alarm-actions arn:aws:sns:us-east-2:499000881936:Alarm-test arn:aws:automate:us-east-2:ec2:terminate