Jump into concepts and practice - no test required
or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What is the main goal of high availability design patterns?
To ensure that applications and services remain accessible and operational with minimal downtime, even during failures or maintenance.
Click to reveal answer
intermediate
Explain the Active-Active pattern in high availability.
Active-Active means running multiple instances of a service simultaneously in different locations. Traffic is distributed among them, so if one fails, others keep working without interruption.
Click to reveal answer
intermediate
What is the difference between Active-Active and Active-Passive patterns?
Active-Active runs all instances at the same time sharing the load. Active-Passive runs one active instance and one or more standby instances that only start if the active one fails.
Click to reveal answer
beginner
How does Azure Availability Zones help with high availability?
Availability Zones are separate physical locations within an Azure region. Deploying resources across zones protects against data center failures, improving uptime.
Click to reveal answer
beginner
What role does load balancing play in high availability?
Load balancers distribute user traffic across multiple healthy instances, preventing overload and ensuring continuous service if some instances fail.
Click to reveal answer
Which pattern runs multiple service instances simultaneously to share load and improve availability?
AActive-Active
BActive-Passive
CSingle Instance
DCold Standby
✗ Incorrect
Active-Active runs multiple instances at the same time to share load and provide high availability.
What Azure feature provides physically separate locations within a region for fault tolerance?
AVirtual Networks
BResource Groups
CAvailability Zones
DAzure Functions
✗ Incorrect
Availability Zones are separate physical locations in an Azure region to improve fault tolerance.
In an Active-Passive pattern, what happens when the active instance fails?
ATraffic stops until manual restart
BAll instances shut down
CLoad balancer ignores the failure
DThe passive instance becomes active
✗ Incorrect
The passive instance takes over to keep the service running.
Why is load balancing important for high availability?
AIt distributes traffic to healthy instances
BIt stores backup data
CIt encrypts network traffic
DIt creates virtual machines
✗ Incorrect
Load balancers distribute traffic to prevent overload and handle failures.
Which of these is NOT a high availability design pattern?
AActive-Active
BSingle Instance
CActive-Passive
DMulti-Region Deployment
✗ Incorrect
Single Instance does not provide high availability because it has no redundancy.
Describe how you would design a highly available web application using Azure services.
Think about spreading resources and balancing traffic.
You got /4 concepts.
Explain the benefits and trade-offs between Active-Active and Active-Passive high availability patterns.
Consider cost, complexity, and downtime.
You got /4 concepts.
Practice
(1/5)
1. Which Azure service is primarily used to distribute incoming traffic across multiple virtual machines to ensure high availability?
easy
A. Azure Functions
B. Azure Blob Storage
C. Azure Load Balancer
D. Azure Cosmos DB
Solution
Step 1: Understand the role of Azure Load Balancer
Azure Load Balancer distributes incoming network traffic across multiple VMs to prevent any single VM from becoming a bottleneck.
Step 2: Compare with other services
Azure Blob Storage stores data, Azure Functions run code, and Cosmos DB is a database service; none distribute traffic.
Final Answer:
Azure Load Balancer -> Option C
Quick Check:
Traffic distribution = Azure Load Balancer [OK]
Hint: Load Balancer spreads traffic to VMs for uptime [OK]
Common Mistakes:
Confusing storage or compute services with traffic distribution
Choosing Azure Functions for load balancing
Selecting database services for availability patterns
2. Which of the following is the correct syntax to create an Azure VM Scale Set using Azure CLI for high availability?
easy
A. az vm create --name MyScaleSet --resource-group MyResourceGroup --image UbuntuLTS --instance-count 3
B. az vm create --name MyScaleSet --resource-group MyResourceGroup --image UbuntuLTS --count 3
C. az vmss deploy --name MyScaleSet --group MyResourceGroup --image UbuntuLTS --instances 3
D. az vmss create --name MyScaleSet --resource-group MyResourceGroup --image UbuntuLTS --instance-count 3
Solution
Step 1: Identify the correct Azure CLI command for VM Scale Set creation
The command to create a VM Scale Set is az vmss create, not az vm create.
Step 2: Check the parameters
Parameters like --name, --resource-group, --image, and --instance-count are correctly used in az vmss create --name MyScaleSet --resource-group MyResourceGroup --image UbuntuLTS --instance-count 3.
Final Answer:
az vmss create --name MyScaleSet --resource-group MyResourceGroup --image UbuntuLTS --instance-count 3 -> Option D
Quick Check:
VM Scale Set creation uses az vmss create [OK]
Hint: Use 'az vmss create' for VM Scale Sets [OK]
Common Mistakes:
Using 'az vm create' instead of 'az vmss create'
Incorrect parameter names like --count instead of --instance-count
Mixing resource group parameter names
3. Consider this Azure Load Balancer configuration snippet:
What will happen if one VM in the backend pool becomes unhealthy?
medium
A. Traffic will automatically stop going to the unhealthy VM
B. Traffic will continue to be sent to the unhealthy VM
C. Load Balancer will restart the unhealthy VM
D. Load Balancer will redirect traffic to a different port
Solution
Step 1: Understand Azure Load Balancer health probe behavior
Azure Load Balancer requires health probes configured to detect unhealthy VMs and stop sending traffic to them. This snippet does not show health probes configured, but in practice, health probes are necessary for proper load balancing.
Step 2: Analyze the effect of missing health probes
Without health probes, the Load Balancer cannot detect unhealthy VMs, so it continues sending traffic to all VMs in the backend pool. However, best practice is to configure health probes to avoid this.
Final Answer:
Traffic will automatically stop going to the unhealthy VM -> Option A
Quick Check:
Health probes detect unhealthy VMs and stop traffic [OK]
Hint: Configure health probes to avoid sending traffic to bad VMs [OK]
Common Mistakes:
Assuming Load Balancer auto-detects unhealthy VMs without probes
Thinking Load Balancer restarts VMs
Confusing port redirection with load balancing
4. You have configured an Active-Passive high availability setup using Azure Traffic Manager. However, during failover, users experience downtime. What is the most likely cause?
medium
A. Traffic Manager is set to Performance routing with multiple active endpoints
B. Traffic Manager is set to Priority routing but health probes are misconfigured
C. Azure Load Balancer is not configured with a public IP
D. VM Scale Set has only one instance
Solution
Step 1: Understand Active-Passive with Traffic Manager Priority routing
Priority routing sends traffic to the primary endpoint unless it is unhealthy, then fails over to secondary.
Step 2: Identify impact of misconfigured health probes
If health probes are misconfigured, Traffic Manager cannot detect endpoint health and will not failover properly, causing downtime.
Final Answer:
Traffic Manager is set to Priority routing but health probes are misconfigured -> Option B
Quick Check:
Priority routing + bad probes = failover fails [OK]
Hint: Check health probes when failover fails in Priority routing [OK]
Common Mistakes:
Confusing routing methods in Traffic Manager
Blaming Load Balancer or VM Scale Set for Traffic Manager failover
Ignoring health probe configuration
5. You want to design a geo-redundant high availability solution for a web app in Azure that must remain available even if an entire Azure region fails. Which combination of Azure services and design patterns best achieves this?
hard
A. Deploy the app in two regions with Azure Traffic Manager using Performance routing and Azure SQL Geo-Replication
B. Deploy the app in one region with Azure Load Balancer and VM Scale Sets, and use Azure Backup for disaster recovery
C. Deploy the app in two regions with Azure Traffic Manager using Priority routing and VM Scale Sets in each region
D. Deploy the app in one region with Azure Application Gateway and use Azure Blob Storage for static content
Solution
Step 1: Understand geo-redundancy requirements
To survive a full region failure, the app must be deployed in multiple regions with traffic routed between them.
Step 2: Evaluate options for traffic routing and data replication
Performance routing in Traffic Manager directs users to the closest healthy region. Azure SQL Geo-Replication ensures database availability across regions.
Step 3: Compare with other options
Priority routing is for Active-Passive, not best for geo-load balancing. Single region deployments cannot survive region failure. Application Gateway is regional and does not provide geo-failover.
Final Answer:
Deploy the app in two regions with Azure Traffic Manager using Performance routing and Azure SQL Geo-Replication -> Option A