Använda en Azure Resource Manager-mall för att distribuera och ansluta en virtuell Ubuntu-dator till Azure Arc
Den här artikeln innehåller vägledning om hur du använder en ARM-mall för Azure Resource Manager för att automatiskt registrera en virtuell Ubuntu-dator 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 projiceras som 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 (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.sh
shell-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 en
~/.bash_profile
fil som initieras vid användarens första inloggning för att konfigurera miljön. Det här skriptet kommer att:Stoppa och inaktivera Linux Azure-gästagenttjänsten.
Skapa en ny brandväggsregel för operativsystemet för att blockera utgående Azure IMDS-trafik till fjärradressen
169.254.169.254
.Installera den Azure Arc-anslutna datoragenten.
Ta bort filen så att den
~/.bash_profile
inte körs efter den första inloggningen.
En användare kommer att SSH till den virtuella Linux-datorn, som startar skriptkörningen
~/.bash_profile
och registrerar den virtuella datorn till Azure Arc.Kommentar
Shell-skriptet
install_arc_agent.sh
aktiverar OS-brandväggen och konfigurerar nya regler för inkommande och utgående anslutningar. Som standard tillåts all inkommande och utgående trafik, förutom att blockera utgående Azure IMDS-trafik till fjärradressen169.254.169.254
.
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 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/linux/arm_template/azuredeploy.json \ --parameters <The `azuredeploy.parameters.json` parameters file location>
Kommentar
Se till att använda samma Azure-resursgruppnamn som det du använde i
azuredeploy.parameters.json
filen.Till exempel:
az group create --name Arc-Servers-Linux-Demo --location "westeurope" --tags "Project=jumpstart_azure_arc_servers" az deployment group create \ --resource-group Arc-Servers-Linux-Demo \ --name arclinuxdemo \ --template-uri https://raw.githubusercontent.com/microsoft/azure_arc/main/azure_arc_servers_jumpstart/azure/linux/arm_template/azuredeploy.json \ --parameters azuredeploy.parameters.json
När Azure-resurser har etablerats visas de i Azure-portalen.
Linux-inloggning och efterdistribution
Nu när den virtuella Linux-datorn har skapats ansluter nästa steg till den. Använd dess offentliga IP-adress, SSH till den virtuella datorn.
Vid första inloggningen , som nämns i avsnittet Automation-flöde , körs ett inloggningsskript. Det här skriptet skapades som en del av den automatiserade distributionsprocessen.
Låt skriptet köras och stäng inte SSH-sessionen. Sessionen stängs automatiskt när den har slutförts.
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