You have a single binary application that you want to run on Google Cloud Platform.
You decided to automatically scale the application based on underlying infrastructure CPU usage.
Your organizational policies require you to use virtual machines directly.
You need to ensure that the application scaling is operationally efficient and completed as quickly as possible.
What should you do?
Click on the arrows to vote for the correct answer
A. B. C. D.B.
The best solution for this scenario would be option B, which involves creating an instance template and using it in a managed instance group with autoscaling configured. Here's why:
Virtual Machines: The organizational policies require the use of virtual machines directly, ruling out option A (Google Kubernetes Engine cluster) and option D (third-party tools).
Scalability: The requirement is to automatically scale the application based on underlying infrastructure CPU usage, which can be achieved through autoscaling. Therefore, options C (scaling up and down based on time of day) is not the best approach, as it doesn't scale based on resource usage.
Efficiency and Speed: The goal is to ensure that application scaling is operationally efficient and completed as quickly as possible. Managed instance groups with autoscaling configured provide both operational efficiency and speed of scaling. Autoscaling allows the managed instance group to automatically adjust the number of instances running the application based on CPU usage, ensuring that resources are used efficiently. Additionally, the use of instance templates simplifies the creation and configuration of instances, allowing for quick scaling.
Therefore, option B (Create an instance template, and use the template in a managed instance group with autoscaling configured) is the most appropriate solution for this scenario, as it meets all of the requirements and constraints.