1+ #! /bin/bash
2+ 
3+ #  TODO: check for az cli to be installed in local
4+ #  wait for AKS VNet to be in the state created
5+ 
6+ REPO_ROOT=$( dirname " ${BASH_SOURCE[0]} " ) 
7+ #  shellcheck source=hack/common-vars.sh
8+ source  " ${REPO_ROOT} /hack/common-vars.sh" 
9+ 
10+ source  " ${REPO_ROOT} /aks-mgmt-vars.env" 
11+ 
12+ echo  \" --------Peering VNETs--------\" 
13+ az network vnet wait  --resource-group ${AKS_RESOURCE_GROUP}  --name ${AKS_MGMT_VNET_NAME}  --created --timeout 180
14+ export  MGMT_VNET_ID=$( az network vnet show --resource-group ${AKS_RESOURCE_GROUP}  --name ${AKS_MGMT_VNET_NAME}  --query id --output tsv) 
15+ echo  \"  1/8 ${AKS_MGMT_VNET_NAME}  found \" 
16+ 
17+ #  wait for workload VNet to be created
18+ az network vnet wait  --resource-group ${CLUSTER_NAME}  --name ${CLUSTER_NAME} -vnet --created --timeout 180
19+ export  WORKLOAD_VNET_ID=$( az network vnet show --resource-group ${CLUSTER_NAME}  --name ${CLUSTER_NAME} -vnet --query id --output tsv) 
20+ echo  \"  2/8 ${CLUSTER_NAME} -vnet found \" 
21+ 
22+ #  peer mgmt vnet
23+ az network vnet peering create --name mgmt-to-${CLUSTER_NAME}  --resource-group ${AKS_RESOURCE_GROUP}  --vnet-name ${AKS_MGMT_VNET_NAME}  --remote-vnet \" ${WORKLOAD_VNET_ID} \"  --allow-vnet-access true  --allow-forwarded-traffic true  --only-show-errors --output none
24+ az network vnet peering wait  --name mgmt-to-${CLUSTER_NAME}  --resource-group ${AKS_RESOURCE_GROUP}  --vnet-name ${AKS_MGMT_VNET_NAME}  --created --timeout 300 --only-show-errors --output none
25+ echo  \"  3/8 mgmt-to-${CLUSTER_NAME}  peering created in  ${AKS_MGMT_VNET_NAME} \" 
26+ 
27+ #  peer workload vnet
28+ az network vnet peering create --name ${CLUSTER_NAME} -to-mgmt --resource-group ${CLUSTER_NAME}  --vnet-name ${CLUSTER_NAME} -vnet --remote-vnet \" ${MGMT_VNET_ID} \"  --allow-vnet-access true  --allow-forwarded-traffic true  --only-show-errors --output none
29+ az network vnet peering wait  --name ${CLUSTER_NAME} -to-mgmt --resource-group ${CLUSTER_NAME}  --vnet-name ${CLUSTER_NAME} -vnet --created --timeout 300 --only-show-errors --output none
30+ echo  \"  4/8 ${CLUSTER_NAME} -to-mgmt peering created in  ${CLUSTER_NAME} -vnet\" 
31+ 
32+ #  create private DNS zone
33+ az network private-dns zone create --resource-group ${CLUSTER_NAME}  --name ${AZURE_LOCATION} .cloudapp.azure.com --only-show-errors --output none
34+ az network private-dns zone wait  --resource-group ${CLUSTER_NAME}  --name ${AZURE_LOCATION} .cloudapp.azure.com --created --timeout 300 --only-show-errors --output none
35+ echo  \"  5/8 ${AZURE_LOCATION} .cloudapp.azure.com private DNS zone created in  ${CLUSTER_NAME} \" 
36+ 
37+ #  link private DNS Zone to workload vnet
38+ az network private-dns link vnet create --resource-group ${CLUSTER_NAME}  --zone-name ${AZURE_LOCATION} .cloudapp.azure.com --name ${CLUSTER_NAME} -to-mgmt --virtual-network \" ${WORKLOAD_VNET_ID} \"  --registration-enabled false  --only-show-errors --output none
39+ az network private-dns link vnet wait  --resource-group ${CLUSTER_NAME}  --zone-name ${AZURE_LOCATION} .cloudapp.azure.com --name ${CLUSTER_NAME} -to-mgmt --created --timeout 300 --only-show-errors --output none
40+ echo  \"  6/8 workload cluster vnet ${CLUSTER_NAME} -vnet linked with private DNS zone\" 
41+ 
42+ #  link private DNS Zone to mgmt vnet
43+ az network private-dns link vnet create --resource-group ${CLUSTER_NAME}  --zone-name ${AZURE_LOCATION} .cloudapp.azure.com --name mgmt-to-${CLUSTER_NAME}  --virtual-network \" ${MGMT_VNET_ID} \"  --registration-enabled false  --only-show-errors --output none
44+ az network private-dns link vnet wait  --resource-group ${CLUSTER_NAME}  --zone-name ${AZURE_LOCATION} .cloudapp.azure.com --name mgmt-to-${CLUSTER_NAME}  --created --timeout 300 --only-show-errors --output none
45+ echo  \"  7/8 management cluster vnet ${AKS_MGMT_VNET_NAME}  linked with private DNS zone\" 
46+ 
47+ #  create private DNS zone record
48+ #  TODO: 10.0.0.100 should be customizable
49+ az network private-dns record-set a add-record --resource-group ${CLUSTER_NAME}  --zone-name ${AZURE_LOCATION} .cloudapp.azure.com --record-set-name ${CLUSTER_NAME} -${APISERVER_LB_DNS_SUFFIX}  --ipv4-address 10.0.0.100 --only-show-errors --output none
50+ echo  \"  8/8 ${CLUSTER_NAME} -${APISERVER_LB_DNS_SUFFIX}  private DNS zone record created\n\" 
0 commit comments