Memigrasikan pekerja hibrid berbasis agen yang ada ke pekerja hibrid berbasis ekstensi

Penting

Pekerja Runbook Hibrida Pengguna berbasis Agen Azure Automation (Windows dan Linux) akan dihentikan pada 31 Agustus 2024 dan tidak akan didukung setelah tanggal tersebut. Anda perlu menyelesaikan migrasi Pekerja Runbook Hibrida Pengguna berbasis Agen yang sudah ada ke Pekerja berbasis Ekstensi sebelum 31 Agustus 2024. Selain itu, mulai 1 November 2023, membuat Hybrid Worker berbasis Agen baru tidak akan mungkin dilakukan. Pelajari selengkapnya.

Artikel ini menjelaskan manfaat User Hybrid Runbook Worker berbasis Ekstensi dan cara memigrasikan Hybrid Runbook Worker Pengguna berbasis Agen yang ada ke Hybrid Worker berbasis Ekstensi.

Ada dua platform penginstalan Hybrid Runbook Workers yang didukung oleh Azure Automation:

  • Pekerja runbook hibrid berbasis agen (V1) - Pekerja runbook hibrid berbasis Agen bergantung pada Agen Analitik Log.
  • Pekerja runbook hibrid berbasis ekstensi (V2) - Pekerja runbook hibrid berbasis Ekstensi menyediakan integrasi asli peran pekerja runbook hibrid melalui kerangka kerja ekstensi Komputer virtual (VM). 

Proses menjalankan runbook pada Hybrid Runbook Workers tetap sama untuk keduanya.

Manfaat Pekerja Runbook Hibrid Pengguna berbasis Ekstensi daripada pekerja berbasis Agen

Tujuan dari pendekatan berbasis Ekstensi adalah untuk menyederhanakan penginstalan dan pengelolaan Pekerja Hibrid dan menghilangkan kompleksitas saat bekerja dengan versi berbasis Agen. Berikut adalah beberapa manfaat utama:

  • Onboarding tanpa hambatan – Pendekatan berbasis Agen untuk onboarding hybrid Runbook worker tergantung pada Agen Analitik Log, yang merupakan proses multi-langkah, memakan waktu, dan rawan kesalahan. Pendekatan berbasis Ekstensi menawarkan lebih banyak keamanan dan tidak lagi bergantung pada Agen Analitik Log.

  • Kemudahan Pengelolaan – Ini menawarkan integrasi asli dengan identitas Azure Resource Manager (ARM) untuk Hybrid Runbook Worker dan memberikan fleksibilitas untuk tata kelola dalam skala besar melalui kebijakan dan templat.

  • Autentikasi berbasis ID Microsoft Entra – Menggunakan identitas terkelola yang ditetapkan sistem VM yang disediakan oleh ID Microsoft Entra. Sistem ini memusatkan kontrol dan pengelolaan identitas dan kredensial sumber daya.

  • Pengalaman terpadu - Ini menawarkan pengalaman yang identik untuk mengelola mesin yang didukung Azure dan off-Azure Arc.

  • Beberapa saluran onboarding – Anda dapat memilih untuk onboarding dan mengelola pekerja berbasis Ekstensi melalui portal Azure, cmdlet PowerShell, Bicep, templat ARM, REST API, dan Azure CLI.

  • Peningkatan Otomatis Default - Ini menawarkan Peningkatan otomatis versi minor secara default, secara signifikan mengurangi pengelolaan tetap diperbarui pada versi terbaru. Sebaiknya aktifkan Peningkatan otomatis untuk memanfaatkan pembaruan keamanan atau fitur apa pun tanpa overhead manual. Anda juga dapat menolak peningkatan otomatis kapan saja. Setiap peningkatan versi utama saat ini tidak didukung dan harus dikelola secara manual.

Catatan

Hybrid Runbook Worker berbasis Ekstensi hanya mendukung jenis User Hybrid Runbook Worker, dan tidak menyertakan System Hybrid Runbook Worker yang diperlukan untuk fitur Manajemen Pembaruan.

Prasyarat

Persyaratan minimum komputer

  • Dua core
  • RAM 4 GB
  • Komputer non-Azure harus menginstal agen Azure Koneksi ed Machine. Untuk menginstal AzureConnectedMachineAgent, lihat Koneksi komputer hibrid ke Azure dari portal Azure untuk server yang didukung Arc atau lihat Mengelola komputer virtual VMware Azure Arc untuk mengaktifkan manajemen tamu untuk VMware vSphere VM dengan dukungan Arc.
  • Identitas terkelola yang ditetapkan sistem harus diaktifkan pada komputer virtual Azure, server berkemampuan Arc, atau VMware vSphere VM berkemampuan Arc. Jika identitas terkelola yang ditetapkan sistem tidak diaktifkan, identitas tersebut akan diaktifkan sebagai bagian dari proses penginstalan melalui portal Azure.

