我正在尝试创建一个完整的系统(使用AWS CLI),其中autoscaling是其中的一部分。
当我添加自动缩放组时,实例启动,但是在5分钟的冷却时间(默认的冷却时间)之后,实例会自动终止,并且此循环不断重复,尽管我的阈值是< = 0%CPU利用率对于RemoveCapacity策略。我无法理解为什么会这样?
以下是我用来创建所有相关资源的命令。
自动缩放组:
aws autoscaling create-auto-scaling-group --auto-scaling-group-name AWS-CoE-1-AutoScalingGroup --launch-configuration AWS-CoE-1-AS-launch-config --max-size 3 --min-size 1 --desired-capacity 1 --health-check-type ELB --load-balancer-names AWS-CoE-1-LoadBalancer --health-check-grace-period 120 --vpc-zone-identifier subnet-153f2d53
横向扩展政策
aws autoscaling put-scaling-policy --policy-name aws-coe-scaleout-policy --auto-scaling-group-name AWS-CoE-1-AutoScalingGroup --scaling-adjustment 1 --adjustment-type ChangeInCapacity
政策扩展
aws autoscaling put-scaling-policy --policy-name aws-coe-scalein-policy --auto-scaling-group-name AWS-CoE-1-AutoScalingGroup --scaling-adjustment -1 --adjustment-type ChangeInCapacity
Cloud Watch :向AddCapacity报警
aws cloudwatch put-metric-alarm --alarm-name AddCapacity --metric-name CPUUtilization --namespace AWS/EC2 --statistic Average --period 120 --threshold 80 --comparison-operator GreaterThanOrEqualToThreshold --dimensions "Name=AutoScalingGroupName,Value=AWS-CoE-1-AutoScalingGroup" --evaluation-periods 2 --alarm-actions arn:aws:autoscaling:us-west-1:132895064974:scalingPolicy:03ff8c7b-cf7c-4d9b-970c-be7f4884415d:autoScalingGroupName/AWS-CoE-1-AutoScalingGroup:policyName/aws-coe-scaleout-policy
Cloud Watch :警报至RemoveCapacity
aws cloudwatch put-metric-alarm --alarm-name RemoveCapacity --metric-name CPUUtilization --namespace AWS/EC2 --statistic Average --period 120 --threshold 0 --comparison-operator LessThanOrEqualToThreshold --dimensions "Name=AutoScalingGroupName,Value=AWS-CoE-1-AutoScalingGroup" --evaluation-periods 2 --alarm-actions arn:aws:autoscaling:us-west-1:132895064974:scalingPolicy:6b3d9ba4-b4a9-472e-95f6-31fc0772ec33:autoScalingGroupName/AWS-CoE-1-AutoScalingGroup:policyName/aws-coe-scalein-policy
在整个启动和终止实例时,我的警报状态仍为OK
。
答案 0 :(得分:1)
当实例联机时,它必须通过ELB运行状况检查,否则将通过自动扩展终止。您的启动配置是否包含用于实例自动引导的用户数据,或启动AMI是否会自动启动Web服务?如果没有,您需要对此进行配置,以便Autoscaling将实例视为健康。