Azure PowerShell kullanarak Azure VM uzantılarını etkinleştirme

Bu makalede, Azure Arc özellikli sunucular tarafından desteklenen Azure VM uzantılarını Azure PowerShell kullanarak Linux veya Windows karma makineye dağıtma, güncelleştirme ve kaldırma işlemleri gösterilmektedir.

Not

Azure Arc özellikli sunucular, Vm uzantılarını Azure sanal makinelerine dağıtmayı ve yönetmeyi desteklemez. Azure VM'leri için aşağıdaki VM uzantısına genel bakış makalesine bakın.

Önkoşullar

Azure Arc özellikli sunucular tarafından yönetilen karma sunucunuzda VM uzantılarını yönetmek için Azure PowerShell kullanmadan önce modülü yüklemeniz Az.ConnectedMachine gerekir. Bu yönetim işlemleri iş istasyonunuzdan gerçekleştirilebilir; bunları Azure Arc özellikli sunucuda çalıştırmanız gerekmez.

Azure Arc özellikli sunucunuzda aşağıdaki komutu çalıştırın:

Install-Module -Name Az.ConnectedMachine.

Yükleme tamamlandığında aşağıdaki ileti döndürülür:

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

Uzantıyı etkinleştirme

Azure Arc özellikli sunucunuzda bir VM uzantısını etkinleştirmek için New-AzConnectedMachineExtension komutunu , -ResourceGroupName, -MachineName, -Location, , -Publisher-ExtensionType ve -Settings parametreleriyle -Namekullanın.

Aşağıdaki örnek, Azure Arc özellikli linux sunucusunda Log Analytics VM uzantısını etkinleştirir:

$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"

Azure Arc özellikli bir Windows sunucusunda Log Analytics VM uzantısını etkinleştirmek için, önceki örnekte parametresinin -ExtensionType"MicrosoftMonitoringAgent" değerini olarak değiştirin.

Aşağıdaki örnek, Azure Arc özellikli bir sunucuda Özel Betik Uzantısı'nı etkinleştirir:

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

Aşağıdaki örnek, Azure Arc özellikli Windows sunucusunda Microsoft Antimalware uzantısını etkinleştirir:

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

Key Vault VM uzantısı

Uyarı

PowerShell istemcileri genellikle settings.json dosyasına ekler \" ve bu da akvvm_service şu hatayla başarısız olmasını sağlar: [CertificateManagementConfiguration] Failed to parse the configuration settings with:not an object.

Aşağıdaki örnek, Azure Arc özellikli bir sunucuda Key Vault VM uzantısını etkinleştirir:

# 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

Yüklü uzantıları listeleme

Azure Arc özellikli sunucunuzdaki VM uzantılarının listesini almak için ve -ResourceGroupName parametreleriyle Get-AzConnectedMachineExtension-MachineName komutunu kullanın.

Örnek:

Get-AzConnectedMachineExtension -ResourceGroupName myResourceGroup -MachineName myMachineName

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

Uzantı yapılandırmasını güncelleştirme

Yüklü bir uzantıyı yeniden yapılandırmak için, , , -ResourceGroupName-MachineNameve -Settings parametreleriyle Update-AzConnectedMachineExtension cmdlet'ini -Namekullanabilirsiniz.

Uzantıda istediğiniz değişiklikleri sağlamak için farklı yöntemleri anlamak için cmdlet'in başvuru makalesine bakın.

Uzantıyı yükseltme

Desteklenen bir VM uzantısının yeni bir sürümü yayımlandığında, bunu en son sürüme yükseltebilirsiniz. Bir VM uzantısını yükseltmek için, , -ResourceGroupNameve -ExtensionTarget parametreleriyle -MachineNameUpdate-AzConnectedExtension kullanın.

parametresi için -ExtensionTarget uzantıyı ve kullanılabilir en son sürümü belirtmeniz gerekir. En son sürümün ne olduğunu öğrenmek için bu bilgileri Azure portal seçili Arc özellikli sunucunun Uzantılar sayfasından veya Get-AzVMExtensionImage komutunu çalıştırarak alabilirsiniz. Aşağıdaki örnekte gösterildiği gibi, tek bir yükseltme isteğinde birden çok uzantıyı belirtmek için uzantıların virgülle ayrılmış bir listesini, yayımcıları ve türleri (noktayla ayrılmış) ve her uzantının hedef sürümünü tanımlayarak belirtebilirsiniz.

Daha yeni bir sürüme sahip Windows log analytics aracı uzantısını yükseltmek için aşağıdaki komutu çalıştırın:

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

Get-AzConnectedMachineExtension komutunu çalıştırarak yüklü VM uzantılarının sürümünü istediğiniz zaman gözden geçirebilirsiniz. Özellik TypeHandlerVersion değeri uzantının sürümünü temsil eder.

Uzantıları kaldırma

Azure Arc özellikli sunucunuzda yüklü bir VM uzantısını kaldırmak için, ve -MachineName-ResourceGroupName parametreleriyle -NameRemove-AzConnectedMachineExtension komutunu kullanın.

Örneğin, Linux için Log Analytics VM uzantısını kaldırmak için aşağıdaki komutu çalıştırın:

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

Sonraki adımlar