Verwenden von VMware PowerCLI, um das Onboarding von VMware vSphere-VMs unter Linux in Azure Arc zu skalieren
Dieser Artikel enthält einen Leitfaden zur Verwendung des bereitgestellten VMware PowerCLI-Skripts, um eine automatisierte skalierte Bereitstellung des Connected Machine-Agents für Azure Arc auf mehreren VMware vSphere-VMs durchzuführen. Durch diesen Vorgang werden diese VMs als Server mit Azure Arc-Unterstützung hinzugefügt.
In dieser Anleitung wird davon ausgegangen, dass Sie bereits über einen bestehenden Bestand an virtuellen VMware-Computern verfügen. Zur Automatisierung des VM-Onboardings in Azure Arc wird das PowerCLI PowerShell-Modul verwendet.
Voraussetzungen
Klonen Sie das Repository für den Schnelleinstieg in Azure Arc.
git clone https://github.com/microsoft/azure_arc.git
Installieren oder aktualisieren Sie die Azure CLI auf mindestens Version 2.7. Überprüfen Sie mit dem folgenden Befehl die aktuell installierte Version.
az --version
Installieren Sie VMware PowerCLI.
Hinweis
Dieser Leitfaden wurde mit der neuesten Version von PowerCLI (zum Zeitpunkt der Veröffentlichung Version 12.0.0) getestet, frühere Versionen sollten jedoch ebenfalls funktionieren.
- Unterstützte PowerShell-Versionen: VMware PowerCLI 12.0.0 ist mit den folgenden PowerShell-Versionen kompatibel:
Windows PowerShell 5.1
PowerShell 7
Ausführliche Installationsanweisungen finden Sie unter Installieren von PowerCLI. Die einfachste Möglichkeit ist jedoch, das
VMware.PowerCLI
-Modul aus dem PowerShell-Katalog mit dem folgenden Befehl zu verwenden.Install-Module -Name VMware.PowerCLI
- Unterstützte PowerShell-Versionen: VMware PowerCLI 12.0.0 ist mit den folgenden PowerShell-Versionen kompatibel:
Um den VM-Bestand aus vCenter lesen und ein Skript auf VM-Betriebssystemebene aufrufen zu können, sind die folgenden Berechtigungen erforderlich:
VirtualMachine.GuestOperations
-BenutzerkontoVMware vCenter Server-Benutzer, dem die Rolle Nur Lesen zugewiesen ist
Erstellen Sie einen Azure-Dienstprinzipal.
Um die VMware vSphere-VM mit Azure Arc zu verbinden, ist ein Azure-Dienstprinzipal mit der Rolle „Mitwirkender“ erforderlich. Zum Erstellen dieses Dienstprinzipals melden Sie sich bei Ihrem Azure-Konto an und führen den folgenden Befehl aus. Sie können diesen Befehl auch in Azure Cloud Shell ausführen.
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>"
Beispiel:
az ad sp create-for-rbac -n "http://AzureArcServers" --role contributor --scopes "/subscriptions/00000000-0000-0000-0000-000000000000"
Die Ausgabe sollte wie folgt aussehen:
{ "appId": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX", "displayName": "http://AzureArcServers", "password": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX", "tenant": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX" }
Hinweis
Es wird dringend empfohlen, dass Sie für den Dienstprinzipal ein bestimmtes Azure-Abonnement und eine bestimmte Ressourcengruppe festlegen.
Automatisierungsflow
Der Automatisierungsflow für dieses Szenario umfasst die folgenden Schritte:
Bearbeiten Sie das PowerCLI-Skript
vars.ps1
.Bei Ausführung des PowerShell-Skripts
scale-deploy.ps1
:Das Skript generiert automatisch ein
vars.sh
-Shellskript mit den Azure-Umgebungsvariablen des Benutzers.Durch die Skriptausführung wird die Authentifizierung gegenüber vCenter initiiert. Außerdem wird der VM-Zielordner überprüft, in dem sich VM-Kandidaten für Azure Arc befinden. Sowohl das automatisch generierte
vars.sh
- als auch dasinstall_azure_arc_agent.sh
-Shellskript wird für jede Linux-VM in/vmware/scaled-deploy/powercli/linux
kopiert.
Das
install_azure_arc_agent.sh
-Shellskript wird für das VM-Gastbetriebssystem ausgeführt. Dieses Skript installiert den Connected Machine-Agent für Azure Arc, um das Onboarding der VM in Azure Arc durchzuführen.
Vor der Bereitstellung
Um die Unterschiede vor und nach dem Ausführen dieser Schritte zu veranschaulichen, zeigen die folgenden Screenshots eine dedizierte leere Azure-Ressourcengruppe, einen vCenter-VM-Ordner mit möglichen VMs und das Verzeichnis /var/opt/
ohne installierten Agent.
Bereitstellung
Bevor Sie das PowerCLI-Skript ausführen, müssen Sie die Umgebungsvariablen festlegen, die vom install_azure_arc_agent.sh
-Skript verwendet werden. Diese Variablen basieren auf dem Azure-Dienstprinzipal, den Sie soeben erstellt haben, Ihrem Azure-Abonnement und -Mandanten sowie Ihren VMware vSphere-Anmeldeinformationen und -Daten.
Rufen Sie Ihre Azure-Abonnement-ID und Mandanten-ID mithilfe des Befehls
az account list
ab.Verwenden Sie die Azure-Dienstprinzipal-ID und das Kennwort, die bzw. das Sie im Abschnitt zu den Voraussetzungen erstellt haben:
Öffnen Sie im Ordner
azure_arc_servers_jumpstart\vmware\scaled-deploy\powercli\linux
eine PowerShell-Sitzung als Administrator, und führen Sie das Skriptscale-deploy.ps1
aus.Nachdem der Vorgang abgeschlossen ist, ist der Connected Machine-Agent für Azure Arc auf der VM installiert. Außerdem enthält die Azure-Ressourcengruppe die neuen Server mit Azure Arc-Unterstützung.
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für