DevOps Right Now: Cutting Through Complexity in Uncertain Times
Learn more about the evolution of DevOps and microservices, and how Mission, AWS, and New Relic’s Observability platform can help.
If you've ever received an "insufficient capacity" error when trying to launch an application, you know the productivity losses and frustration not having enough instances can cause. But customers who use your applications to make purchases and employees who need your mission-critical software don’t have time to wait around for more of an instance type to become available. You can prevent this problem from recurring with the help of AWS’ Auto Scaling tools.
AWS Auto Scaling uses automation to instantly scale resources to fit demand and server load. By using AWS Auto Scaling’s tools, you can be confident that you’ll always have enough instances to handle application load, no matter how greatly or suddenly traffic may spike. And, not only does it regulate capacity to maintain constant performance, it does so for the lowest possible price.
If AWS Auto Scaling sounds like a powerful option for controlling costs and automating resource and service scaling, it is. But if you’re new to the tool you should work with an experienced AWS partner. They can explain your many auto-scaling options, and develop and implement an auto-scaling plan optimized for your business’s needs.
AWS Auto Scaling offers a variety of features and benefits to ensure your applications always have the right resources when they’re needed most:
Not all AWS Auto Scaling options are created equal, and it’s important to carefully consider the strategy you go with. Have you fully identified all of your applications' resource needs? Do you know which constraints and metrics are critical for your success with auto-scaling? If you’re having any trouble answering these and other questions, consult with an AWS partner, who can help you choose which of these top strategies is best for your firm.
The first auto-scaling strategy is to simply configure the auto-scaling to maintain a set number of instances indefinitely. Amazon EC2 Auto Scaling routinely scans instances to determine their health. If it detects a bad instance, it will end it and launch a replacement one. This gives you a predetermined number of instances, running at all times.
You can always go back to manual scaling, which is a primary way of scaling resources. Amazon EC2 Auto Scaling can manage instance creation and termination to upkeep a stable capacity, which is a value you’ve specified. This allows you to maintain a maximum, minimum, or other desired capacity of your choice for your auto-scaling group.
Scaling events can be set to occur automatically at a certain date and time. This is especially helpful in situations where you can accurately forecast demand. What’s different about this strategy is that following a schedule predicts the number of available resources at a given time in advance rather than using automation to determine appropriate mounts from moment to moment.
While AWS Auto Scaling can perform all of the more traditional scaling methods mentioned in strategies one through three, scaling along with demand is where AWS’s unique capabilities start to shine. The ability to shift seamlessly between the more traditional strategies and those discussed in numbers four and five is another nice feature of AWS Auto Scaling in and of itself.
Demand-based scaling is highly responsive to fluctuating traffic and helps accommodate traffic spikes you cannot predict. That makes it a good all-around, “cover all your bases” approach. And it has a few different settings, too. For example, you can set CPU utilization to remain at 50 percent should application load shift. It’s how AWS responds to traffic demand so you don’t have to.
Finally, you can always combine AWS Auto Scaling with Amazon EC2 Auto Scaling to scale resources throughout many applications with predictive scaling. This includes three sub-options:
There are optimal times for using these different auto-scaling strategies. Basically, they boil down to whether you’re using dynamic or predictive scaling. While predictive scaling predicts future traffic based on historical trends, dynamic scaling uses an algorithm for automated resource provisioning. If you’re trying to decide which to use or when, start by using metrics to determine traffic and usage patterns.
First, determine the consistency of usage patterns, as well as the frequency and intensity of traffic spikes. Then define your priorities; do you want to make sure customers never experience slow response times, or can you afford a small level of slowness while keeping costs to a minimum? These factors should be taken into consideration when determining the minimums, maximums, and thresholds for scaling. Now you're ready to determine when to use each type.
If your applications experience traffic fluctuations on a routine basis, ensure you always have enough instances to support them using AWS Auto Scaling. Not only does it provide the resources you need when you need them most, but it does so for the lowest cost available.
VBO Tickets turned to Mission when they needed help. The online event ticketing software company was expanding quickly and did not have the load-balancing capabilities needed to handle traffic spikes. Mission delivered a high-functioning cloud hosting environment that scales as traffic dictates. Now, VBO Tickets is ready for any event that causes a surge in traffic.
Mission is an experienced AWS Premier Consulting Partner that can help you create an auto-scaling strategy that’s optimized to meet your requirements precisely. If you’re unsure of how to implement AWS auto scaling or specific auto-scaling strategies to use, consult the experts at MIssion.
Thrive in the cloud, provide rapid detection, identification, and resolution of issues leading to the agility requested by businesses today.