Een Terraform-plan gebruiken om een virtuele VMware Windows-machine te implementeren en deze te verbinden met Azure Arc
Dit artikel bevat richtlijnen voor het gebruik van het opgegeven Terraform-plan voor het implementeren van een virtuele Windows Server-, VMware vSphere-machine en het verbinden als een serverresource met Azure Arc.
Vereisten
Kloon de Azure Arc Jumpstart-opslagplaats.
git clone https://github.com/microsoft/azure_arc.git
Azure CLI installeren of bijwerken naar versie 2.7 en hoger. Gebruik de volgende opdracht om uw huidige geïnstalleerde versie te controleren.
az --version
Een VMware vCenter Server-gebruiker met machtigingen voor het implementeren van een virtuele machine vanuit een sjabloon in de vSphere-webclient.
Maak een Azure-service-principal.
Als u de virtuele VMware vSphere-machine wilt verbinden met Azure Arc, is een Azure-service-principal vereist die is toegewezen met de rol Inzender. Als u deze wilt maken, meldt u zich aan bij uw Azure-account en voert u de volgende opdracht uit. U kunt deze opdracht ook uitvoeren in Azure Cloud Shell.
az login az account set -s <Your Subscription ID> az ad sp create-for-rbac -n "<Unique SP Name>" --role contributor --scopes "/subscriptions/<Your Subscription ID>"
Voorbeeld:
az ad sp create-for-rbac -n "http://AzureArcServers" --role contributor --scopes "/subscriptions/00000000-0000-0000-0000-000000000000"
De uitvoer moet er ongeveer als volgt uitzien:
{ "appId": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX", "displayName": "http://AzureArcServers", "password": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX", "tenant": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX" }
Notitie
We raden u ten zeerste aan om de service-principal te koppelen aan een specifiek Azure-abonnement en een specifieke resourcegroep.
Een Windows Server VMware vSphere VM-sjabloon voorbereiden
Voordat u deze richtlijnen gebruikt om een Virtuele Windows Server-machine te implementeren en deze te verbinden met Azure Arc, is een VMware vSphere-sjabloon vereist. U kunt een dergelijke sjabloon eenvoudig maken met VMware vSphere 6.5 en hoger.
Het Terraform-plan heeft de remote-exec
inrichting gebruikt die gebruikmaakt van het WinRM-protocol om het vereiste Azure Arc-script te kopiëren en uit te voeren. Als u WinRM-connectiviteit met de VIRTUELE machine wilt toestaan, voert u het allow_winrm
PowerShell-script uit op uw VIRTUELE machine voordat u het converteert naar een sjabloon.
Notitie
Als u al een Windows Server VM-sjabloon hebt, moet u de handleiding nog steeds gebruiken als referentie.
Implementatie
Voordat u het Terraform-plan uitvoert, moet u de omgevingsvariabelen instellen die door het plan worden gebruikt. Deze variabelen zijn gebaseerd op de Azure-service-principal die u zojuist hebt gemaakt, uw Azure-abonnement en -tenant en uw VMware vSphere-referenties.
Haal uw Azure-abonnements-id en tenant-id op met behulp van de
az account list
opdracht.Het Terraform-plan maakt resources in zowel Microsoft Azure als VMware vSphere. Vervolgens wordt een script uitgevoerd op de virtuele machine om de Azure Arc-agent en alle benodigde artefacten te installeren. Dit script vereist bepaalde informatie over uw VMware vSphere- en Azure-omgevingen. Bewerk en werk
scripts/vars.sh
elk van de variabelen bij met de juiste waarden.TF_VAR_subscription_id
= uw Azure-abonnements-idTF_VAR_client_id
= de naam van uw Azure-service-principalTF_VAR_client_secret
= wachtwoord voor uw Azure-service-principalTF_VAR_tenant_id
= uw Azure-tenant-idTF_VAR_resourceGroup
= Naam van Azure-resourcegroepTF_VAR_location
= Azure-regioTF_VAR_vsphere_user
= gebruikersnaam van vCenter-beheerderTF_VAR_vsphere_password
= vCenter-beheerderswachtwoordTF_VAR_vsphere_server
= vCenter Server FQDN/IPTF_VAR_admin_user
= Gebruikersnaam van besturingssysteembeheerderTF_VAR_admin_password
= Beheerderswachtwoord voor het besturingssysteem
Navigeer vanuit CLI naar de
azure_arc_servers_jumpstart/vmware/winsrv/terraform
map van de gekloonde opslagplaats.Exporteer de omgevingsvariabelen die u hebt bewerkt door deze uit te voeren
scripts/vars.sh
met de bronopdracht, zoals hieronder wordt weergegeven. Terraform vereist dat deze worden ingesteld voor de juiste uitvoering van het plan. Houd er rekening mee dat dit script ook automatisch op afstand op de virtuele machine wordt uitgevoerd als onderdeel van de Terraform-implementatie.source ./scripts/vars.sh
Naast de
TF_VAR
omgevingsvariabelen die u zojuist hebt geëxporteerd, bewerkt u de Terraform-variabelen in deterraform.tfvars
omgeving die overeenkomen met uw VMware vSphere-omgeving.Voer de
terraform init
opdracht uit waarmee de Terraform AzureRM- en vSphere-providers worden gedownload.Voer de
terraform apply --auto-approve
opdracht uit en wacht tot het plan is voltooid. Zodra de Terraform-implementatie is voltooid, wordt een nieuwe Windows Server-VM actief en wordt deze geprojecteerd als een Azure Arc-serverresource in een zojuist gemaakte Azure-resourcegroep.
De implementatie verwijderen
De eenvoudigste manier is om de Azure Arc-resource te verwijderen via Azure Portal, selecteer de resource en verwijder deze. Verwijder bovendien de VMware vSphere-VM.
Als u het exemplaar handmatig verwijdert, moet u ook verwijderen
install_arc_agent.ps1
. Dit wordt gemaakt door het Terraform-plan.Als u de hele omgeving wilt afbreken, gebruikt u de
terraform destroy --auto-approve
opdracht zoals hieronder wordt weergegeven.
Feedback
https://aka.ms/ContentUserFeedback.
Binnenkort beschikbaar: In de loop van 2024 zullen we GitHub-problemen geleidelijk uitfaseren als het feedbackmechanisme voor inhoud en deze vervangen door een nieuw feedbacksysteem. Zie voor meer informatie:Feedback verzenden en weergeven voor