Aktivieren von Azure-VM-Erweiterungen mithilfe der Azure-Befehlszeilenschnittstelle
In diesem Artikel erfahren Sie, wie Sie die Azure-Befehlszeilenschnittstelle verwenden, um VM-Erweiterungen, die von Servern mit Azure Arc-Unterstützung unterstützt werden, auf einem Linux- oder Windows-Hybridcomputer bereitzustellen, zu upgraden, zu aktualisieren oder zu deinstallieren.
Hinweis
Das Bereitstellen und Verwalten von VM-Erweiterungen auf Azure-VMs wird auf Servern mit Azure Arc-Unterstützung nicht unterstützt. Informationen zu Azure-VMs finden Sie im Artikel Erweiterungen und Features für virtuelle Azure-Computer.
Voraussetzungen
Verwenden Sie die Bash-Umgebung in Azure Cloud Shell. Weitere Informationen finden Sie unter Schnellstart für Bash in Azure Cloud Shell.
Wenn Sie CLI-Referenzbefehle lieber lokal ausführen, installieren Sie die Azure CLI. Wenn Sie Windows oder macOS ausführen, sollten Sie die Azure CLI in einem Docker-Container ausführen. Weitere Informationen finden Sie unter Ausführen der Azure CLI in einem Docker-Container.
Wenn Sie eine lokale Installation verwenden, melden Sie sich mithilfe des Befehls az login bei der Azure CLI an. Führen Sie die in Ihrem Terminal angezeigten Schritte aus, um den Authentifizierungsprozess abzuschließen. Informationen zu anderen Anmeldeoptionen finden Sie unter Anmelden mit der Azure CLI.
Installieren Sie die Azure CLI-Erweiterung beim ersten Einsatz, wenn Sie dazu aufgefordert werden. Weitere Informationen zu Erweiterungen finden Sie unter Verwenden von Erweiterungen mit der Azure CLI.
Führen Sie az version aus, um die installierte Version und die abhängigen Bibliotheken zu ermitteln. Führen Sie az upgrade aus, um das Upgrade auf die aktuelle Version durchzuführen.
Installieren der Azure CLI-Erweiterung
Die ConnectedMachine-Befehle sind nicht Bestandteil der Azure-Befehlszeilenschnittstelle. Damit Sie die Azure-Befehlszeilenschnittstelle verwenden können, um eine Verbindung mit Azure herzustellen und VM-Erweiterungen auf Ihrem Hybridserver zu verwalten, der von Servern mit Azure Arc-Unterstützung verwaltet wird, müssen Sie zunächst die ConnectedMachine-Erweiterung laden. Diese Verwaltungsvorgänge können von Ihrer Arbeitsstation aus ausgeführt werden. Sie müssen sie nicht auf dem Azure Arc-fähigen Server ausführen.
Rufen Sie sie mit dem folgenden Befehl ab:
az extension add --name connectedmachine
Aktivieren der Erweiterung
Verwenden Sie az connectedmachine extension create mit den Parametern --machine-name
, --extension-name
, --location
, --type
, settings
und --publisher
, um eine VM-Erweiterung auf Ihrem Server mit Azure Arc-Unterstützung zu aktivieren.
Das folgende Beispiel aktiviert die Log Analytics-VM-Erweiterung auf einem Server mit Azure Arc-Unterstützung:
az connectedmachine extension create --machine-name "myMachineName" --name "OmsAgentForLinux or MicrosoftMonitoringAgent" --location "regionName" --settings '{\"workspaceId\":\"myWorkspaceId\"}' --protected-settings '{\"workspaceKey\":\"myWorkspaceKey\"}' --resource-group "myResourceGroup" --type-handler-version "1.13" --type "OmsAgentForLinux or MicrosoftMonitoringAgent" --publisher "Microsoft.EnterpriseCloud.Monitoring"
Im folgenden Beispiel wird die Erweiterung für benutzerdefinierte Skripts auf einem Server mit Azure Arc-Unterstützung aktiviert:
az connectedmachine extension create --machine-name "myMachineName" --name "CustomScriptExtension" --location "regionName" --type "CustomScriptExtension" --publisher "Microsoft.Compute" --settings "{\"commandToExecute\":\"powershell.exe -c \\\"Get-Process | Where-Object { $_.CPU -gt 10000 }\\\"\"}" --type-handler-version "1.10" --resource-group "myResourceGroup"
Das folgende Beispiel aktiviert die Key Vault-VM-Erweiterung auf einem Server mit Azure Arc-Unterstützung:
az connectedmachine extension create --resource-group "resourceGroupName" --machine-name "myMachineName" --location "regionName" --publisher "Microsoft.Azure.KeyVault" --type "KeyVaultForLinux or KeyVaultForWindows" --name "KeyVaultForLinux or KeyVaultForWindows" --settings '{"secretsManagementSettings": { "pollingIntervalInS": "60", "observedCertificates": ["observedCert1"] }, "authenticationSettings": { "msiEndpoint": "http://localhost:40342/metadata/identity" }}'
Das folgende Beispiel aktiviert die Microsoft Antimalware-Erweiterung auf einem Azure Arc-fähigen Windows-Server:
az connectedmachine extension create --resource-group "resourceGroupName" --machine-name "myMachineName" --location "regionName" --publisher "Microsoft.Azure.Security" --type "IaaSAntimalware" --name "IaaSAntimalware" --settings '"{\"AntimalwareEnabled\": \"true\"}"'
Das folgende Beispiel aktiviert die Datadog-VM-Erweiterung auf einem Windows-Server mit Azure Arc-Unterstützung:
az connectedmachine extension create --resource-group "resourceGroupName" --machine-name "myMachineName" --location "regionName" --publisher "Datadog.Agent" --type "DatadogWindowsAgent" --settings '{"site": "us3.datadoghq.com"}' --protected-settings '{"api_key": "YourDatadogAPIKey" }'
Auflisten der Installierten Erweiterungen
Verwenden Sie az connectedmachine extension list mit den Parametern --machine-name
und --resource-group
, um eine Liste der VM-Erweiterungen auf dem Server mit Azure Arc-Unterstützung abzurufen.
Beispiel:
az connectedmachine extension list --machine-name "myMachineName" --resource-group "myResourceGroup"
Standardmäßig erfolgt die Ausgabe von Azure CLI-Befehlen in JSON (JavaScript Object Notation). Um beispielsweise die Standardausgabe in eine Liste oder Tabelle zu ändern, verwenden Sie az config set core.output=table. Ferner können Sie --output
an beliebige Befehle anfügen, um eine einmalige Änderung des Ausgabeformats zu erreichen.
Das folgende Beispiel zeigt die partielle JSON-Ausgabe des Befehls az connectedmachine extension -list
:
[
{
"autoUpgradingMinorVersion": "false",
"forceUpdateTag": null,
"id": "/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.HybridCompute/machines/SVR01/extensions/DependencyAgentWindows",
"location": "regionName",
"name": "DependencyAgentWindows",
"namePropertiesInstanceViewName": "DependencyAgentWindows",
Aktuelen der Erweiterungskonfiguration
Einige VM-Erweiterungen erfordern Konfigurationseinstellungen, um sie auf dem Arc-fähigen Server zu installieren, z. B. die benutzerdefinierte Skripterweiterung und die Log Analytics-Agent-VM-Erweiterung. Verwenden Sie az connectedmachine extension update, um die Konfiguration einer Erweiterung zu aktualisieren.
Das folgende Beispiel zeigt, wie die benutzerdefinierte Skripterweiterung konfiguriert wird:
az connectedmachine extension update --name "CustomScriptExtension" --type "CustomScriptExtension" --publisher "Microsoft.HybridCompute" --settings "{\"commandToExecute\":\"powershell.exe -c \\\"Get-Process | Where-Object { $_.CPU -lt 100 }\\\"\"}" --type-handler-version "1.10" --machine-name "myMachine" --resource-group "myResourceGroup"
Upgraden von Erweiterungen
Wenn eine neue Version einer unterstützten VM-Erweiterung veröffentlicht wird, können Sie diese auf diese neueste Version upgraden. Verwenden Sie az connectedmachine upgrade-extension mit den Parametern --machine-name
, --resource-group
und --extension-targets
, um eine VM-Erweiterung zu upgraden.
Für den --extension-targets
-Parameter müssen Sie die Erweiterung und die neueste verfügbare Version angeben. Um die neueste verfügbare Version für eine Erweiterung zu ermitteln, besuchen Sie die Seite Erweiterungen für den ausgewählten Arc-fähigen Server im Azure-Portal oder führen az vm extension image list aus. Sie können mehrere Erweiterungen in einer einzelnen Upgradeanforderung angeben, indem Sie eine durch Trennzeichen getrennte Liste von Erweiterungen bereitstellen, die durch ihren Herausgeber und Typ (durch einen Punkt getrennt) und die Zielversion für jede Erweiterung definiert sind.
Führen Sie den folgenden Befehl aus, um die Log Analytics-Agent-Erweiterung für Windows mit einer neueren Version zu upgraden:
az connectedmachine upgrade-extension --machine-name "myMachineName" --resource-group "myResourceGroup" --extension-targets '{"Microsoft.EnterpriseCloud.Monitoring.MicrosoftMonitoringAgent":{"targetVersion":"1.0.18053.0"}}'
Sie können die Version der installierten VM-Erweiterungen jederzeit überprüfen, indem Sie den Befehl az connectedmachine extension list ausführen. Der typeHandlerVersion
-Eigenschaftswert stellt die Version der Erweiterung dar.
Entfernen von Erweiterungen
Verwenden Sie az connectedmachine extension delete mit den Parametern --extension-name
, --machine-name
und --resource-group
, um eine installierte VM-Erweiterung von Ihrem Server mit Azure Arc-Unterstützung zu entfernen.
Um beispielsweise die Log Analytics-VM-Erweiterung für Linux zu entfernen, führen Sie den folgenden Befehl aus:
az connectedmachine extension delete --machine-name "myMachineName" --name "OmsAgentForLinux" --resource-group "myResourceGroup"
Nächste Schritte
Sie können VM-Erweiterungen über Azure PowerShell, das Azure-Portal oder Azure Resource Manager-Vorlagen bereitstellen, verwalten und entfernen.
Informationen zur Problembehandlung finden Sie im Problembehandlungs-Handbuch für VM-Erweiterungen.
Weitere Informationen zu den Befehlen finden Sie in der Übersicht über die VM-Erweiterung der Azure-Befehlszeilenschnittstelle.