1.3.4. š” First Principle: Azure Availability Zones
š” First Principle: Physically separate locations within a single geographic region, each with independent power, cooling, and networking, provide high availability and fault tolerance against data center-level failures.
Scenario: You are designing a mission-critical transaction processing application for a financial services company. This application must ensure uninterrupted service even if one datacenter within an Azure Region experiences a power or network outage.
Availability Zones are unique physical locations within an Azure Region. Each zone is made up of one or more datacenters equipped with independent power, cooling, and networking.
Key Concepts:
- Fault Isolation: Each zone is an independent datacenter, ensuring that a failure in one zone does not impact others.
- High Availability (HA): Deploying resources (e.g., Virtual Machines, databases) across multiple AZs within a Region protects applications from datacenter-level failures (power outages, network disruptions) and maintains service continuity.
- Low-Latency Connectivity: AZs within a Region are connected by high-speed, low-latency fiber-optic networks, supporting synchronous data replication between zones.
- Zone-Redundant vs. Zonal Resources:
- Zone-Redundant: Resources are automatically replicated across multiple zones by Azure (Azure SQL Database, Zone-Redundant Storage).
- Zonal: Resources are pinned to a specific zone (Virtual Machines, Managed Disks), requiring you to explicitly distribute them for redundancy.
ā ļø Common Pitfall: Assuming all Azure services are zone-redundant by default. For zonal services like VMs, you are responsible for provisioning resources across multiple AZs and configuring a load balancer to achieve high availability.
Key Trade-Offs:
- Availability vs. Cost: Deploying resources across multiple AZs increases resilience but may incur costs for inter-AZ data transfer.
Reflection Question: How does deploying resources across multiple Availability Zones, differentiating between zone-redundant and zonal resources, fundamentally provide high availability and fault tolerance against datacenter-level failures, ensuring application continuity?