Rozszerzenie konfiguracji maszyny automatycznej platformy Azure
Rozszerzenie konfiguracji maszyny to funkcja usługi Azure Automanage, która wykonuje operacje inspekcji i konfiguracji na maszynach wirtualnych.
Aby sprawdzić zasady wewnątrz maszyn wirtualnych, takie jak definicje punktów odniesienia zabezpieczeń obliczeń platformy Azure dla systemów Linux i Windows, należy zainstalować rozszerzenie konfiguracji maszyny.
Wymagania wstępne
Aby umożliwić maszynie wirtualnej uwierzytelnianie w usłudze konfiguracji maszyny, maszyna wirtualna musi mieć tożsamość zarządzaną przypisaną przez system. Możesz spełnić wymagania dotyczące tożsamości maszyny wirtualnej, ustawiając "type": "SystemAssigned"
właściwość :
"identity": {
"type": "SystemAssigned"
}
Systemy operacyjne
Obsługa systemu operacyjnego dla rozszerzenia konfiguracji maszyny jest taka sama jak udokumentowana obsługa systemu operacyjnego dla kompleksowego rozwiązania.
Łączność z Internetem
Agent zainstalowany przez rozszerzenie konfiguracji maszyny musi być w stanie uzyskać dostęp do pakietów zawartości wymienionych przez przypisania konfiguracji gościa i zgłosić stan do usługi konfiguracji maszyny. Maszyna wirtualna może łączyć się przy użyciu wychodzącego protokołu HTTPS za pośrednictwem portu TCP 443 lub połączenia udostępnianego za pośrednictwem sieci prywatnej.
Aby dowiedzieć się więcej o sieci prywatnej, zobacz następujące artykuły:
- Konfiguracja maszyny azure Automanage — komunikacja za pośrednictwem usługi Azure Private Link
- Używanie prywatnych punktów końcowych dla usługi Azure Storage
Instalowanie rozszerzenia
Rozszerzenie konfiguracji maszyny można zainstalować i wdrożyć bezpośrednio z poziomu interfejsu wiersza polecenia platformy Azure lub programu PowerShell. Szablony wdrażania są również dostępne dla usługi Azure Resource Manager (ARM), Bicep i Terraform. Aby uzyskać szczegółowe informacje na temat szablonu wdrożenia, zobacz Microsoft.GuestConfiguration GuestConfigurationAssignments.
Uwaga
W poniższych przykładach wdrożenia zastąp <placeholder>
wartości parametrów określonymi wartościami konfiguracji.
Uwagi dotyczące wdrażania
Przed zainstalowaniem i wdrożeniem rozszerzenia konfiguracji maszyny zapoznaj się z poniższymi zagadnieniami.
Nazwa wystąpienia. Podczas instalowania rozszerzenia konfiguracji maszyny nazwa wystąpienia rozszerzenia musi być ustawiona na
AzurePolicyforWindows
lubAzurePolicyforLinux
. Opisane wcześniej zasady definicji punktu odniesienia zabezpieczeń wymagają tych określonych ciągów.Wersje. Domyślnie wszystkie wdrożenia są aktualizowane do najnowszej wersji. Wartość
autoUpgradeMinorVersion
właściwości jest domyślnie ustawiona,true
chyba że określono inaczej. Ta funkcja pomaga złagodzić obawy dotyczące aktualizowania kodu po wydaniu nowych wersji rozszerzenia konfiguracji maszyny.Automatyczne uaktualnianie. Rozszerzenie konfiguracji maszyny
enableAutomaticUpgrade
obsługuje właściwość . Gdy ta właściwość jest ustawiona natrue
wartość , platforma Azure automatycznie uaktualnia do najnowszej wersji rozszerzenia, ponieważ przyszłe wersje staną się dostępne. Aby uzyskać więcej informacji, zobacz Automatyczne uaktualnianie rozszerzeń dla maszyn wirtualnych i zestawów skalowania maszyn wirtualnych na platformie Azure.Azure Policy. Aby wdrożyć najnowszą wersję rozszerzenia konfiguracji maszyny na dużą skalę, w tym wymagania dotyczące tożsamości, wykonaj kroki opisane w temacie Tworzenie przypisania zasad, aby zidentyfikować niezgodne zasoby. Utwórz następujące przypisanie za pomocą usługi Azure Policy:
Inne właściwości. Nie musisz uwzględniać żadnych ustawień ani właściwości ustawień chronionych w rozszerzeniu konfiguracji maszyny. Agent pobiera tę klasę informacji z zasobów przypisywania konfiguracji gościa interfejsu API REST platformy Azure. Na przykład
ConfigurationUri
właściwości ,Mode
iConfigurationSetting
są zarządzane dla każdej konfiguracji, a nie w rozszerzeniu maszyny wirtualnej.
Interfejs wiersza polecenia platformy Azure
Aby wdrożyć rozszerzenie dla systemu Linux:
az vm extension set --publisher Microsoft.GuestConfiguration --name ConfigurationForLinux --extension-instance-name AzurePolicyforLinux --resource-group <myResourceGroup> --vm-name <myVM> --enable-auto-upgrade true
Aby wdrożyć rozszerzenie dla systemu Windows:
az vm extension set --publisher Microsoft.GuestConfiguration --name ConfigurationforWindows --extension-instance-name AzurePolicyforWindows --resource-group <myResourceGroup> --vm-name <myVM> --enable-auto-upgrade true
PowerShell
Aby wdrożyć rozszerzenie dla systemu Linux:
Set-AzVMExtension -Publisher 'Microsoft.GuestConfiguration' -ExtensionType 'ConfigurationForLinux' -Name 'AzurePolicyforLinux' -TypeHandlerVersion 1.0 -ResourceGroupName '<myResourceGroup>' -Location '<myLocation>' -VMName '<myVM>' -EnableAutomaticUpgrade $true
Aby wdrożyć rozszerzenie dla systemu Windows:
Set-AzVMExtension -Publisher 'Microsoft.GuestConfiguration' -ExtensionType 'ConfigurationforWindows' -Name 'AzurePolicyforWindows' -TypeHandlerVersion 1.0 -ResourceGroupName '<myResourceGroup>' -Location '<myLocation>' -VMName '<myVM>' -EnableAutomaticUpgrade $true
Szablon ARM
Aby wdrożyć rozszerzenie dla systemu 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": {}
}
}
Aby wdrożyć rozszerzenie dla systemu 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": {}
}
}
Szablon Bicep
Aby wdrożyć rozszerzenie dla systemu 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: {}
}
}
Aby wdrożyć rozszerzenie dla systemu 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: {}
}
}
Szablon narzędzia Terraform
Aby wdrożyć rozszerzenie dla systemu 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"
}
Aby wdrożyć rozszerzenie dla systemu 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"
}
Komunikaty o błędach
W poniższej tabeli wymieniono możliwe komunikaty o błędach związane z włączaniem rozszerzenia Konfiguracji gościa.
Kod błędu | opis |
---|---|
NoComplianceReport | Maszyna wirtualna nie zgłosiła danych zgodności. |
GCExtensionMissing | Brak rozszerzenia konfiguracji maszyny (konfiguracji gościa). |
ManagedIdentityMissing | Brak tożsamości zarządzanej. |
UserIdentityMissing | Brak tożsamości przypisanej przez użytkownika. |
GCExtensionManagedIdentityMissing | Brak rozszerzenia konfiguracji komputera (konfiguracji gościa) i tożsamości zarządzanej. |
GCExtensionUserIdentityMissing | Brak rozszerzenia konfiguracji komputera (konfiguracji gościa) i tożsamości przypisanej przez użytkownika. |
GCExtensionIdentityMissing | Brak rozszerzenia konfiguracji maszyny (konfiguracji gościa), tożsamości zarządzanej i tożsamości przypisanej przez użytkownika. |
Następne kroki
- Aby uzyskać więcej informacji na temat rozszerzenia konfiguracji maszyny, zobacz Omówienie funkcji konfiguracji maszyny w usłudze Azure Automanage.
- Aby uzyskać więcej informacji na temat sposobu działania agenta i rozszerzeń systemu Linux, zobacz Rozszerzenia i funkcje maszyny wirtualnej dla systemu Linux.
- Aby uzyskać więcej informacji na temat sposobu działania agenta gościa systemu Windows i rozszerzeń, zobacz Rozszerzenia i funkcje maszyny wirtualnej dla systemu Windows.
- Aby zainstalować agenta gościa systemu Windows, zobacz Omówienie agenta maszyny wirtualnej platformy Azure.
- Aby zainstalować agenta systemu Linux, zobacz Omówienie i używanie agenta systemu Linux platformy Azure.