This is a sample terraform code to build networking and policies on Azure through Cloud Network Controller policy model. Some of the initial config and services are configured via GUI.
Part 1 - Initial Config
- Configure First Time Setup on CNC
- Deploy ER Gateway on gateway subnet of Hub VNet (overlay-1) in Azure
- Disable VNet peering of Hub VNet on CNC
Part 2 - Deploy Hub VNet networking
- Deploy secondary VRF and CIDR for L4-L7 services in the Hub VNet (1 - hub-vnet-networking)
- Enable VNet peering of Hub VNet on CNC
Part 3 - Deploy L4-L7 Services on Hub VNet
- Deploy Hub VNet policies (2 - hub-vnet-policies) for ER and firewall mgmt access.
- Deploy 3rd party firewall on Azure within the secondary CIDR/Subnets defined in the Hub VNet.
- Tag trust and untrust firewall interfaces on Azure
- Create a logical device for the firewall with the trust & untrust tags on CNC
- Create a network load balancer and define a two-node service graph with firewall for Redirect.
Part 4 - Deploy Spoke VNets
- Deploy sample VNets and subnets (3 - spoke-vnets-networking).
- Deploy sample VNets policies (4 - spoke-vnets-policies).
Part 5 - Deploy Inter-Tenant Policies
- Deploy imported contract on Hub VNet, see comments on (2 - hub-vnet-policies).
Part 6 - Apply Service Graph
- Associate the service graph on the ER contract (onprem-to-cloud) and inter-vnet contract.