Sistem operasi yang didukung

Windows (x64) Linux (x64)
● Windows Server 2022 (termasuk Server Core)
● Windows Server 2019 (termasuk Server Core)
● Windows Server 2016, versi 1709 dan 1803 (tidak termasuk Server Core)
● Windows Server 2012, 2012 R2 (tidak termasuk Server Core)
● Windows 10 Enterprise (termasuk multi-sesi) dan Pro
● Debian GNU/Linux 8,9,10, dan 11
● Ubuntu 18.04 LTS, 20.04 LTS, dan 22.04 LTS
● SUSE Linux Enterprise Server 15.2, dan 15.3
● Red Hat Enterprise Linux Server 7, 8, dan 9
● CentOS Linux 7 dan 8
● SUSE Linux Enterprise Server (SLES) 15
● Rocky Linux 9
● Oracle Linux 7 dan 8
Ekstensi Hybrid Worker akan mengikuti garis waktu dukungan vendor OS. 

Persyaratan Lainnya

Windows (x64) Linux (x64)
Windows PowerShell 5.1(unduh WMF 5.1). PowerShell Core tidak didukung. Pengerasan Linux tidak boleh diaktifkan. 
.NET Framework 4.6.2 atau yang lebih baru. 

Persyaratan paket untuk Linux

Paket yang diperlukan Deskripsi Versi minimum
Glibc GNU C Library 2.5-12
Openssl Pustaka OpenSSL 1.0 (TLS 1.1, dan TLS 1.2 yang didukung)
Curl Klien web cURL 7.15.5
Python-ctypes Pustaka fungsi asing untuk Python Python 2.x atau Python 3.x diperlukan
PAM Modul Autentikasi Pluggable
Paket opsional Deskripsi Versi minimum
PowerShell Core Untuk menjalankan runbook PowerShell, PowerShell Core perlu dipasang. Untuk petunjuk, lihat Memasang PowerShell Core di Linux 6.0.0

Izin untuk kredensial Hybrid Worker

Jika Hybrid Worker berbasis agen menggunakan kredensial Hybrid Worker kustom, pastikan bahwa izin berikut ditetapkan ke pengguna kustom untuk menghindari pekerjaan ditangguhkan pada Hybrid Worker berbasis ekstensi.

Jenis Sumber Daya Izin folder
Azure VM C:\Packages\Plugins\Microsoft.Azure.Automation.HybridWorker.HybridWorkerForWindows (baca dan jalankan)
Server yang didukung Arc C:\ProgramData\Azure Koneksi edMachineAgent\Tokens (baca)
C:\Packages\Plugins\Microsoft.Azure.Automation.HybridWorker.HybridWorkerForWindows (baca dan jalankan)

Catatan

  • Untuk server berkemampuan Arc, pastikan untuk menetapkan ulang izin saat dihapus setiap kali agen ARC diperbarui.
  • Hybrid Runbook Worker saat ini tidak didukung untuk Virtual Machine Scale Sets (VMSS).

Memigrasikan Hybrid Worker berbasis Agen yang ada ke Hybrid Worker berbasis Ekstensi

Untuk memanfaatkan manfaat Hybrid Worker berbasis ekstensi, Anda harus memigrasikan semua Pekerja Hibrid Pengguna berbasis agen yang ada ke Pekerja berbasis ekstensi. Mesin hybrid worker dapat berdampingan pada platform berbasis Agen (V1) dan Berbasis ekstensi (V2 ). Penginstalan berbasis ekstensi tidak memengaruhi penginstalan atau manajemen Pekerja berbasis agen.

Untuk menginstal ekstensi Hybrid worker pada hybrid worker berbasis agen yang ada, ikuti langkah-langkah berikut:

  1. Di bawah Otomatisasi Proses, pilih Grup hybrid worker, lalu pilih grup hybrid worker yang ada untuk masuk ke halaman grup Hybrid worker.

  2. Di bawah Grup hybrid worker, pilih Hybrid Workers>+ Tambahkan untuk masuk ke halaman Tambahkan mesin sebagai hybrid worker.

  3. Pilih kotak centang di samping pekerja Hibrid berbasis Agen (V1) yang ada. Jika Anda tidak melihat Hybrid Worker berbasis agen Anda tercantum, pastikan agen Azure Arc Koneksi ed Machine diinstal pada komputer. Untuk menginstal AzureConnectedMachineAgent, lihat Koneksi komputer hibrid ke Azure dari portal Azure untuk server yang didukung Arc, atau lihat Mengelola komputer virtual VMware Azure Arc untuk mengaktifkan manajemen tamu untuk VMware vSphere VM dengan dukungan Arc.

    Cuplikan layar menambahkan mesin sebagai pekerja hibrid.

  4. Pilih Tambahkan untuk menambahkan komputer ke grup.

    Kolom Platform menunjukkan pekerja Hibrid yang sama dengan berbasis Agen (V1) dan Berbasis ekstensi (V2). Setelah yakin dengan pengalaman dan penggunaan Hybrid Worker berbasis ekstensi, Anda dapat menghapus Pekerja berbasis agen.

    Cuplikan layar bidang platform memperlihatkan agen atau pekerja hibrid berbasis ekstensi.

