What is auto scaling?
The ability for a cluster of computing nodes supporting an application to grow/shrink based on metrics that represent the application workload. Auto-scaling is a way to automatically scale up or down the number of compute resources that are being allocated to your application based on its needs at any given time. Cloud computing makes is easier to scale automatically.
Benefits of auto scaling
- Better fault tolerance. Auto Scaling can detect when an instance is unhealthy, terminate it, and launch an instance to replace it. You can also often configure auto scaling to use multiple Availability Zones. If one Availability Zone becomes unavailable, auto scaling can launch instances in another one to compensate.
- Better availability. Auto scaling helps ensure that an application always has the right amount of capacity to handle the current traffic demand. Auto scaling enables you to take advantage of the safety and reliability of geographic redundancy by spanning auto scaling groups across multiple Availability Zones within a Region. When one Availability Zone becomes unhealthy or unavailable, Auto Scaling launches new instances in an unaffected Availability Zone. When the unhealthy Availability Zone returns to a healthy state, Auto Scaling automatically redistributes the application instances evenly across all of the designated Availability Zones.
- Better cost management. Auto scaling can dynamically increase and decrease capacity as needed. Because you pay for the compute instances you use, you save money by launching instances when they are needed and terminating them when they aren’t. Meet workload demands without keeping (and paying for) underutilized capacity.
- Team focus. IT team can stop worrying about scaling the environment up and down. Automating that process allows techs to focus on other business priorities.
- Better consistency. You can more easily offer an optimal user experience at all times regardless of the volume of traffic or amount of resources used.
- Manage variable usage. When you launch promos that bring in a flood of users, you can auto scale resources to keep up with increased resource demands. When CPU load and bandwidth volume vary significantly for a web application, you need the resources to meet the peak levels of usage, but don’t have to pay for those resources unless needed. Some sites have consistent resource usage during the weekdays, but website traffic might spike over the weekend.