This module creates a hub and spoke model of subscription management.
This module will create:
- Network Resource Group
- Virtual Network
- App Subnet
- Data Subnet
- Web Subnet
- Course Grain NSG
- DNS Resource Group
- DNS Zone for the Subscription
- DNS NS record in the hub azure dns zone
If the Spoke flag is true, this module will create:
- DNS Parent Zone for the subscription (that will be used as a parent domain for all the subscriptions, including the hub)
- Peering to the Hub
- Peering from the Hub
If the Spoke flag is False (i.e. is a hub), this module will create:
- A Parent DNS Zone for the tenant
For an example, see /example/Hub and Spoke/
This module makes use of Provider Alias's
If the module is a hub, please provide the same alias (the hub) for both like below:
providers = {
"azurerm.base" = "azurerm.hub"
"azurerm.parent" = "azurerm.hub"
}
if the module is a spoke, provide an alias
providers = {
"azurerm.base" = "azurerm.hub"
"azurerm.parent" = "azurerm.spoke"
}