- Newest
- Most votes
- Most comments
Hello.
target tracking policy
Target tracking policy is used when you want to increase or decrease the number of instances to maintain the metrics set as thresholds.
For example, it is effective when you want to maintain the CPU usage rate at 50%.
https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-scaling-target-tracking.html
step policy or simple scaling
This is useful when setting the threshold in stages and adding or decreasing a different number of instances at each stage.
For example, if the CPU usage exceeds 60%, you can increase the number to 3, or if the CPU usage exceeds 70%, you can add 4.
https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-scaling-simple-step.html
+1 to Riku_Kobayashi's answer. A couple more points
- Target tracking should usually be the first thing you try. Its essentially a managed scaling policy, and so is significantly easier to configure correctly. Just make sure the scaling metric has an inversly proportional relationship to the number of instances in your ASG. For example, CPUUtilization is good, because the average CPU will roughly halve if the number of instances doubles. RequestCount is bad, because it doesn't change based on number of instances. Full list of considerations here
- Simple Scaling is very, well, simple. In 99.9% of cases, you shouldn't use it. Generally, if target tracking doesn't work for you, you should use Step Scaling instead
- In addition to these 3 types of Reactive/Dynamic scaling policies, there is also Predictive Scaling. You can use this in addition to one of the above to proactively scale out more capacity ahead of an anticipated spike if your application has predictable daily/weekly usage patterns.
Thanks for your answer. It is so clear.
Relevant content
- asked 4 months ago
- asked 2 months ago
- AWS OFFICIALUpdated 8 months ago
- AWS OFFICIALUpdated 8 months ago
- AWS OFFICIALUpdated 6 months ago
- AWS OFFICIALUpdated 25 days ago
Your answer is very useful for me. Thanks a lot.