Prerequisites¶
Tools¶
| Tool | Version | Purpose |
|---|---|---|
| Azure CLI | >= 2.60 | Azure resource management |
| Terraform | >= 1.5 | Infrastructure as Code |
| kubectl | >= 1.30 | Kubernetes CLI |
| Python 3 | >= 3.8 | Script patching (for KNative manifest fixes) |
Azure¶
- An Azure subscription with permissions to create:
- Resource Groups
- Virtual Networks
- AKS clusters
- Event Hubs namespaces
Corporate Subscriptions
On corporate subscriptions, you may not have permission to:
- Register Resource Providers (handled by
resource_provider_registrations = "none"in Terraform) - Create Role Assignments (we don't need them with CNI overlay mode)
The Terraform config accounts for both of these limitations.
Azure Authentication¶
# Login to Azure
az login
# Verify your subscription
az account show
# Get your subscription ID (you'll need it for terraform.tfvars)
az account show --query id -o tsv
Resource Providers¶
The following Azure Resource Providers are required and will be auto-registered by Terraform:
Microsoft.ContainerService(AKS)Microsoft.Network(VNet)Microsoft.EventHub(Event Hubs)Microsoft.Compute(VMs)Microsoft.Storage(Storage)Microsoft.ManagedIdentity(Managed Identity)Microsoft.Authorization(RBAC)Microsoft.OperationalInsights(Monitoring)
If auto-registration fails (409 conflicts on corporate subscriptions), register manually: