Een hub- en spoke-netwerk in Azure valideren met behulp van Terraform

Terraform maakt de definitie, preview en implementatie van de cloudinfrastructuur mogelijk. Met Behulp van Terraform maakt u configuratiebestanden met behulp van de HCL-syntaxis. Met de HCL-syntaxis kunt u de cloudprovider opgeven, zoals Azure, en de elementen waaruit uw cloudinfrastructuur bestaat. Nadat u uw configuratiebestanden hebt gemaakt, maakt u een uitvoeringsplan waarmee u een voorbeeld van uw infrastructuurwijzigingen kunt bekijken voordat ze worden geïmplementeerd. Zodra u de wijzigingen hebt gecontroleerd, past u het uitvoeringsplan toe om de infrastructuur te implementeren.

In dit artikel voert u de terraform-bestanden uit die in het vorige artikel in deze reeks zijn gemaakt. Het resultaat is een validatie van de connectiviteit tussen de virtuele demonetwerken.

In dit artikel leert u het volgende:

  • Het hub-VNet implementeren in hub-spoke-topologie
  • Controleren of de resources moeten worden geïmplementeerd
  • De resources maken in Azure
  • De connectiviteit tussen verschillende netwerken controleren

1. Uw omgeving configureren

  • Azure-abonnement: als u nog geen abonnement op Azure hebt, maakt u een gratis Azure-account aan voordat u begint.

2. Controleer uw configuratie

Controleer in de voorbeeldmap of alle bestanden die in deze reeks artikelen zijn gemaakt aanwezig zijn:

Bestandsnaam Artikel waarin het bestand wordt gemaakt
main.tf Een stertopologie voor hybride netwerken maken met Terraform in Azure
variables.tf Een stertopologie voor hybride netwerken maken met Terraform in Azure
on-prem.tf Een on-premises virtueel netwerk maken met Terraform in Azure
hub-vnet.tf Een virtueel hubnetwerk maken met Terraform in Azure
hub-nva.tf Een virtueel hubnetwerkapparaat maken met Terraform in Azure
spoke1.tf Een virtuele spoke-netwerken maken met Terraform in Azure
spoke2.tf Een virtuele spoke-netwerken maken met Terraform in Azure

3. Terraform initialiseren

Voer terraform init uit om de Terraform-implementatie te initialiseren. Met deze opdracht wordt de Azure-provider gedownload die is vereist voor het beheren van uw Azure-resources.

terraform init -upgrade

Belangrijkste punten:

  • Met -upgrade de parameter worden de benodigde providerinvoegtoepassingen bijgewerkt naar de nieuwste versie die voldoet aan de versiebeperkingen van de configuratie.

4. Een Terraform-uitvoeringsplan maken

Voer terraform-plan uit om een uitvoeringsplan te maken.

terraform plan -out main.tfplan

Belangrijkste punten:

  • De terraform plan opdracht maakt een uitvoeringsplan, maar voert het niet uit. In plaats daarvan wordt bepaald welke acties nodig zijn om de configuratie te maken die is opgegeven in uw configuratiebestanden. Met dit patroon kunt u controleren of het uitvoeringsplan aan uw verwachtingen voldoet voordat u wijzigingen aanbrengt in de werkelijke resources.
  • Met de optionele -out parameter kunt u een uitvoerbestand voor het plan opgeven. Door de -out parameter te gebruiken, zorgt u ervoor dat het plan dat u hebt gecontroleerd precies wordt toegepast.

5. Een Terraform-uitvoeringsplan toepassen

Terraform uitvoeren is van toepassing om het uitvoeringsplan toe te passen op uw cloudinfrastructuur.

terraform apply main.tfplan

Belangrijkste punten:

  • Bij de voorbeeldopdracht terraform apply wordt ervan uitgegaan dat u eerder hebt uitgevoerd terraform plan -out main.tfplan.
  • Als u een andere bestandsnaam voor de -out parameter hebt opgegeven, gebruikt u diezelfde bestandsnaam in de aanroep naar terraform apply.
  • Als u de parameter niet hebt gebruikt, roept terraform apply u deze -out aan zonder parameters.

6. Controleer de resultaten

In deze sectie wordt beschreven hoe u connectiviteit kunt testen vanuit de gesimuleerde on-premises omgeving met het hub-VNet.

  1. Blader naar Azure Portal.

  2. Blader in Azure Portal naar de resourcegroep onprem-vnet-rg .

  3. Selecteer op het tabblad onprem-vnet-rg de vm met de naam onprem-vm.

  4. Noteer de waarde van het openbare IP-adres .

  5. Ga terug naar de opdrachtregel en voer deze uit ssh om verbinding te maken met de gesimuleerde on-premises omgeving.

    ssh azureuser@<onprem_vm_ip_address>
    

    Belangrijkste punten:

    • Als u de gebruikersnaam in azureuser het variables.tf bestand hebt gewijzigd, moet u die waarde in de ssh opdracht invoegen.
    • Gebruik het wachtwoord dat u hebt opgegeven tijdens het uitvoeren terraform plan.
  6. Nadat u verbinding hebt gemaakt met de virtuele on-premises vm-machine, voert u de ping opdracht uit om de connectiviteit met de jumpbox-VM in het hub-VNet te testen:

    ping 10.0.0.68
    
  7. Voer de ping opdracht uit om de connectiviteit met de jumpbox-VM's in elke spoke te testen:

    ping 10.1.0.68
    ping 10.2.0.68
    
  8. Als u de ssh-sessie op de virtuele machine onprem-vm wilt afsluiten, voert u Enter exit in en drukt u op <Enter>.

7. Resources opschonen

Voer de volgende stappen uit wanneer u de resources die zijn gemaakt via Terraform niet meer nodig hebt:

  1. Voer terraform-plan uit en geef de destroy vlag op.

    terraform plan -destroy -out main.destroy.tfplan
    

    Belangrijkste punten:

    • De terraform plan opdracht maakt een uitvoeringsplan, maar voert het niet uit. In plaats daarvan wordt bepaald welke acties nodig zijn om de configuratie te maken die is opgegeven in uw configuratiebestanden. Met dit patroon kunt u controleren of het uitvoeringsplan aan uw verwachtingen voldoet voordat u wijzigingen aanbrengt in de werkelijke resources.
    • Met de optionele -out parameter kunt u een uitvoerbestand voor het plan opgeven. Door de -out parameter te gebruiken, zorgt u ervoor dat het plan dat u hebt gecontroleerd precies wordt toegepast.
  2. Terraform uitvoeren is van toepassing om het uitvoeringsplan toe te passen.

    terraform apply main.destroy.tfplan
    

Problemen met Terraform in Azure oplossen

Veelvoorkomende problemen oplossen bij het gebruik van Terraform in Azure

Volgende stappen