Untuk migrasi berskala beberapa Hybrid Worker berbasis Agen, Anda juga dapat menggunakan saluran lain seperti - Bicep, templat ARM, cmdlet PowerShell, REST API, dan Azure CLI.

Mengelola ekstensi Hybrid Worker menggunakan templat Bicep & ARM, REST API, Azure CLI, dan PowerShell

Anda dapat menggunakan templat Bicep untuk membuat grup Hybrid Worker baru, membuat Azure Windows VM baru dan menambahkannya ke Grup Hybrid Worker yang sudah ada. Pelajari Bicep lebih lanjut.

Ikuti langkah-langkah yang disebutkan di bawah ini sebagai contoh:

  1. Membuat Grup Hybrid Worker.
  2. Buat server dengan dukungan Azure VM atau Arc. Atau, Anda juga dapat menggunakan server yang mendukung Azure VM atau Arc yang ada.
  3. Koneksi server dengan dukungan Azure VM atau Arc ke Grup Hybrid Worker yang dibuat di atas.
  4. Buat GUID baru dan teruskan sebagai nama Hybrid Worker.
  5. Aktifkan Identitas terkelola yang ditetapkan sistem pada VM.
  6. Instal Ekstensi Hybrid Worker pada VM.
  7. Untuk mengonfirmasi apakah ekstensi telah berhasil diinstal pada VM, di portal Azure, buka tab Ekstensi VM >dan periksa status ekstensi Hybrid Worker yang diinstal pada VM.
param automationAccount string
param automationAccountLocation string
param workerGroupName string

@description('Name of the virtual machine.')
param virtualMachineName string

@description('Username for the Virtual Machine.')
param adminUsername string

@description('Password for the Virtual Machine.')
@minLength(12)
@secure()
param adminPassword string

@description('Location for the VM.')
param vmLocation string = 'North Central US'

@description('Size of the virtual machine.')
param vmSize string = 'Standard_DS1_v2'

@description('The Windows version for the VM. This will pick a fully patched image of this given Windows version.')
@allowed([
  '2008-R2-SP1'
  '2012-Datacenter'
  '2012-R2-Datacenter'
  '2016-Nano-Server'
  '2016-Datacenter-with-Containers'
  '2016-Datacenter'
  '2019-Datacenter'
  '2019-Datacenter-Core'
  '2019-Datacenter-Core-smalldisk'
  '2019-Datacenter-Core-with-Containers'
  '2019-Datacenter-Core-with-Containers-smalldisk'
  '2019-Datacenter-smalldisk'
  '2019-Datacenter-with-Containers'
  '2019-Datacenter-with-Containers-smalldisk'
])
param osVersion string = '2019-Datacenter'

@description('DNS name for the public IP')
param dnsNameForPublicIP string

var nicName_var = 'myVMNict'
var addressPrefix = '10.0.0.0/16'
var subnetName = 'Subnet'
var subnetPrefix = '10.0.0.0/24'
var subnetRef = resourceId('Microsoft.Network/virtualNetworks/subnets', virtualNetworkName_var, subnetName)
var vmName_var = virtualMachineName
var virtualNetworkName_var = 'MyVNETt'
var publicIPAddressName_var = 'myPublicIPt'
var networkSecurityGroupName_var = 'default-NSGt'
var UniqueStringBasedOnTimeStamp = uniqueString(resourceGroup().id)

resource publicIPAddressName 'Microsoft.Network/publicIPAddresses@2020-08-01' = {
  name: publicIPAddressName_var
  location: vmLocation
  properties: {
    publicIPAllocationMethod: 'Dynamic'
    dnsSettings: {
      domainNameLabel: dnsNameForPublicIP
    }
  }
}

resource networkSecurityGroupName 'Microsoft.Network/networkSecurityGroups@2020-08-01' = {
  name: networkSecurityGroupName_var
  location: vmLocation
  properties: {
    securityRules: [
      {
        name: 'default-allow-3389'
        properties: {
          priority: 1000
          access: 'Allow'
          direction: 'Inbound'
          destinationPortRange: '3389'
          protocol: 'Tcp'
          sourceAddressPrefix: '*'
          sourcePortRange: '*'
          destinationAddressPrefix: '*'
        }
      }
    ]
  }
}

