Włączanie rozszerzeń maszyn wirtualnych platformy Azure przy użyciu programu Azure PowerShell

W tym artykule przedstawiono sposób wdrażania, aktualizowania i odinstalowywania rozszerzeń maszyn wirtualnych platformy Azure obsługiwanych przez serwery z obsługą usługi Azure Arc na maszynie hybrydowej z systemem Linux lub Windows przy użyciu programu Azure PowerShell.

Uwaga

Serwery z obsługą usługi Azure Arc nie obsługują wdrażania rozszerzeń maszyn wirtualnych i zarządzania nimi na maszynach wirtualnych platformy Azure. Aby zapoznać się z maszynami wirtualnymi platformy Azure, zobacz następujący artykuł z omówieniem rozszerzenia maszyny wirtualnej.

Wymagania wstępne

Przed użyciem programu Azure PowerShell do zarządzania rozszerzeniami maszyn wirtualnych na serwerze hybrydowym zarządzanym przez serwery z obsługą usługi Azure Arc należy zainstalować Az.ConnectedMachine moduł. Te operacje zarządzania można wykonać z poziomu stacji roboczej. Nie trzeba ich uruchamiać na serwerze z obsługą usługi Azure Arc.

Uruchom następujące polecenie na serwerze z obsługą usługi Azure Arc:

Install-Module -Name Az.ConnectedMachine.

Po zakończeniu instalacji zostanie zwrócony następujący komunikat:

The installed extension 'Az.ConnectedMachine' is experimental and not covered by customer support. Please use with discretion.

Włączanie rozszerzenia

Aby włączyć rozszerzenie maszyny wirtualnej na serwerze z obsługą usługi Azure Arc, użyj polecenia New-Az Połączenie edMachineExtension z parametrami -Name, , -ResourceGroupName, -Location-MachineName, -Publisher, , iExtensionType-Settings .

Poniższy przykład umożliwia rozszerzenie maszyny wirtualnej usługi Log Analytics na serwerze z systemem Linux z obsługą usługi 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"

Aby włączyć rozszerzenie maszyny wirtualnej usługi Log Analytics na serwerze z systemem Windows z obsługą usługi Azure Arc, zmień wartość parametru -ExtensionType na "MicrosoftMonitoringAgent" w poprzednim przykładzie.

Poniższy przykład umożliwia rozszerzenie niestandardowego skryptu na serwerze z obsługą usługi 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

Poniższy przykład umożliwia rozszerzenie Microsoft Antimalware na serwerze z systemem Windows z obsługą usługi Azure Arc:

$Setting = @{ "AntimalwareEnabled" = $true }
New-AzConnectedMachineExtension -Name "IaaSAntimalware" -ResourceGroupName "myResourceGroup" -MachineName "myMachineName" -Location "regionName" -Publisher "Microsoft.Azure.Security" -Settings $Setting -ExtensionType "IaaSAntimalware"

Rozszerzenie maszyny wirtualnej usługi Key Vault

Ostrzeżenie

Klienci programu PowerShell często dodają \ element w " pliku settings.json, co spowoduje, że akvvm_service kończy się niepowodzeniem z powodu błędu: [CertificateManagementConfiguration] Failed to parse the configuration settings with:not an object.

Poniższy przykład umożliwia rozszerzenie maszyny wirtualnej usługi Key Vault na serwerze z obsługą usługi 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

Rozszerzenie maszyny wirtualnej usługi Datadog

Poniższy przykład umożliwia rozszerzenie maszyny wirtualnej usługi Datadog na serwerze z obsługą usługi 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

Lista zainstalowanych rozszerzeń

Aby uzyskać listę rozszerzeń maszyn wirtualnych na serwerze z obsługą usługi Azure Arc, użyj polecenia Get-Az Połączenie edMachineExtension z parametrami -MachineName i -ResourceGroupName .

Przykład:

Get-AzConnectedMachineExtension -ResourceGroupName myResourceGroup -MachineName myMachineName

Name    Location  PropertiesType        ProvisioningState
----    --------  --------------        -----------------
custom  westus2   CustomScriptExtension Succeeded

Aktualizowanie konfiguracji rozszerzenia

Aby ponownie skonfigurować zainstalowane rozszerzenie, możesz użyć polecenia cmdlet Update-Az Połączenie edMachineExtension z -Nameparametrami , -MachineName, -ResourceGroupNamei -Settings .

Zapoznaj się z artykułem referencyjnym dla polecenia cmdlet, aby zrozumieć różne metody dostarczania zmian, które mają zostać wprowadzone w rozszerzeniu.

Uaktualnianie rozszerzenia

Po wydaniu nowej wersji obsługiwanego rozszerzenia maszyny wirtualnej można uaktualnić ją do tej najnowszej wersji. Aby uaktualnić rozszerzenie maszyny wirtualnej, użyj polecenia Update-Az Połączenie edExtension z -MachineNameparametrami , -ResourceGroupNamei -ExtensionTarget .

Dla parametru -ExtensionTarget należy określić rozszerzenie i najnowszą dostępną wersję. Aby dowiedzieć się, jaka jest najnowsza dostępna wersja, możesz uzyskać te informacje na stronie Rozszerzenia wybranego serwera z obsługą usługi Arc w witrynie Azure Portal lub uruchamiając polecenie Get-AzVMExtensionImage. Można określić wiele rozszerzeń w jednym żądaniu uaktualnienia, podając rozdzieloną przecinkami listę rozszerzeń zdefiniowanych przez wydawcę i typ (oddzielony kropką) oraz wersję docelową dla każdego rozszerzenia, jak pokazano w poniższym przykładzie.

Aby uaktualnić rozszerzenie agenta usługi Log Analytics dla systemu Windows z nowszą wersją, uruchom następujące polecenie:

Update-AzConnectedExtension -MachineName "myMachineName" -ResourceGroupName "myResourceGroup" -ExtensionTarget '{\"Microsoft.EnterpriseCloud.Monitoring.MicrosoftMonitoringAgent\":{\"targetVersion\":\"1.0.18053.0\"}}'

W dowolnym momencie możesz przejrzeć wersję zainstalowanych rozszerzeń maszyn wirtualnych, uruchamiając polecenie Get-Az Połączenie edMachineExtension. Wartość TypeHandlerVersion właściwości reprezentuje wersję rozszerzenia.

Usuwanie rozszerzeń

Aby usunąć zainstalowane rozszerzenie maszyny wirtualnej na serwerze z obsługą usługi Azure Arc, użyj polecenia Remove-Az Połączenie edMachineExtension z parametrami -Name-MachineName i -ResourceGroupName .

Aby na przykład usunąć rozszerzenie maszyny wirtualnej usługi Log Analytics dla systemu Linux, uruchom następujące polecenie:

Remove-AzConnectedMachineExtension -MachineName myMachineName -ResourceGroupName myResourceGroup -Name OmsAgentforLinux

Następne kroki

  • Rozszerzenia maszyn wirtualnych można wdrażać, zarządzać nimi i usuwać przy użyciu interfejsu wiersza polecenia platformy Azure, z witryny Azure Portal lub szablonów usługi Azure Resource Manager.

  • Informacje dotyczące rozwiązywania problemów można znaleźć w przewodniku Rozwiązywanie problemów z rozszerzeniami maszyn wirtualnych.