@@ -20,25 +20,60 @@ resource "azurerm_resource_group" "this" {
2020module "aks" {
2121 source = " ../../modules/quix-aks"
2222
23+ # Core + RG
2324 name = " quix-aks-private"
2425 location = " westeurope"
2526 resource_group_name = " rg-quix-private"
2627 create_resource_group = false
2728 kubernetes_version = " 1.32.4"
2829 sku_tier = " Standard"
2930 private_cluster_enabled = true
30-
31+ # Use existing Private DNS Zone for the AKS private API server:
32+ # - "System" lets AKS manage it automatically (default)
33+ # - "None" disables creation/association (you must manage DNS yourself)
34+ # - "/subscriptions/<sub>/resourceGroups/<rg>/providers/Microsoft.Network/privateDnsZones/privatelink.westeurope.azmk8s.io"
35+ # to reuse an existing zone
36+ private_dns_zone_id = " System"
37+
38+ # Networking (VNet/Subnet)
3139 vnet_name = " vnet-quix-private"
3240 vnet_address_space = [" 10.240.0.0/16" ]
3341 nodes_subnet_name = " Subnet-Nodes"
3442 nodes_subnet_cidr = " 10.240.0.0/22"
3543
36- nat_identity_name = " quix-private-nat-id"
44+ # Network profile
45+ network_profile = {
46+ network_plugin_mode = " overlay"
47+ service_cidr = " 172.22.0.0/16"
48+ dns_service_ip = " 172.22.0.10"
49+ pod_cidr = " 10.144.0.0/16"
50+ }
51+
52+ # NAT (names reserved even if not used with userDefinedRouting)
53+ identity_name = " quix-private-nat-id"
3754 public_ip_name = " quix-private-nat-ip"
3855 nat_gateway_name = " quix-private-nat"
3956 availability_zone = " 2"
4057
41- enable_credentials_fetch = true
58+ # Bastion
59+ create_bastion_subnet = true
60+ enable_bastion = true
61+ bastion_subnet_cidr = " 10.240.5.0/27"
62+ bastion_name = " quix-bastion"
63+ bastion_public_ip_name = " quix-bastion-ip"
64+
65+ # Jumpbox
66+ jumpbox_name = " quix-jumpbox"
67+ jumpbox_vm_size = " Standard_B2s"
68+ jumpbox_admin_username = " azureuser"
69+ jumpbox_ssh_public_key = " ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC3Zz+tHUEI7ulzE69GxtLwi9DOvROBG4aI7h3za2FAP6Ya9/GhG2zcBiKOzk3SlKavE3/5NomgGifTC/ica6rTPlpb4U5oky/2phs9AtczVVI2G+yNC43hJzVhWbqKT3qAGGCGEm2+Cpxx7spKEbZAfAcq5GxL3k9kTcpaQEv3hpVvqK3zlCziHyahUv1pxQGuX3b2hqi4idgFX3m0FaqU98DtQu/I9x95jXHrb7Wltp3sbTSKCDxGo3nk4plpzILs/OqTMSPpfxwarCXA1ZtU82hyWO4Szn2U4I+MbuNaO/dso1oNlprqJQgsQ8t+hawCdIHeZ00M/QELdnYldBjo1jM19AT1OwMcB7PP7GRTNv7YsDW10YCvX9XRPab66PIKpe5R4IG/n6TzEwUP2pb4hRJWvnPJzrHK5HEJg7G7baCEyjCtaWkL4M7dBxIGJ3sp9IfjdeztV2Llh+hYmwPefTejprER+Q/qHZTNr1wEW4BV0TQQd+jeqdIL4QkIno3IyM3IBX+uPM/WlSpi2sT+hDqiUcCRu/x21O/bVYz/UbeHIqptRDfGc5rVoAN/zc/kGsGeGuP3auyI6aQxlnU0wMDdyS8rf3SpWagOB2UFNxZSuU2gnYdtz2uWG4vF75Sqr04MFJImHIY4N7gHJrvdarg6YBaDDnmdREcqp3ooAw=="
70+
71+ # Features
72+ oidc_issuer_enabled = true
73+ workload_identity_enabled = true
74+ enable_credentials_fetch = true
75+
76+ # Node pools
4277 node_pools = {
4378 default = {
4479 name = " default"
@@ -56,32 +91,13 @@ module "aks" {
5691 }
5792 }
5893
59- network_profile = {
60- network_plugin_mode = " overlay"
61- service_cidr = " 172.22.0.0/16"
62- dns_service_ip = " 172.22.0.10"
63- pod_cidr = " 10.144.0.0/16"
64- }
65-
66- enable_bastion = true
67- bastion_subnet_cidr = " 10.240.5.0/27"
68- bastion_name = " quix-bastion"
69- bastion_public_ip_name = " quix-bastion-ip"
70-
71- jumpbox_name = " quix-jumpbox"
72- jumpbox_vm_size = " Standard_B2s"
73- jumpbox_admin_username = " azureuser"
74- jumpbox_ssh_public_key = " ssh-rsa ......"
75-
76- oidc_issuer_enabled = true
77- workload_identity_enabled = true
78-
79-
94+ # Tags
8095 tags = {
8196 environment = " demo"
8297 project = " Quix"
8398 }
8499
100+ # Dependencies
85101 depends_on = [azurerm_resource_group . this ]
86102}
87103
0 commit comments