Rozszerzenie azure Machine Configuration
Rozszerzenie Konfiguracja maszyny wykonuje operacje inspekcji i konfiguracji wewnątrz maszyn wirtualnych.
Aby sprawdzić zasady na maszynach wirtualnych, takie jak definicje punktów odniesienia zabezpieczeń obliczeń platformy Azure dla systemów Linux i Windows, należy zainstalować rozszerzenie Konfiguracja maszyny.
Wymagania wstępne
Aby umożliwić maszynie wirtualnej uwierzytelnianie w usłudze Machine Configuration, 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 Konfiguracja maszyny jest taka sama jak udokumentowana obsługa systemu operacyjnego dla kompleksowego rozwiązania.
Łączność z Internetem
Agent zainstalowany przez rozszerzenie Konfiguracja maszyny musi mieć możliwość uzyskania dostępu do pakietów zawartości wymienionych przez przypisania konfiguracji gościa i raportowania stanu do usługi Machine Configuration. 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 usługi Azure Mchine— komunikacja za pośrednictwem usługi Azure Private Link
- Używanie prywatnych punktów końcowych dla usługi Azure Storage
Instalowanie rozszerzenia
Rozszerzenie Machine Configuration 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 Konfiguracja maszyny zapoznaj się z poniższymi zagadnieniami.
Nazwa wystąpienia. Podczas instalowania rozszerzenia Konfiguracja 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 Machine Configuration.Automatyczne uaktualnianie. Rozszerzenie Konfiguracja 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 Konfiguracja 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 Konfiguracja komputera. 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 Konfiguracja komputera (konfiguracja gościa). |
ManagedIdentityMissing | Brak tożsamości zarządzanej. |
UserIdentityMissing | Brak tożsamości przypisanej przez użytkownika. |
GCExtensionManagedIdentityMissing | Brak rozszerzenia konfiguracji maszyny (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 Konfiguracja maszyny, zobacz Omówienie konfiguracji maszyny platformy Azure.
- 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.