Чтобы развернуть расширение для Linux, выполните следующие действия.
Set-AzVMExtension -Publisher 'Microsoft.GuestConfiguration' -ExtensionType 'ConfigurationForLinux' -Name 'AzurePolicyforLinux' -TypeHandlerVersion 1.0 -ResourceGroupName '<myResourceGroup>' -Location '<myLocation>' -VMName '<myVM>' -EnableAutomaticUpgrade $true
Чтобы развернуть расширение для Windows, выполните следующие действия.
Set-AzVMExtension -Publisher 'Microsoft.GuestConfiguration' -ExtensionType 'ConfigurationforWindows' -Name 'AzurePolicyforWindows' -TypeHandlerVersion 1.0 -ResourceGroupName '<myResourceGroup>' -Location '<myLocation>' -VMName '<myVM>' -EnableAutomaticUpgrade $true
Шаблоны развертывания
Шаблоны развертывания также доступны для Azure Resource Manager (ARM), Bicep и Terraform. Сведения о шаблоне развертывания см. в разделе Microsoft.GuestConfiguration guestConfigurationAssignments.
Замечание
В следующих примерах развертывания замените <placeholder> значения параметров определенными значениями конфигурации.
Рекомендации по развертыванию
Перед установкой и развертыванием расширения конфигурации компьютера ознакомьтесь со следующими рекомендациями.
Имя экземпляра. При установке расширения конфигурации компьютера имя экземпляра расширения должно быть задано AzurePolicyforWindows или AzurePolicyforLinux. Описанные ранее политики определения базовых показателей безопасности требуют этих строк.
Версии. По умолчанию все развертывания обновляются до последней версии. Значение autoUpgradeMinorVersion свойства по умолчанию, true если иное не указано. Эта функция помогает устранить проблемы с обновлением кода при выпуске новых версий расширения конфигурации компьютера.
Автоматическое обновление. Расширение конфигурации компьютера поддерживает enableAutomaticUpgrade свойство. Если для этого свойства задано trueзначение, Azure автоматически обновляется до последней версии расширения по мере того, как будущие выпуски становятся доступными. Дополнительные сведения см. в статье автоматическое обновление расширений для виртуальных машин и масштабируемых наборов виртуальных машин в Azure.
Политика Azure. Чтобы развернуть последнюю версию расширения конфигурации компьютера в масштабе, включая требования к удостоверениям, выполните действия, описанные в статье "Создание назначения политики для выявления несоответствующих ресурсов". Создайте следующее назначение с помощью политики Azure:
Другие свойства. Вам не нужно включать параметры или свойства защищенных параметров в расширение конфигурации компьютера. Агент извлекает этот класс сведений из ресурсов назначения гостевой конфигурации REST API Azure. Например, ConfigurationUriModeсвойства и ConfigurationSetting свойства управляются для каждой конфигурации, а не в расширении виртуальной машины.
Шаблон ARM
Чтобы развернуть расширение для Linux, выполните следующие действия.
{
"type": "Microsoft.Compute/virtualMachines/extensions",
"name": "[concat(parameters('VMName'), '/AzurePolicyforLinux')]",
"apiVersion": "2020-12-01",
"location": "[parameters('location')]",
"dependsOn": [
"[concat('Microsoft.Compute/virtualMachines/', parameters('VMName'))]"
],
"properties": {
"publisher": "Microsoft.GuestConfiguration",
"type": "ConfigurationForLinux",
"typeHandlerVersion": "1.0",
"autoUpgradeMinorVersion": true,
"enableAutomaticUpgrade": true,
"settings": {},
"protectedSettings": {}
}
}
Чтобы развернуть расширение для Windows, выполните следующие действия.
{
"type": "Microsoft.Compute/virtualMachines/extensions",
"name": "[concat(parameters('VMName'), '/AzurePolicyforWindows')]",
"apiVersion": "2020-12-01",
"location": "[parameters('location')]",
"dependsOn": [
"[concat('Microsoft.Compute/virtualMachines/', parameters('VMName'))]"
],
"properties": {
"publisher": "Microsoft.GuestConfiguration",
"type": "ConfigurationforWindows",
"typeHandlerVersion": "1.0",
"autoUpgradeMinorVersion": true,
"enableAutomaticUpgrade": true,
"settings": {},
"protectedSettings": {}
}
}
Шаблон Bicep
Чтобы развернуть расширение для Linux, выполните следующие действия.
resource virtualMachine 'Microsoft.Compute/virtualMachines@2021-03-01' existing = {
name: 'VMName'
}
resource windowsVMGuestConfigExtension 'Microsoft.Compute/virtualMachines/extensions@2020-12-01' = {
parent: virtualMachine
name: 'AzurePolicyforLinux'
location: resourceGroup().location
properties: {
publisher: 'Microsoft.GuestConfiguration'
type: 'ConfigurationForLinux'
typeHandlerVersion: '1.0'
autoUpgradeMinorVersion: true
enableAutomaticUpgrade: true
settings: {}
protectedSettings: {}
}
}
Чтобы развернуть расширение для Windows, выполните следующие действия.
resource virtualMachine 'Microsoft.Compute/virtualMachines@2021-03-01' existing = {
name: 'VMName'
}
resource windowsVMGuestConfigExtension 'Microsoft.Compute/virtualMachines/extensions@2020-12-01' = {
parent: virtualMachine
name: 'AzurePolicyforWindows'
location: resourceGroup().location
properties: {
publisher: 'Microsoft.GuestConfiguration'
type: 'ConfigurationforWindows'
typeHandlerVersion: '1.0'
autoUpgradeMinorVersion: true
enableAutomaticUpgrade: true
settings: {}
protectedSettings: {}
}
}
Чтобы развернуть расширение для Linux, выполните следующие действия.
resource "azurerm_virtual_machine_extension" "gc" {
name = "AzurePolicyforLinux"
virtual_machine_id = "<myVMID>"
publisher = "Microsoft.GuestConfiguration"
type = "ConfigurationForLinux"
type_handler_version = "1.0"
auto_upgrade_minor_version = "true"
}
Чтобы развернуть расширение для Windows, выполните следующие действия.
resource "azurerm_virtual_machine_extension" "gc" {
name = "AzurePolicyforWindows"
virtual_machine_id = "<myVMID>"
publisher = "Microsoft.GuestConfiguration"
type = "ConfigurationforWindows"
type_handler_version = "1.0"
auto_upgrade_minor_version = "true"
}
Сообщения об ошибках
В следующей таблице перечислены возможные сообщения об ошибках, связанные с включением расширения гостевой конфигурации.
| Код ошибки |
Description |
|
NoComplianceReport |
Виртуальная машина не сообщила о данных о соответствии. |
|
GCExtensionMissing |
Отсутствует расширение конфигурации компьютера (гостевая конфигурация). |
|
ManagedIdentityMissing |
Управляемое удостоверение отсутствует. |
|
UserIdentityMissing |
Удостоверение, назначаемое пользователем, отсутствует. |
|
GCExtensionManagedIdentityMissing |
Отсутствует расширение конфигурации компьютера (гостевая конфигурация) и управляемое удостоверение. |
|
GCExtensionUserIdentityMissing |
Отсутствует расширение конфигурации компьютера (гостевая конфигурация) и удостоверение, назначаемое пользователем. |
|
GCExtensionIdentityMissing |
Отсутствует расширение конфигурации компьютера (гостевая конфигурация), управляемое удостоверение и назначаемое пользователем удостоверение. |
Дальнейшие шаги