You manage a solution in Azure that consists of a single application which runs on a virtual machine (VM). Traffic to the application has increased dramatically.
The application must not experience any downtime and scaling must be dynamically defined.
You need to define an auto-scale strategy to ensure that the VM can handle the workload.
Which three options should you recommend? Each correct answer presents a complete solution.
NOTE: Each correct selection is worth one point.
Click on the arrows to vote for the correct answer
A. B. C. D. E.CDE
The best approach to scale the application while ensuring zero downtime is by using an Azure VM Scale Set. A scale set allows you to deploy and manage multiple virtual machines as a group, which can automatically increase or decrease based on demand.
The correct answers are:
Option A, Deploy application automatic vertical scaling, is not a valid option for this scenario. Vertical scaling involves increasing the resources of a single VM, which may result in downtime during the scaling process.
Option E, Deploy a custom auto-scale implementation, is not necessary in this scenario as Azure provides built-in auto-scale features.
Here's a detailed explanation of the correct options:
C. Create a VM scale set: A VM scale set is a group of identical virtual machines that can automatically increase or decrease based on demand. By creating a scale set, you can ensure that your application can handle high traffic without experiencing downtime. Scale sets also provide load balancing capabilities, ensuring that traffic is distributed evenly across all VM instances.
B. Create a VM availability set: An availability set is a logical grouping of VMs that are placed in separate physical locations within a datacenter. By creating an availability set, you can ensure that your application remains available even if a single VM or physical hardware fails. Azure guarantees that VMs within an availability set will be placed in separate fault domains and update domains, ensuring high availability.
D. Deploy application automatic horizontal scaling: Horizontal scaling involves adding or removing VM instances to handle changes in demand. By using Azure's built-in horizontal scaling features, you can ensure that your application can handle high traffic without experiencing downtime. You can configure automatic scaling rules based on metrics such as CPU usage or network traffic.
In summary, by combining VM scale sets, availability sets, and automatic horizontal scaling, you can ensure that your application can handle high traffic while remaining highly available and without experiencing downtime.