What are Azure Landing Zones?
Azure Landing Zones are the output of a multi-subscription Azure environment that accounts for scale, security, governance, networking, and identity. They provide a foundation for migrating, modernizing, and innovating at scale.
Key Design Areas
Management Group Hierarchy
Tenant Root Group
โโโ Platform
โ โโโ Identity
โ โโโ Management
โ โโโ Connectivity
โโโ Landing Zones
โโโ Corp
โ โโโ Production
โ โโโ Non-Production
โโโ Online
โโโ Production
โโโ Non-ProductionIdentity and Access Management
- Azure AD: Central identity provider
- Privileged Identity Management: Just-in-time access
- Conditional Access: Risk-based authentication
- RBAC: Role-based access control at appropriate scope
Network Topology
Hub-Spoke Architecture
Hub VNet (Connectivity Subscription)
โโโ Azure Firewall
โโโ VPN Gateway
โโโ ExpressRoute Gateway
โโโ Bastion
Spoke VNets (Landing Zone Subscriptions)
โโโ Workload A VNet โโ Peered to Hub
โโโ Workload B VNet โโ Peered to Hub
โโโ Workload C VNet โโ Peered to HubGovernance
Azure Policy for compliance at scale:
// Policy: Require tags on resources
{
"mode": "Indexed",
"policyRule": {
"if": {
"field": "tags['CostCenter']",
"exists": "false"
},
"then": {
"effect": "deny"
}
}
}Security
- Microsoft Defender for Cloud: Security posture management
- Azure Sentinel: SIEM and SOAR
- Key Vault: Centralized secrets management
- DDoS Protection: Network layer protection
Management and Monitoring
- Log Analytics: Centralized logging
- Azure Monitor: Metrics and alerts
- Update Management: Automated patching
- Azure Automation: Runbooks for common tasks
Implementation Options
Azure Landing Zone Accelerator
Use the Enterprise-Scale reference implementation for quick deployment:
az deployment mg create \
--location eastus \
--management-group-id "Tenant Root Group" \
--template-uri "https://raw.githubusercontent.com/Azure/Enterprise-Scale/main/eslzArm/eslzArm.json"Terraform Module
Use the CAF Terraform module for infrastructure as code:
module "enterprise_scale" {
source = "Azure/caf-enterprise-scale/azurerm"
version = "~> 3.0"
root_parent_id = data.azurerm_client_config.current.tenant_id
root_id = "contoso"
root_name = "Contoso"
}Best Practices
- Start with a clear management group hierarchy
- Implement policy-driven governance early
- Use dedicated subscriptions for platform services
- Plan network address space carefully
- Establish naming and tagging conventions
Conclusion
Azure Landing Zones provide a proven architecture for enterprise-scale cloud adoption. Invest time in proper foundation design to enable faster and safer cloud migration.