Включение расширений виртуальной машины Azure с помощью Azure PowerShell
В этой статье показано, как развертывать, обновлять и удалять расширения виртуальных машин Azure, поддерживаемые серверами с поддержкой Azure Arc, на гибридном компьютере Linux или Windows с помощью Azure PowerShell.
Примечание.
Серверы с поддержкой Azure Arc не поддерживают развертывание расширений виртуальных машин и управление ими на виртуальных машинах Azure. Сведения для виртуальных машин Azure см. в статье Обзор расширения виртуальных машин.
Необходимые компоненты
- Компьютер с Azure PowerShell. Инструкции см. в статье Установка и настройка Azure PowerShell.
Прежде чем использовать Azure PowerShell для управления расширениями виртуальных машин на гибридном сервере, управляемом серверами с поддержкой Azure Arc, необходимо установить Az.ConnectedMachine
модуль. Эти операции управления можно выполнять с рабочей станции, их не нужно запускать на сервере с поддержкой Azure Arc.
Выполните следующую команду на сервере с поддержкой Azure Arc:
Install-Module -Name Az.ConnectedMachine
.
После завершения установки должно вернуться следующее сообщение:
The installed extension 'Az.ConnectedMachine' is experimental and not covered by customer support. Please use with discretion.
Включение расширения
Чтобы включить расширение виртуальной машины на сервере с поддержкой Azure Arc, используйте New-Az Подключение edMachineExtension с параметрами -Name
, , -ResourceGroupName
, -MachineName
, -Location
-Publisher
иExtensionType
-Settings
.
В следующем примере включено расширение виртуальной машины Log Analytics на сервере Linux с поддержкой Azure Arc:
$Setting = @{ "workspaceId" = "workspaceId" }
$protectedSetting = @{ "workspaceKey" = "workspaceKey" }
New-AzConnectedMachineExtension -Name OMSLinuxAgent -ResourceGroupName "myResourceGroup" -MachineName "myMachineName" -Location "regionName" -Publisher "Microsoft.EnterpriseCloud.Monitoring" -Settings $Setting -ProtectedSetting $protectedSetting -ExtensionType "OmsAgentForLinux"
Чтобы включить расширение виртуальной машины Log Analytics на сервере Windows с поддержкой Azure Arc, измените значение -ExtensionType
параметра "MicrosoftMonitoringAgent"
на предыдущий пример.
Следующий пример включает расширение пользовательского скрипта на сервере с поддержкой 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
В следующем примере включено расширение Защиты от вредоносных программ Майкрософт на сервере Windows с поддержкой Azure Arc:
$Setting = @{ "AntimalwareEnabled" = $true }
New-AzConnectedMachineExtension -Name "IaaSAntimalware" -ResourceGroupName "myResourceGroup" -MachineName "myMachineName" -Location "regionName" -Publisher "Microsoft.Azure.Security" -Settings $Setting -ExtensionType "IaaSAntimalware"
Расширение Key Vault для виртуальной машины
Предупреждение
Клиенты PowerShell часто добавляют \
в "
из settings.js, что приведет к сбою akvvm_service с ошибкой: [CertificateManagementConfiguration] Failed to parse the configuration settings with:not an object.
Следующий пример включает расширение виртуальной машины Key Vault на сервере с поддержкой 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
Следующий пример включает расширение виртуальной машины Datadog на сервере с поддержкой Azure Arc:
$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, используйте Get-Az Подключение edMachineExtension с -MachineName
параметрами и -ResourceGroupName
параметрами.
Пример:
Get-AzConnectedMachineExtension -ResourceGroupName myResourceGroup -MachineName myMachineName
Name Location PropertiesType ProvisioningState
---- -------- -------------- -----------------
custom westus2 CustomScriptExtension Succeeded
Обновление конфигурации расширения
Чтобы перенастроить установленное расширение, можно использовать командлет Update-Az Подключение edMachineExtension с параметрами -Name
, а также -Settings
параметрами . -MachineName
-ResourceGroupName
Ознакомьтесь со справочной статьей для командлета, чтобы понять различные методы, чтобы предоставить изменения, которые нужно изменить для расширения.
Расширение обновления
При выпуске новой версии поддерживаемого расширения виртуальной машины его можно обновить до последнего выпуска. Чтобы обновить расширение виртуальной машины, используйте Update-Az Подключение edExtension с параметром -MachineName
, -ResourceGroupName
а также -ExtensionTarget
параметрами.
-ExtensionTarget
Для параметра необходимо указать расширение и последнюю доступную версию. Чтобы узнать, какая последняя версия доступна, вы можете получить эти сведения на странице расширений для выбранного сервера с поддержкой Arc в портал Azure или с помощью get-AzVMExtensionImage. Вы можете указать несколько расширений в одном запросе на обновление, указав разделенный запятыми список расширений, определенный издателем и типом (разделенным периодом) и целевой версией для каждого расширения, как показано в приведенном ниже примере.
Чтобы обновить расширение агента Log Analytics для Windows с более новой версией, выполните следующую команду:
Update-AzConnectedExtension -MachineName "myMachineName" -ResourceGroupName "myResourceGroup" -ExtensionTarget '{\"Microsoft.EnterpriseCloud.Monitoring.MicrosoftMonitoringAgent\":{\"targetVersion\":\"1.0.18053.0\"}}'
Версию установленных расширений виртуальных машин можно просмотреть в любое время, выполнив команду Get-Az Подключение edMachineExtension. TypeHandlerVersion
Значение свойства представляет версию расширения.
Удаление расширений
Чтобы удалить установленное расширение виртуальной машины на сервере с поддержкой Azure Arc, используйте Remove-Az Подключение edMachineExtension с параметрами -Name
-MachineName
и -ResourceGroupName
параметрами.
Например, следующая команда удаляет расширение Log Analytics для виртуальной машины Linux:
Remove-AzConnectedMachineExtension -MachineName myMachineName -ResourceGroupName myResourceGroup -Name OmsAgentforLinux
Следующие шаги
Вы можете развертывать, удалять расширения виртуальной машины и управлять ими с помощью Azure CLI, портала Azure или шаблона ARM.
Сведения об устранении неполадок см. в статье Устранение неполадок для расширений виртуальной машины.