使用 Azure CLI 啟用 Azure VM 延伸模組

本文說明如何使用 Azure CLI,在 Linux 或 Windows 混合式機器上部署、升級、更新和解除安裝已啟用 Azure Arc 的伺服器所支援的 VM 延伸模組。

注意

已啟用 Azure Arc 的伺服器不支援在 Azure 虛擬機器上部署和管理 VM 延伸模組。 如需 Azure VM,請參閱下列 VM 延伸模組概觀一文。

必要條件

安裝 Azure CLI 延伸模組

ConnectedMachine 命令不會作為 Azure CLI 的一部分提供。 在使用 Azure CLI 連線到 Azure,並在已啟用 Azure Arc 的伺服器管理的混合式伺服器上管理 VM 延伸模組之前,您需要載入 ConnectedMachine 延伸模組。 您可以從工作站執行這些管理作業,您不需要在已啟用 Azure Arc 的伺服器上執行這些管理作業。

執行下列命令來取得:

az extension add --name connectedmachine

啟用延伸模組

若要在已啟用 Azure Arc 的伺服器上啟用 VM 延伸模組,請使用 az connectedmachine extension create 搭配 --machine-name--extension-name--location--typesettings--publisher 參數。

下列範例會在已啟用 Azure Arc 的伺服器上啟用 Log Analytics VM 延伸模組:

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" 

下列範例會在已啟用 Azure Arc 的伺服器上啟用自訂指令碼延伸模組:

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"

下列範例會在已啟用 Azure Arc 的伺服器上啟用自訂指令碼延伸模組:

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" }}'

下列範例會在已啟用 Azure Arc 的伺服器上啟用 Microsoft Antimalware 延伸模組:

az connectedmachine extension create --resource-group "resourceGroupName" --machine-name "myMachineName" --location "regionName" --publisher "Microsoft.Azure.Security" --type "IaaSAntimalware" --name "IaaSAntimalware" --settings '"{\"AntimalwareEnabled\": \"true\"}"'

下列範例會在已啟用 Azure Arc 的 Windows 伺服器上啟用 Datadog 延伸模組:

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" }'

列出已安裝的延伸模組

若要在已啟用 Azure Arc 的伺服器上取得 VM 延伸模組的清單,請使用 az connectedmachine extension list 搭配 --machine-name--resource-group 參數。

範例:

az connectedmachine extension list --machine-name "myMachineName" --resource-group "myResourceGroup"

Azure CLI 命令的輸出預設是採用 JSON (JavaScript 物件標記法) 格式。 舉例來說,若要將預設輸出變更為清單或資料表,請使用 az config set core.output=table。 您也可以將 --output 新增到任何命令,以輸出格式進行一次變更。

下列範例顯示來自 az connectedmachine extension -list 命令的局部 JSON 輸出:

[
  {
    "autoUpgradingMinorVersion": "false",
    "forceUpdateTag": null,
    "id": "/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.HybridCompute/machines/SVR01/extensions/DependencyAgentWindows",
    "location": "regionName",
    "name": "DependencyAgentWindows",
    "namePropertiesInstanceViewName": "DependencyAgentWindows",

更新延伸模組設定

某些 VM 延伸模組需要組態設定,才能將其安裝在已啟用 Arc 的伺服器上,例如自訂指令碼延伸模組和 Log Analytics 代理程式 VM 延伸模組。 若要升級延伸模組的設定,請使用 az connectedmachine extension update

下列範例說明如何設定自訂指令碼延伸模組:

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"

升級延伸模組

發行支援的 VM 延伸模組新版本時,您可以將其升級至該最新版本。 若要升級 VM 延伸模組,請使用 az connectedmachine upgrade-extension 搭配 --machine-name--resource-group--extension-targets 參數。

針對 --extension-targets 參數,您必須指定延伸模組和可用的最新版本。 若要瞭解可用的最新版本,您可以從 Azure 入口網站中所選已啟用 Arc 的伺服器的 [延伸模組] 頁面中,或執行 az vm extension image list,來取得這項資訊。 您可以在單一升級要求中指定多個延伸模組,方法是提供以逗號分隔的延伸模組清單,由其發行者定義和類型 (以句點分隔),以及每個延伸模組的目標版本所定義,如下列範例所示。

若要升級適用於 Windows 且具有較新可用版本的 Log Analytics 代理程式延伸模組,請執行下列命令:

az connectedmachine upgrade-extension --machine-name "myMachineName" --resource-group "myResourceGroup" --extension-targets '{\"Microsoft.EnterpriseCloud.Monitoring.MicrosoftMonitoringAgent\":{\"targetVersion\":\"1.0.18053.0\"}}'

您可以執行 az connectedmachine extension list 命令,隨時檢閱已安裝的 VM 延伸模組版本。 typeHandlerVersion 屬性值代表延伸模組的版本。

移除延伸模組

若要在已啟用 Azure Arc 的伺服器上移除已安裝的 VM 延伸模組,請使用 az connectedmachine extension delete 搭配 --extension-name--machine-name--resource-group 參數。

例如,若要移除適用於 Linux 的 Log Analytics VM 延伸模組,請執行下列命令:

az connectedmachine extension delete --machine-name "myMachineName" --name "OmsAgentForLinux" --resource-group "myResourceGroup"

下一步