Mengaktifkan ekstensi Azure VM dengan menggunakan Azure PowerShell

Artikel ini menjelaskan cara menyebarkan, memperbarui, dan menghapus instalan ekstensi komputer virtual (VM) di server yang didukung Azure Arc dengan menggunakan Azure PowerShell.

Prasyarat

  • Komputer dengan Azure PowerShell. Untuk instruksi, lihat Menginstal dan mengonfigurasi Azure PowerShell.

  • Modul Az.ConnectedMachine. Sebelum Anda menggunakan Azure PowerShell untuk mengelola ekstensi VM di server hibrid yang dikelola oleh server berkemampuan Azure Arc, Anda perlu menginstal modul ini.

    Anda dapat melakukan operasi manajemen ini dari stasiun kerja Anda, bukan di server dengan dukungan Azure Arc.

    Jalankan perintah berikut untuk menginstal modul Az.ConnectedMachine:

    Install-Module -Name Az.ConnectedMachine
    

Mengaktifkan ekstensi

Untuk mengaktifkan ekstensi VM di server yang didukung Azure Arc Anda, gunakan New-AzConnectedMachineExtension dengan parameter , , -Name, -ResourceGroupName-MachineName, -Location, --Publisher, dan ExtensionType-Settings.

Contoh ini memungkinkan Ekstensi Skrip Kustom di server dengan dukungan 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

Contoh ini memungkinkan ekstensi Microsoft Antimalware di server Windows dengan dukungan Azure Arc:

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

Contoh ini mengaktifkan ekstensi VM Key Vault di server dengan dukungan Azure Arc:

Peringatan

Menambahkan \ ke " dalam file settings.json dapat menyebabkan akvvm_service gagal dengan kesalahan berikut: [CertificateManagementConfiguration] Failed to parse the configuration settings with:not an object.

Meskipun pengguna PowerShell biasanya menggunakan \" urutan untuk menghindari tanda kutip di blok kode lain, Anda harus menghindari pemformatan tersebut dalam file settings.json.

# 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

Contoh ini memungkinkan ekstensi VM Datadog di server dengan dukungan 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

Petunjuk / Saran

Banyak ekstensi lain yang didukung di server dengan dukungan Arc. Untuk detailnya, lihat Manajemen ekstensi komputer virtual dengan server dengan dukungan Azure Arc.

Buat daftar ekstensi yang dipasang

Untuk mendapatkan daftar ekstensi VM di server yang memiliki Azure Arc, gunakan Get-AzConnectedMachineExtension dengan parameter -MachineName dan -ResourceGroupName.

Get-AzConnectedMachineExtension -ResourceGroupName myResourceGroup -MachineName myMachineName

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

Memperbarui konfigurasi ekstensi

Untuk mengonfigurasi ulang ekstensi yang diinstal, Anda dapat menggunakan cmdlet dengan parameter Update-AzConnectedMachineExtension, -Name, -MachineName, -ResourceGroupName, dan -Settings.

Untuk detail lebih lanjut, lihat Update-AzConnectedMachineExtension.

Memutakhirkan ekstensi

Saat versi baru dari ekstensi mesin virtual yang didukung dirilis, Anda dapat meningkatkannya ke rilis terbaru tersebut. Untuk meningkatkan ekstensi VM, gunakan Update-AzConnectedExtension dengan parameter -MachineName, -ResourceGroupName, dan -ExtensionTarget.

Untuk parameter -ExtensionTarget, Anda perlu menentukan ekstensi dan versi terbaru yang tersedia. Untuk menentukan versi terbaru yang tersedia untuk ekstensi, buka halaman Ekstensi untuk server berkemampuan Azure Arc yang dipilih di portal Azure atau jalankan Get-AzVMExtensionImage. Anda dapat menentukan beberapa ekstensi dalam satu permintaan peningkatan dengan menyediakan keduanya:

  • Daftar ekstensi yang dipisahkan koma, yang ditentukan oleh penerbit dan jenisnya (dipisahkan oleh titik)
  • Versi target untuk setiap ekstensi

Anda dapat meninjau versi ekstensi VM yang diinstal kapan saja dengan menjalankan perintah Get-AzConnectedMachineExtension. Nilai properti TypeHandlerVersion mewakili versi ekstensi.

Petunjuk / Saran

Banyak ekstensi VM dapat dikonfigurasi untuk peningkatan otomatis.

Menghapus ekstensi

Untuk menghapus ekstensi VM yang diinstal pada server yang diaktifkan Azure Arc, gunakan Remove-AzConnectedMachineExtension dengan parameter -Name, -MachineName, dan -ResourceGroupName.