Een lokaal Windows Server-exemplaar implementeren dat wordt gehost door Vagrant en deze verbinden met Azure Arc
Het volgende artikel bevat richtlijnen voor het implementeren van een lokale virtuele Windows 10-machine met behulp van Vagrant 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
Vagrant is afhankelijk van een onderliggende hypervisor. Voor deze handleiding gebruiken we Oracle VM VirtualBox.
Installeer VirtualBox.
- Als u een macOS-gebruiker bent, voert u de opdracht uit
brew cask install virtualbox
- Als u een Windows-gebruiker bent, kunt u het Chocolatey-pakket gebruiken
- Als u een Linux-gebruiker bent, vindt u alle installatiemethoden voor pakketten in VirtualBox downloaden voor Linux-hosts.
- Als u een macOS-gebruiker bent, voert u de opdracht uit
-
- Als u een macOS-gebruiker bent, voert u de opdracht uit
brew cask install vagrant
- Als u een Windows-gebruiker bent, kunt u het Chocolatey-pakket gebruiken
- Als u een Linux-gebruiker bent, gaat u naar de Vagrant-downloadpagina.
- Als u een macOS-gebruiker bent, voert u de opdracht uit
Maak een Azure-service-principal.
Als u de virtuele machine van Vagrant 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.
Het vagrantfile voert een script uit op het VM-besturingssysteem om alle benodigde artefacten te installeren en omgevingsvariabelen te injecteren. Bewerk het
scripts/vars.ps1
PowerShell-script zodat dit overeenkomt met de Azure-service-principal die u hebt gemaakt.subscriptionId
= uw Azure-abonnements-idappId
= de naam van uw Azure-service-principalpassword
= wachtwoord voor uw Azure-service-principaltenantId
= uw Azure-tenant-idresourceGroup
= Naam van Azure-resourcegroeplocation
= Azure-regio
Implementatie
Net als bij elke Vagrant-implementatie is een vagrantfile en een Vagrant-vak nodig. Op hoog niveau zal de implementatie het volgende doen:
- Download het windows 10-afbeeldingsbestand Vagrant-vak
- Het Azure Arc-installatiescript uitvoeren
Nadat u het script hebt bewerkt zodat het scripts/vars.ps1
overeenkomt met uw omgeving, voert u vagrant up
deze uit vanuit de Vagrantfile
map. Omdat dit de eerste keer is dat u de virtuele machine maakt, is de eerste uitvoering veel langzamer dan de uitvoeringen die u moet volgen. Dit komt doordat de implementatie het windows 10-vak voor de eerste keer downloadt.
Zodra het downloaden is voltooid, wordt de daadwerkelijke inrichting gestart. Zoals wordt weergegeven in de volgende schermopname, duurt het proces ongeveer 7 tot 10 minuten.
Notitie
Als u een fout ziet over de controle van intrekking voor het certificaat, voegt u deze configuratie toe aan Vagrantfile
:
config.vm.box_download_insecure = true
Na voltooiing hebt u een lokale Virtuele Windows 10-machine geïmplementeerd, verbonden als een nieuwe server met Azure Arc in een nieuwe resourcegroep.
Semi-geautomatiseerde implementatie (optioneel)
De laatste stap van de uitvoering is het registreren van de VIRTUELE machine als een nieuwe serverresource met Azure Arc.
Als u het daadwerkelijke registratieproces wilt demo/beheren, gaat u als volgt te werk:
Maak in het
install_arc_agent
PowerShell-script commentaar bij derun connect command
sectie en sla het bestand op. U kunt ook opmerkingen maken of het maken van de resourcegroep wijzigen.RDP de VM met behulp van de
vagrant rdp
opdracht. Gebruikvagrant/vagrant
deze optie als gebruikersnaam/wachtwoord.Open PowerShell ISE als Beheer istrator en bewerk het
C:\runtime\vars.ps1
bestand met uw omgevingsvariabelen.Plak de
Invoke-Expression C:\runtime\vars.ps1
opdracht, deaz group create --location $env:location --name $env:resourceGroup --subscription $env:subscriptionId
opdracht en dezelfdeazcmagent connect
opdracht die u uit en voer het script uit.
De implementatie verwijderen
Als u de hele implementatie wilt verwijderen, voert u de vagrant destroy -f
opdracht uit. Het vagrantfile bevat een before: destroy
Vagrant-trigger waarmee de opdracht wordt uitgevoerd om de Azure-resourcegroep te verwijderen voordat de werkelijke VM wordt vernietigd.
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