使用 Azure PowerShell 啟用 Azure VM 擴充功能
本文說明如何部署、更新和卸載已啟用 Azure Arc 的伺服器支援的 Azure 虛擬機 (VM) 擴充功能。 它說明如何使用 Azure PowerShell 在 Linux 或 Windows 混合式電腦上執行這些工作。
注意
已啟用 Azure Arc 的伺服器不支援將 VM 擴充功能部署和管理至 Azure 虛擬機。 如需 Azure VM,請參閱 VM 擴充功能概觀 一文。
必要條件
具備 Azure PowerShell 的電腦。 如需指示,請參閱 安裝並設定 Azure PowerShell。
模組
Az.ConnectedMachine
。 在使用 Azure PowerShell 來管理已啟用 Azure Arc 的伺服器所管理混合式伺服器上的 VM 擴充功能之前,您需要安裝此模組。您可以從工作站執行這些管理作業。 您不需要在已啟用 Azure Arc 的伺服器上執行它們。
在已啟用 Azure Arc 的伺服器上,執行下列命令:
Install-Module -Name Az.ConnectedMachine
啟用擴充功能
若要在已啟用 Azure Arc 的伺服器上啟用 VM 擴充功能,請搭配 、、、、、-Publisher
、 和ExtensionType
-Settings
參數使用。-ResourceGroupName
-Location
-MachineName
-Name
New-AzConnectedMachineExtension
下列範例會在已啟用 Azure Arc 的伺服器上啟用自訂指令碼延伸模組:
$Setting = @{ "commandToExecute" = "powershell.exe -c Get-Process" }
New-AzConnectedMachineExtension -Name "custom" -ResourceGroupName "myResourceGroup" -MachineName "myMachineName" -Location "regionName" -Publisher "Microsoft.Compute" -Settings $Setting -ExtensionType CustomScriptExtension
下列範例會在已啟用 Azure Arc 的伺服器上啟用 Microsoft Antimalware 延伸模組:
$Setting = @{ "AntimalwareEnabled" = $true }
New-AzConnectedMachineExtension -Name "IaaSAntimalware" -ResourceGroupName "myResourceGroup" -MachineName "myMachineName" -Location "regionName" -Publisher "Microsoft.Azure.Security" -Settings $Setting -ExtensionType "IaaSAntimalware"
Key Vault VM 延伸模組
警告
在 settings.json 檔案中新增 \
至 "
會導致失敗,並出現 akvvm_service
下列錯誤: [CertificateManagementConfiguration] Failed to parse the configuration settings with:not an object.
雖然 PowerShell 使用者通常會使用 \"
序列來逸出其他程式代碼區塊中的引號,但您應該避免settings.json檔案中的格式設定。
下列範例會在已啟用 Azure Arc 的伺服器上啟用自訂指令碼延伸模組:
# Build settings
$settings = @{
secretsManagementSettings = @{
observedCertificates = @(
"observedCert1"
)
certificateStoreLocation = "myMachineName" # For Linux use "/var/lib/waagent/Microsoft.Azure.KeyVault.Store/"
certificateStore = "myCertificateStoreName"
pollingIntervalInS = "pollingInterval"
}
authenticationSettings = @{
msiEndpoint = "http://localhost:40342/metadata/identity"
}
}
$resourceGroup = "resourceGroupName"
$machineName = "myMachineName"
$location = "regionName"
# Start the deployment
New-AzConnectedMachineExtension -ResourceGroupName $resourceGroup -Location $location -MachineName $machineName -Name "KeyVaultForWindows or KeyVaultforLinux" -Publisher "Microsoft.Azure.KeyVault" -ExtensionType "KeyVaultforWindows or KeyVaultforLinux" -Setting $settings
Datadog VM 延伸模組
下列範例會在已啟用 Azure Arc 的伺服器上啟用 Datadog VM 延伸模組:
$resourceGroup = "resourceGroupName"
$machineName = "machineName"
$location = "machineRegion"
$osType = "Windows" # change to Linux if appropriate
$settings = @{
# change to your preferred Datadog site
site = "us3.datadoghq.com"
}
$protectedSettings = @{
# change to your Datadog API key
api_key = "APIKEY"
}
New-AzConnectedMachineExtension -ResourceGroupName $resourceGroup -Location $location -MachineName $machineName -Name "Datadog$($osType)Agent" -Publisher "Datadog.Agent" -ExtensionType "Datadog$($osType)Agent" -Setting $settings -ProtectedSetting $protectedSettings
列出已安裝的延伸模組
若要取得已啟用 Azure Arc 之伺服器上的 VM 擴充功能清單,請搭配和 -ResourceGroupName
參數使用。Get-AzConnectedMachineExtension
-MachineName
以下是範例:
Get-AzConnectedMachineExtension -ResourceGroupName myResourceGroup -MachineName myMachineName
Name Location PropertiesType ProvisioningState
---- -------- -------------- -----------------
custom westus2 CustomScriptExtension Succeeded
更新擴充功能組態
若要重新設定已安裝的擴充功能,您可以使用 Update-AzConnectedMachineExtension
Cmdlet 搭配 -Name
、 -MachineName
、 -ResourceGroupName
和 -Settings
參數。
若要瞭解提供您想要擴充功能變更的方法,請參閱 Cmdlet 的參考文章。
升級延伸模組
發行支援的 VM 延伸模組新版本時,您可以將其升級至該最新版本。 若要升級 VM 擴充功能,請搭配 -MachineName
、 -ResourceGroupName
和 -ExtensionTarget
參數使用Update-AzConnectedExtension
。
針對 -ExtensionTarget
參數,您必須指定延伸模組和可用的最新版本。 若要判斷擴充功能可用的最新版本,請移至 Azure 入口網站 中所選已啟用 Azure Arc 之伺服器的 [擴充功能] 頁面,或執行 Get-AzVMExtensionImage
。 您可以在單一升級要求中指定多個延伸模組,方法是同時提供:
- 以逗號分隔的延伸模組清單,由其發行者和類型定義(以句號分隔)
- 每個擴充功能的目標版本
您可以執行 命令 Get-AzConnectedMachineExtension
,隨時檢閱已安裝的 VM 擴充功能版本。 TypeHandlerVersion
屬性值代表延伸模組的版本。
移除延伸模組
若要在已啟用 Azure Arc 的伺服器上移除已安裝的 VM 擴充功能,請搭配 、 和 參數使用Remove-AzConnectedMachineExtension
-Name
。-ResourceGroupName
-MachineName
相關內容
- 您可以使用 Azure CLI、Azure 入口網站 或 Azure Resource Manager 範本來部署、管理和移除 VM 擴充功能。
- 您可以在針對 VM 擴充功能進行疑難解答的指南中找到疑難解答資訊。