3 Answers
Here’s a link to the documentation on the topic. Read the last paragraph under the section "Simple Scaling Policies and Cooldown Periods".
"Amazon EC2 Auto Scaling does not support cooldown periods for step scaling policies. Therefore, you can’t specify a cooldown period for these policies and the default cooldown period for the group doesn’t apply."
https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-scaling-simple-step.html
Cooldown is only supported by Simple policy. Target tracking and Step policies instead support warm-up period.
The concept is a bit different. With Cooldown, you need to wait an amount of time before another autoscaling event can happen. With warm-up, you need to wait before the new instances are considered into the target metric (which implies that another autoscaling event can happen in the meantime).
Hey Lee, i had the same question and just realized this way. The following part is from AWS documentation "While scaling out, we do not consider instances that are warming up as part of the current capacity of the group. Therefore, multiple alarm breaches that fall in the range of the same step adjustment result in a single scaling activity. This ensures that we don’t add more instances than you need. " (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-scaling-simple-step.html#as-step-scaling-warmup).
So let’s say if we have a condition that Cloudwatch sends alarm if the CPU reaches 60%, the autoscaling adds 2 more instances in that case. No untill those 2 newly created hosts are under warm-up period, if we get the same alerts again(for 60% CPU), Autoscaling will ignore those alerts untill the warm-up for the newly created instances are expired so this way it prevents adding additional instances.
Looks like step scaling now allows cool down period. It might be a good to update content on this challenge video: https://acloud.guru/course/aws-certified-solutions-architect-professional/learn/a2e7b986-36cb-1a8a-7429-d105246dda1e/953f8962-ee2d-5646-ba71-e29910118644/watch
Step scaling policy : https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-step-scaling-policies.html
This small detail is a bit confusing and it doesn’t seem to be very explantory in the documentation. I understand Step and Target Tracking don’t support "cooldown", but obviously, you’d need some kind of way of preventing additional autoscaling events from occuring when an instance is first initiated. This is done via "warm-up"? Sorry, cool-down and warm-up sound so similar. Can you provide more detail regarding the difference between the two?