Een hybride hub en spoke-netwerktopologie maken in Azure met behulp van Terraform
In deze reeks artikelen ziet u hoe u Terraform kunt gebruiken om een hub-en-spoke-netwerktopologie te implementeren inAzure.
Een hub-and-spoke-topologie is een manier om workloads te isoleren en tegelijkertijd algemene services te delen. Deze services omvatten identiteit en beveiliging. De hub is een virtueel netwerk (VNet) dat fungeert als een centraal verbindingspunt naar een on-premises netwerk. De punten zijn VNets die zijn gekoppeld aan de hub. Gedeelde services worden geïmplementeerd in de hub, terwijl afzonderlijke workloads worden geïmplementeerd in spoke-netwerken.
In dit artikel leert u het volgende:
- Resources voor hub-en-spoke-referentiearchitectuur voor hybride netwerken in de lay-out zetten
- Resources voor hubnetwerkapparaat maken
- Hubnetwerk maken in Azure om te fungeren als gemeenschappelijk punt voor alle resources
- Afzonderlijke workloads als spoke-VNets maken in Azure
- Gateways en verbindingen tussen on-premises netwerken en Azure-netwerken tot stand brengen
- VNet-peerings naar spoke-netwerken maken
1. Uw omgeving configureren
- Azure-abonnement: Als u nog geen abonnement op Azure hebt, maak dan een gratis account aan voordat u begint.
Terraform configureren: Als u dit nog niet hebt gedaan, configureert u Terraform met een van de volgende opties:
2. Architectuur van hub-en-spoke-topologie begrijpen
In de hub en spoke-topologie is de hub een VNet. Het VNet fungeert als een centraal punt van connectiviteit met uw on-premises netwerk. De spokes of spaken zijn VNets die via peering zijn verbonden met de hub, en die kunnen worden gebruikt om workloads te isoleren. Verkeer stroomt tussen het on-premises datacentrum en de hub via een ExpressRoute- of VPN-gateway-verbinding. In de volgende afbeelding worden de onderdelen in een hub en spoke-topologie gedemonstreerd:

Voordelen van de hub en spoke-topologie
Een hub-and-spoke-netwerktopologie is een manier om workloads te isoleren en tegelijkertijd algemene services te delen. Deze services omvatten identiteit en beveiliging. De hub is een VNet dat fungeert als een centraal verbindingspunt naar een on-premises netwerk. De punten zijn VNets die zijn gekoppeld aan de hub. Gedeelde services worden geïmplementeerd in de hub, terwijl afzonderlijke workloads worden geïmplementeerd in spoke-netwerken. Hier zijn enkele voordelen van de hub en spoke-netwerktopologie:
- Kostenbesparingen door services te centraliseren op één locatie die kan worden gedeeld door meerdere workloads. Deze workloads omvatten virtuele netwerkapparaten en DNS-servers.
- Limieten in abonnementen overwinnen door peering van VNets uit verschillende abonnementen naar de centrale hub.
- Scheiding van problemen tussen centrale IT (SecOps, InfraOps) en workloads (DevOps).
Typische toepassingen voor de hub en spoke-architectuur
Enkele van de typische toepassingen voor een hub en spoke-architectuur zijn:
- Veel klanten hebben workloads die in verschillende omgevingen zijn geïmplementeerd. Deze omgevingen omvatten ontwikkeling, testen en productie. Vaak moeten deze workloads services delen, zoals DNS, IDS, NTP of AD DS. Deze gedeelde services kunnen worden geplaatst in het hub-VNet. Op die manier wordt elke omgeving op een spoke geïmplementeerd om isolatie te behouden.
- Workloads waarvoor geen verbinding met elkaar is vereist, maar waarvoor toegang tot gedeelde services is vereist.
- Ondernemingen die centrale controle over beveiligingsaspecten vereisen.
- Ondernemingen die gescheiden beheer nodig hebben voor de workloads in elke spoke.
3. Preview van de demoonderdelen
Terwijl u elk artikel in deze reeks doorwerkt, worden verschillende onderdelen gedefinieerd in verschillende Terraform-scripts. De demoarchitectuur die is gemaakt en geïmplementeerd, bestaat uit de volgende onderdelen:
On-premises netwerk. Een particulier lokaal netwerk dat wordt uitgevoerd met een organisatie. Voor hub en spoke-referentiearchitectuur wordt een VNet in Azure gebruikt om een on-premises netwerk te simuleren.
VPN-apparaat. Een VPN-apparaat of -service biedt externe connectiviteit met het on-premises netwerk. Het VPN-apparaat kan een hardwareapparaat of een softwareoplossing zijn.
Hub VNet. De hub is het centrale punt van connectiviteit met uw on-premises netwerk en een locatie voor het hosten van services. Deze services kunnen worden gebruikt door de verschillende workloads die worden gehost in de spoke-VNets.
Gatewaysubnet. De VNet-gateways worden in hetzelfde subnet gehouden.
Knooppunt VNets. Knooppunten kunnen worden gebruikt om werkbelastingen te isoleren in hun eigen VNets, afzonderlijk beheerd vanaf andere knooppunten. Elke workload kan meerdere lagen bevatten, met meerdere subnetten die zijn verbonden via Azure-load balancers.
VNet-peering. Twee VNets kunnen worden verbonden met behulp van een peeringverbinding. Peeringverbindingen zijn niet-transitieve verbindingen met lage latentie tussen VNets. Na peering wisselen de VNets verkeer uit met behulp van de Azure-backbone, zonder dat er een router nodig is. In een hub en spoke-netwerktopologie wordt VNet-peering gebruikt om de hub te verbinden met elke spoke. U kunt VNets in dezelfde regio of in verschillende regio's peeren.
4. De Terraform-code implementeren
Maak een map met de voorbeeldcode voor de hele reeks met meerdere artikelen.
Maak een bestand met de
main.tfnaam en voeg de volgende code in:terraform { required_version = ">=0.12" required_providers { azurerm = { source = "hashicorp/azurerm" version = "~>2.0" } } } provider "azurerm" { features {} }Maak een bestand met de
variables.tfnaam dat de projectvariabelen bevat en voeg de volgende code in:variable "location" { description = "Location of the network" default = "eastus" } variable "username" { description = "Username for Virtual Machines" default = "azureuser" } variable "password" { description = "Password for Virtual Machines" } variable "vmsize" { description = "Size of the VMs" default = "Standard_DS1_v2" }Belangrijkste punten:
- In dit artikel wordt een wachtwoord gebruikt dat u
terraform planoproept. In een echte app kunt u overwegen een sleutelpaar met een openbare/persoonlijke SSH-sleutel te gebruiken. - Zie Voor meer informatie over SSH-sleutels en Azure SSH-sleutels gebruiken met Windows in Azure.
- In dit artikel wordt een wachtwoord gebruikt dat u
Problemen met Terraform in Azure oplossen
Veelvoorkomende problemen bij het gebruik van Terraform in Azure oplossen