我正在尝试将Cloud Watch Alarm添加到现有的Auto Scaling组。运行terraform apply之后,我可以在AWS控制台的CloudWatch部分下看到警报。但是,警报的状态将保持在INSUFFICIENT_DATA
中。
状态详细信息包含消息State changed to INSUFFICIENT_DATA at 2016/04/19. Reason: Unchecked: Initial alarm creation
我用来创建警报的Terraform资源如下:
resource "aws_cloudwatch_metric_alarm" "dwalters_status_check_failed" {
alarm_name = "dWaltersStatusCheckFailedTest"
alarm_description = "Test if alarm goes from INSUFFICIENT_DATE -> OK after being initialized"
comparison_operator = "GreaterThanOrEqualToThreshold"
dimensions = {
AutoscalingGroupName = "test-autoscaling-group"
}
evaluation_periods = "1"
metric_name = "StatusCheckFailed"
namespace = "AWS/EC2"
period = "300"
statistic = "Maximum"
threshold = "1"
unit = "Count"
alarm_actions = []
}
即使存在警报中列出的度量标准和Auto Scaling组,我也必须选择警报,单击
Modify
,重新选择相同的度量标准和Auto Scaling组,然后单击“保存”以将状态从到INSUFFICIENT_DATA
。有没有人遇到过类似的问题?
最佳答案
以我的经验,dimensions
部分就是问题。
假设您都是使用Terraform完成的,则AutoscalingGroupName
不应进行硬编码。
dimensions = {
AutoscalingGroupName = "test-autoscaling-group"
}
你能换成
dimensions = {
AutoscalingGroupName = "${aws_autoscaling_group.bar.name}"
}
您需要根据定义缩放组的方式来调整资源名称。