You have a content management system running on an Amazon EC2 instance that is approaching 100% CPU
utilization. Which option will reduce load on the Amazon EC2 instance?
A.
Create a load balancer, and register the Amazon EC2 instance with it
B.
Create a CloudFront distribution, and configure the Amazon EC2 instance as the origin
C.
Create an Auto Scaling group from the instance using the CreateAutoScalingGroup action
D.
Create a launch configuration from the instance using the CreateLaunchConfiguration action
Explanation:
You can create an ASG from instance ID
http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_CreateAutoScalingGroup.html
Why not B?
Sorry, I think is C
CloudWatch can be used to watch the level of CPU utilization to understand when the available CPU bursting has been used within a given time period. If your instance’s CPU utilization is approaching 100% then you may want to scale (using Auto Scaling) to additional Micro instances or to a larger instance type. In fact, at this low a price you could run CloudWatch configured for Auto Scaling with two Micro instances behind an Elastic Load Balancer for just under the price of one CloudWatch-monitored Standard Small instance.
Key phase in question, “content management system.” CloudFront is a global Content Delivery Network that is optimized to work with EC2. Reduces the CPU util on the EC2 instance by getting the necessary data from it, caching it at edge locations, and then distributing it to the users. Answer is B.
Cost is not mentioned anywhere.
Question is: Which option will reduce load on the Amazon EC2 instance?
Yes scaling will reduce load on the specific EC2 instance but since it mentions CMS system, we assume text, images so a cloudfront solution is a good solution for images.
Also cloudfront would not “touch” the existing EC2 setup and reduce the load immediately.
I would go with B.
What do you guys think?
Both autoscaling and caching at the edge could help the CPU load of the server so this question is a bit too vague to have a single right answer.
If I were their consultant, I would first tell them to take advantage of caching static content at the edge and do SSL offloading. If that didn’t reduce the CPU, I would auto scale it.
The fact that no load balance is included with C, I believe that they are leading you to CloudFront.
B.
If it is a CMS with mostly reads, you can go with B.
As ideally you would need “ELB with Auto Scaling” which none of the other options provide.