resource virtualNetworkName 'Microsoft.Network/virtualNetworks@2020-08-01' = {
  name: virtualNetworkName_var
  location: vmLocation
  properties: {
    addressSpace: {
      addressPrefixes: [
        addressPrefix
      ]
    }
    subnets: [
      {
        name: subnetName
        properties: {
          addressPrefix: subnetPrefix
          networkSecurityGroup: {
            id: networkSecurityGroupName.id
          }
        }
      }
    ]
  }
}

resource nicName 'Microsoft.Network/networkInterfaces@2020-08-01' = {
  name: nicName_var
  location: vmLocation
  properties: {
    ipConfigurations: [
      {
        name: 'ipconfig1'
        properties: {
          privateIPAllocationMethod: 'Dynamic'
          publicIPAddress: {
            id: publicIPAddressName.id
          }
          subnet: {
            id: subnetRef
          }
        }
      }
    ]
  }
  dependsOn: [

    virtualNetworkName
  ]
}

resource vmName 'Microsoft.Compute/virtualMachines@2020-12-01' = {
  name: vmName_var
  location: vmLocation
  identity: {
    type: 'SystemAssigned'
  }
  properties: {
    hardwareProfile: {
      vmSize: vmSize
    }
    osProfile: {
      computerName: vmName_var
      adminUsername: adminUsername
      adminPassword: adminPassword
    }
    storageProfile: {
      imageReference: {
        publisher: 'MicrosoftWindowsServer'
        offer: 'WindowsServer'
        sku: osVersion
        version: 'latest'
      }
      osDisk: {
        createOption: 'FromImage'
      }
    }
    networkProfile: {
      networkInterfaces: [
        {
          id: nicName.id
        }
      ]
    }
  }
}

resource automationAccount_resource 'Microsoft.Automation/automationAccounts@2021-06-22' = {
  name: automationAccount
  location: automationAccountLocation
  properties: {
    sku: {
      name: 'Basic'
    }
  }
}

resource automationAccount_workerGroupName 'Microsoft.Automation/automationAccounts/hybridRunbookWorkerGroups@2022-02-22' = {
  parent: automationAccount_resource
  name: workerGroupName
  dependsOn: [

    vmName
  ]
}

resource automationAccount_workerGroupName_testhw_UniqueStringBasedOnTimeStamp 'Microsoft.Automation/automationAccounts/hybridRunbookWorkerGroups/hybridRunbookWorkers@2021-06-22' = {
  parent: automationAccount_workerGroupName
  name: guid('testhw', UniqueStringBasedOnTimeStamp)
  properties: {
    vmResourceId: resourceId('Microsoft.Compute/virtualMachines', virtualMachineName)
  }
  dependsOn: [
    vmName
  ]
}

resource virtualMachineName_HybridWorkerExtension 'Microsoft.Compute/virtualMachines/extensions@2022-03-01' = {
  name: '${virtualMachineName}/HybridWorkerExtension'
  location: vmLocation
  properties: {
    publisher: 'Microsoft.Azure.Automation.HybridWorker'
    type: 'HybridWorkerForWindows'
    typeHandlerVersion: '1.1'
    autoUpgradeMinorVersion: true
    enableAutomaticUpgrade: true
    settings: {
      AutomationAccountURL: automationAccount_resource.properties.automationHybridServiceUrl
    }
  }
  dependsOn: [
    vmName
  ]
}

output output1 string = automationAccount_resource.properties.automationHybridServiceUrl

Menghapus Hybrid Worker berbasis agen

  1. Buka sesi PowerShell dalam mode Administrator dan jalankan perintah berikut:

     Remove-Item -Path "HKLM:\SOFTWARE\Microsoft\HybridRunbookWorker\<AutomationAccountID>\<HybridWorkerGroupName>" -Force -Verbose
    
  2. Di bagian Azure Automation Proses, pilih Grup hybrid worker lalu grup hybrid worker Anda untuk membuka halaman Grup Hybrid Worker.

  3. Di bagian Grup hybrid worker, pilih Hybrid Worker.

  4. Pilih kotak centang di samping komputer yang ingin Anda hapus dari grup hybrid worker.

  5. Pilih Hapus untuk menghapus Windows Hybrid Worker berbasis agen.

    Catatan

    • Setelah Anda menonaktifkan Private Link di akun Automation Anda, mungkin perlu waktu hingga 60 menit untuk menghapus pekerja Hybrid Runbook.
    • Setelah Anda menghapus Hybrid Worker, sertifikat autentikasi Hybrid Worker pada komputer berlaku selama 45 menit.

Langkah berikutnya