本文會說明如何使用 Azure CLI (Windows 和 Linux) 在已啟用 Azure Arc 的伺服器上部署、升級、更新和解除安裝 虛擬機器 (VM) 延伸模組。
必要條件
在 Azure Cloud Shell 中使用 Bash 環境。 如需詳細資訊,請參閱開始使用 Azure Cloud Shell。
若要在本地執行 CLI 參考命令,請安裝 Azure CLI。 若您在 Windows 或 macOS 上執行,請考慮在 Docker 容器中執行 Azure CLI。 如需詳細資訊,請參閱〈如何在 Docker 容器中執行 Azure CLI〉。
如果您使用的是本機安裝,請使用 az login 命令,透過 Azure CLI 來登入。 請遵循您終端機上顯示的步驟,完成驗證程序。 如需其他登入選項,請參閱 使用 Azure CLI 向 Azure 進行驗證。
出現提示時,請在第一次使用時安裝 Azure CLI 延伸模組。 如需擴充功能的詳細資訊,請參閱 使用和管理 Azure CLI 的擴充功能。
執行 az version 以尋找已安裝的版本和相依程式庫。 若要升級至最新版本,請執行 az upgrade。
在 Azure CLI 中安裝連線的機器延伸模組
ConnectedMachine 命令不會隨著 Azure CLI 的一部分提供。 在使用 Azure CLI 連線到 Azure 並管理由已啟用 Azure Arc 的伺服器所管理的混合式伺服器上 VM 擴充功能之前,您需要載入 ConnectedMachine 擴充功能。
您可以從工作站執行這些管理作業,而不是在已啟用 Azure Arc 的伺服器上執行。
執行下列命令以安裝 Azure CLI ConnectedMachine 擴充功能:
az extension add --name connectedmachine
啟用擴充功能
若要在已啟用 Azure Arc 的伺服器上啟用 VM 擴充功能,請搭配 az connectedmachine extension create、--machine-name、--extension-name、--location、--type、settings 和 --publisher 參數使用。
此範例會在已啟用 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 的伺服器上啟用 Azure Key Vault VM 擴充功能:
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 的 Windows 伺服器上啟用 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" }'
小提示
已啟用 Arc 的伺服器支援許多其他延伸模組。 如需詳細資訊,請參閱 使用已啟用 Azure Arc 的伺服器進行虛擬機擴充功能管理。
列出已安裝的延伸模組
若要在已啟用 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 擴充功能需要組態設定,以便您可以在已啟用 Azure Arc 的伺服器上安裝它們(例如自定義腳本擴充功能)。 若要升級擴充功能的組態,請使用 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 入口網站 中所選 Azure Arc 已啟用伺服器的 [擴充功能] 頁面,或執行 az vm extension image list。 您可以在單一升級要求中指定多個延伸模組,方法是同時提供:
- 以逗號分隔的延伸模組清單,由其發行者和類型定義(以句號分隔)
- 每個擴充功能的目標版本
您可以執行 命令 az connectedmachine extension list,隨時檢閱已安裝的 VM 擴充功能版本。
typeHandlerVersion 屬性值代表延伸模組的版本。
小提示
許多 VM 擴充功能都可以設定為 自動升級。
移除擴充功能
若要從已啟用 Azure Arc 的伺服器中將已安裝的 VM 擴充功能移除,請搭配 az connectedmachine extension delete、--extension-name 和 --machine-name 參數使用 --resource-group。
相關內容
- 使用 Azure PowerShell、 Azure 入口網站或 Azure Resource Manager 範本來部署、管理及移除 VM 擴充功能。
- 在 針對 VM 擴充功能進行疑難解答的指南中尋找疑難解答資訊。
- 如需命令的詳細資訊,請檢閱 Azure CLI VM 擴充功能的概觀。