本文說明如何使用 Azure PowerShell 在已啟用 Azure Arc 的伺服器上部署、更新和卸載 虛擬機 (VM) 擴充 功能。
必要條件
具備 Azure PowerShell 的電腦。 如需指示,請參閱 安裝並設定 Azure PowerShell。
模組
Az.ConnectedMachine。 在使用 Azure PowerShell 來管理已啟用 Azure Arc 的伺服器所管理混合式伺服器上的 VM 擴充功能之前,您需要安裝此模組。您可以從工作站執行這些管理作業,而不是在已啟用 Azure Arc 的伺服器上執行。
執行下列命令以安裝
Az.ConnectedMachine模組:Install-Module -Name Az.ConnectedMachine
啟用擴充功能
若要在已啟用 Azure Arc 的伺服器上啟用 VM 擴充功能,請搭配 、、、、、New-AzConnectedMachineExtension、 和-Name-ResourceGroupName 參數使用。-MachineName-Location-PublisherExtensionType-Settings
此範例會在已啟用 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 的 Windows 伺服器上啟用 Microsoft Antimalware 擴充功能:
$Setting = @{ "AntimalwareEnabled" = $true }
New-AzConnectedMachineExtension -Name "IaaSAntimalware" -ResourceGroupName "myResourceGroup" -MachineName "myMachineName" -Location "regionName" -Publisher "Microsoft.Azure.Security" -Settings $Setting -ExtensionType "IaaSAntimalware"
此範例會在已啟用 Azure Arc 的伺服器上啟用 Key Vault VM 擴充功能:
警告
在 settings.json 檔案中新增 \ 至 " 會導致失敗,並出現 akvvm_service 下列錯誤: [CertificateManagementConfiguration] Failed to parse the configuration settings with:not an object.
雖然 PowerShell 使用者通常會使用 \" 序列來逸出其他程式代碼區塊中的引號,但您應該避免settings.json檔案中的格式設定。
# 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
此範例會在已啟用 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
小提示
已啟用 Arc 的伺服器支援許多其他延伸模組。 如需詳細資訊,請參閱 使用已啟用 Azure Arc 的伺服器進行虛擬機擴充功能管理。
列出已安裝的延伸模組
若要取得已啟用 Azure Arc 之伺服器上的 VM 擴充功能清單,請搭配 -MachineName 和 -ResourceGroupName 參數使用Get-AzConnectedMachineExtension:
Get-AzConnectedMachineExtension -ResourceGroupName myResourceGroup -MachineName myMachineName
Name Location PropertiesType ProvisioningState
---- -------- -------------- -----------------
custom westus2 CustomScriptExtension Succeeded
更新擴充功能組態
若要重新設定已安裝的擴充功能,您可以使用 Update-AzConnectedMachineExtension Cmdlet 搭配 -Name、 -MachineName、 -ResourceGroupName和 -Settings 參數。
如需詳細資訊,請參閱 Update-AzConnectedMachineExtension。
升級延伸模組
發行支援的 VM 延伸模組新版本時,您可以將其升級至該最新版本。 若要升級 VM 擴充功能,請搭配 Update-AzConnectedExtension、 -MachineName和 -ResourceGroupName 參數使用-ExtensionTarget。
針對 -ExtensionTarget 參數,您必須指定延伸模組和可用的最新版本。 若要判斷擴充功能可用的最新版本,請移至 Azure 入口網站 中所選已啟用 Azure Arc 之伺服器的 [擴充功能] 頁面,或執行 Get-AzVMExtensionImage。 您可以在單一升級要求中指定多個延伸模組,方法是同時提供:
- 以逗號分隔的延伸模組清單,由其發行者和類型定義(以句號分隔)
- 每個擴充功能的目標版本
您可以執行 命令 Get-AzConnectedMachineExtension,隨時檢閱已安裝的 VM 擴充功能版本。
TypeHandlerVersion 屬性值代表延伸模組的版本。
小提示
許多 VM 擴充功能都可以設定為 自動升級。
移除延伸模組
若要在已啟用 Azure Arc 的伺服器上移除已安裝的 VM 擴充功能,請搭配 、 和 參數使用Remove-AzConnectedMachineExtension-Name。-MachineName-ResourceGroupName
相關內容
- 使用 Azure CLI、 Azure 入口網站或 Azure Resource Manager 範本來部署、管理及移除 VM 擴充功能。
- 在 針對 VM 擴充功能進行疑難解答的指南中尋找疑難解答資訊。