Time required: 2 Hours
For the scenario for this lab we are tasked with implementing a cost effective and self-healing architecture for a CPU-intensive application. We need to be able to add or subtract an instance based on CPU usage. You also want to be able to spin up new instances as quickly as possible. So, how are we going to go about this?
First we are going to pre-bake an AMI. We will install software on an EC2 instance, create an AMI out of it, and use that AMI to launch into our launch config, which will save time when spinning up instances and check off the “quickly as possible” criteria.
Once we have done that we will create a launch configuration based off our custom AMI and create an auto scaling group.
Finally, we will create an Auto Scaling group policy with a CloudWatch alarm to scale in and scale out, keeping this application cost-effective by eliminating unnecessary resources.