Använda en Azure Resource Manager-mall för att distribuera och ansluta en virtuell Azure-dator till Azure Arc
Den här artikeln innehåller vägledning om hur du använder en Azure Resource Manager-mall (ARM-mall) för att automatiskt registrera en virtuell Azure-dator (Virtuell Azure-dator) som kör Windows till Azure Arc. Den angivna ARM-mallen ansvarar för att skapa Azure-resurserna och köra Azure Arc-registreringsskriptet på den virtuella datorn.
Virtuella Azure-datorer använder Azure Instance Metadata Service (IMDS) som standard. Genom att projicera en virtuell Azure-dator som en Azure Arc-aktiverad server skapas en konflikt som inte tillåter att Azure Arc-serverresurserna representeras som en när IMDS används. I stället kommer Azure Arc-servern fortfarande att "fungera" som en intern virtuell Azure-dator.
Med den här guiden kan du endast använda och registrera virtuella Azure-datorer i Azure Arc i demosyfte. Du kan simulera en server som distribueras utanför Azure, till exempel lokalt eller på andra molnplattformar.
Kommentar
En virtuell Azure-dator förväntas inte vara en Azure Arc-aktiverad server. Följande scenario stöds inte och bör endast användas för demo- och testningsändamål.
Förutsättningar
Klona Azure Arc Jumpstart-lagringsplatsen.
git clone https://github.com/microsoft/azure_arc.git
Installera eller uppdatera Azure CLI till version 2.7 och senare. Använd följande kommando för att kontrollera den aktuella installerade versionen.
az --version
Azure-prenumeration: Om du inte har en Azure-prenumeration kan du skapa ett kostnadsfritt Azure-konto.
Skapa ett Huvudnamn för Azure-tjänsten.
För att du ska kunna distribuera Azure-resurserna med hjälp av ARM-mallen krävs ett Azure-tjänsthuvudnamn som tilldelats rollen Deltagare. Om du vill skapa det loggar du in på ditt Azure-konto och kör följande kommando. Du kan också köra det här kommandot i 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>"
Till exempel:
az ad sp create-for-rbac -n "http://AzureArcServers" --role contributor --scopes "/subscriptions/00000000-0000-0000-0000-000000000000"
Resultatet bör se ut så här:
{ "appId": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX", "displayName": "http://AzureArcServers", "password": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX", "tenant": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX" }
Kommentar
Vi rekommenderar starkt att du omfånget tjänstens huvudnamn till en specifik Azure-prenumeration och resursgrupp.
Automationsflöde
Nedan visas en förklaring för att bekanta dig med automatiserings- och distributionsflödet.
En användare redigerar ARM-mallparametrarnas fil (en engångsredigering). Dessa parametervärden används under hela distributionen.
ARM-mallen innehåller ett anpassat skripttillägg för virtuella Azure-datorer som distribuerar
install_arc_agent.ps1
PowerShell-skriptet.För att den virtuella Azure-datorn ska kunna projiceras som en Azure Arc-aktiverad server kommer skriptet att:
Ange lokala os-miljövariabler.
Generera ett lokalt os-inloggningsskript med namnet
LogonScript.ps1
. Det här skriptet kommer att:LogonScript.log
Skapa filen.Stoppa och inaktivera Windows Azure-gästagenttjänsten.
Skapa en ny Windows-brandväggsregel för att blockera utgående Azure IMDS-trafik till fjärradressen
169.254.169.254
.Avregistrera inloggningsskriptet Windows schemalagd aktivitet så att den inte körs efter första inloggningen.
Inaktivera och förhindra att Windows Serverhanteraren körs vid start.
En användare ansluter via RDP till den virtuella Windows-datorn, som börjar köra
LogonScript.ps1
och registrerar den virtuella datorn till Azure Arc.
Distribution
Som nämnts använder den här distributionen ARM-mallar. Du distribuerar en enda mall som ansvarar för att skapa alla Azure-resurser i en enda resursgrupp och registrera den skapade virtuella datorn i Azure Arc.
Innan du distribuerar ARM-mallen loggar du in på Azure med hjälp av Azure CLI med
az login
kommandot .Distributionen använder ARM-mallparametrarfilen. Innan du påbörjar distributionen redigerar du
azuredeploy.parameters.json
filen som finns i den lokala klonade lagringsplatsens mapp. Här finns en exempelparametrarfil.Om du vill distribuera ARM-mallen går du till den lokala klonade distributionsmappen och kör följande kommando:
az group create --name <Name of the Azure resource group> --location <Azure Region> --tags "Project=jumpstart_azure_arc_servers" az deployment group create \ --resource-group <Name of the Azure resource group> \ --name <The name of this deployment> \ --template-uri https://raw.githubusercontent.com/microsoft/azure-arc/main/azure_arc_servers_jumpstart/azure/windows/arm_template/azuredeploy.json \ --parameters <The `azuredeploy.parameters.json` parameters file location>
Kommentar
Kontrollera att du använder samma Azure-resursgruppnamn som det du använde i
azuredeploy.parameters.json
filen.Till exempel:
az group create --name Arc-Servers-Win-Demo --location "East US" --tags "Project=jumpstart_azure_arc_servers" az deployment group create \ --resource-group Arc-Servers-Win-Demo \ --name arcwinsrvdemo \ --template-uri https://raw.githubusercontent.com/microsoft/azure-arc/main/azure_arc_servers_jumpstart/azure/windows/arm_template/azuredeploy.json \ --parameters azuredeploy.parameters.json
När Azure-resurserna har etablerats kan du se dem i Azure-portalen.
Windows-inloggning och efterdistribution
Nu när den virtuella Windows Server-datorn har skapats ansluter nästa steg den. Använd dess offentliga IP-adress, RDP till den virtuella datorn.
Vid den första inloggningen , som nämns i avsnittet Automation-flöde , körs ett inloggningsskript. Det här skriptet skapas som en del av den automatiserade distributionsprocessen.
Låt skriptet köras och stäng inte PowerShell-sessionen. Sessionen stängs automatiskt när den har slutförts.
Kommentar
Skriptkörningstiden är ~1–2 minuter lång.
När det är klart läggs en ny Azure Arc-aktiverad server till i resursgruppen.
Rensa
Ta bort hela distributionen genom att ta bort resursgruppen från Azure-portalen.
Feedback
https://aka.ms/ContentUserFeedback.
Kommer snart: Under hela 2024 kommer vi att fasa ut GitHub-problem som feedbackmekanism för innehåll och ersätta det med ett nytt feedbacksystem. Mer information finns i:Skicka och visa feedback för