Dela via


Aktivera Azure VM-tillägg med hjälp av Azure PowerShell

Den här artikeln beskriver hur du distribuerar, uppdaterar och avinstallerar Tillägg för virtuella Azure-datorer (VM) som stöds av Azure Arc-aktiverade servrar. Den visar hur du utför dessa uppgifter på en Linux- eller Windows-hybriddator med hjälp av Azure PowerShell.

Kommentar

Azure Arc-aktiverade servrar stöder inte distribution och hantering av VM-tillägg till virtuella Azure-datorer. Information om virtuella Azure-datorer finns i översiktsartikeln för VM-tillägg.

Förutsättningar

  • En dator med Azure PowerShell. Anvisningar finns i Installera och konfigurera Azure PowerShell.

  • Az.ConnectedMachine-modulen. Innan du använder Azure PowerShell för att hantera VM-tillägg på din hybridserver som hanteras av Azure Arc-aktiverade servrar måste du installera den här modulen.

    Du kan utföra dessa hanteringsåtgärder från din arbetsstation. Du behöver inte köra dem på den Azure Arc-aktiverade servern.

    Kör följande kommando på din Azure Arc-aktiverade server:

Install-Module -Name Az.ConnectedMachine

Aktivera ett tillägg

Om du vill aktivera ett VM-tillägg på din Azure Arc-aktiverade server använder du New-AzConnectedMachineExtension parametrarna -Name, , -MachineName-ResourceGroupName, -Location, -Publisher, -ExtensionTypeoch -Settings .

I följande exempel aktiveras tillägget för anpassat skript på en Azure Arc-aktiverad server:

$Setting = @{ "commandToExecute" = "powershell.exe -c Get-Process" }
New-AzConnectedMachineExtension -Name "custom" -ResourceGroupName "myResourceGroup" -MachineName "myMachineName" -Location "regionName" -Publisher "Microsoft.Compute"  -Settings $Setting -ExtensionType CustomScriptExtension

I följande exempel aktiveras Microsoft Antimalware-tillägget på en Azure Arc-aktiverad Windows-server:

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

Key Vault VM-tillägg

Varning

Om du lägger \ till " i settings.json-filen misslyckas akvvm_service följande fel: [CertificateManagementConfiguration] Failed to parse the configuration settings with:not an object.

Även om PowerShell-användare ofta använder sekvensen \" för att undkomma citattecken i andra kodblock bör du undvika den formateringen i settings.json-filen.

I följande exempel aktiveras tillägget för den virtuella Key Vault-datorn på en Azure Arc-aktiverad server:

# 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 VM-tillägg

I följande exempel aktiveras datadog VM-tillägget på en Azure Arc-aktiverad server:

$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

Listtillägg installerade

Om du vill hämta en lista över de virtuella datortilläggen på din Azure Arc-aktiverade server använder du Get-AzConnectedMachineExtension med parametrarna -MachineName och -ResourceGroupName .

Här är ett exempel:

Get-AzConnectedMachineExtension -ResourceGroupName myResourceGroup -MachineName myMachineName

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

Uppdatera en tilläggskonfiguration

Om du vill konfigurera om ett installerat tillägg kan du använda cmdleten Update-AzConnectedMachineExtension med parametrarna -Name, -MachineName, -ResourceGroupNameoch -Settings .

Information om metoderna för att tillhandahålla de ändringar som du vill använda i tillägget finns i referensartikeln för cmdleten.

Uppgradera tillägg

När en ny version av ett vm-tillägg som stöds släpps kan du uppgradera det till den senaste versionen. Om du vill uppgradera ett VM-tillägg använder du Update-AzConnectedExtension parametrarna -MachineName, -ResourceGroupNameoch -ExtensionTarget .

För parametern -ExtensionTarget måste du ange tillägget och den senaste tillgängliga versionen. Om du vill fastställa den senaste versionen som är tillgänglig för ett tillägg går du till sidan Tillägg för den valda Azure Arc-aktiverade servern i Azure Portal eller kör Get-AzVMExtensionImage. Du kan ange flera tillägg i en enda uppgraderingsbegäran genom att ange båda:

  • En kommaavgränsad lista över tillägg som definieras av deras utgivare och typ (avgränsade med en punkt)
  • Målversionen för varje tillägg

Du kan granska versionen av installerade VM-tillägg när som helst genom att köra kommandot Get-AzConnectedMachineExtension. Egenskapsvärdet TypeHandlerVersion representerar versionen av tillägget.

Ta bort tillägg

Om du vill ta bort ett installerat VM-tillägg på din Azure Arc-aktiverade server använder du Remove-AzConnectedMachineExtension parametrarna -Name, -MachineNameoch -ResourceGroupName .