Menjalankan runbook Azure Automation di Hybrid Runbook Worker

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.
  • Akun Run As Azure Automation akan dihentikan pada 30 September 2023 dan akan diganti dengan Identitas Terkelola. Sebelum tanggal tersebut, Anda harus mulai memigrasikan runbook untuk menggunakan identitas terkelola. Untuk informasi selengkapnya, lihat migrasi dari akun Run As yang ada ke identitas terkelola untuk mulai memigrasikan runbook dari akun Run As ke identitas terkelola sebelum 30 September 2023.

Runbook yang berjalan di Hybrid Runbook Worker biasanya mengelola sumber daya di komputer lokal atau terhadap sumber daya di lingkungan lokal tempat pekerja disebarkan. Runbook di Azure Automation biasanya mengelola sumber daya di cloud Azure. Meskipun digunakan secara berbeda, runbook yang berjalan di Azure Automation dan runbook yang berjalan di Hybrid Runbook Worker memiliki struktur yang sama.

Saat Anda menulis runbook untuk dijalankan di Hybrid Runbook Worker, Anda harus mengedit dan menguji runbook pada mesin yang menghosting pekerja. Mesin host memiliki semua modul PowerShell dan akses jaringan yang diperlukan untuk mengelola sumber daya lokal. Setelah menguji runbook di mesin Hybrid Runbook Worker, Anda kemudian dapat mengunggahnya ke lingkungan Azure Automation, tempat runbook tersebut dapat dijalankan di pekerja.

Rencana untuk layanan Azure yang dilindungi oleh firewall

Mengaktifkan Azure Firewall di Azure Storage, Azure Key Vault, atau Azure SQL memblokir akses dari runbook Azure Automation untuk layanan tersebut. Akses akan diblokir bahkan ketika pengecualian firewall diaktifkan untuk mengizinkan layanan Microsoft tepercaya, karena Automation bukan bagian dari daftar layanan tepercaya. Dengan firewall yang diaktifkan, akses hanya dapat dilakukan dengan menggunakan Hybrid Runbook Worker dan titik akhir layanan jaringan virtual.

Merencanakan perilaku pekerjaan runbook

Azure Automation menangani pekerjaan di Hybrid Runbook Worker secara berbeda dari pekerjaan yang dijalankan di kotak pasir cloud. Jika Anda memiliki runbook yang berjalan lama, pastikan runbook tahan terhadap kemungkinan dihidupkan ulang. Untuk detail perilaku pekerjaan, lihat Pekerjaan Hybrid Runbook Worker.

Akun layanan

Windows Hybrid Worker

Pekerjaan untuk Hybrid Runbook Workers berjalan di bawah akun Sistem lokal.

Catatan

  • Runbook PowerShell 5.1, PowerShell 7.1(pratinjau), Python 2.7, dan Python 3.8 didukung pada Windows Hybrid Runbook Worker berbasis ekstensi dan berbasis agen. Untuk pekerja berbasis agen, pastikan versi windows Hybrid worker adalah 7.3.12960 atau lebih tinggi.
  • Runbook PowerShell 7.2 dan Python 3.10 (pratinjau) hanya didukung pada Windows Hybrid Worker berbasis ekstensi. Pastikan versi ekstensi Windows Hybrid worker adalah 1.1.11 atau lebih tinggi.

Catatan

Untuk membuat variabel lingkungan di sistem Windows, ikuti langkah-langkah berikut:

  1. Buka Panel Kontrol> System>Advanced System Pengaturan.
  2. Di Properti Sistem pilih Variabel lingkungan.
  3. Di Variabel sistem, pilih Baru.
  4. Berikan Nama variabel dan Nilai variabel, lalu pilih OK.
  5. Mulai ulang VM atau keluar dari pengguna saat ini dan masuk untuk menerapkan perubahan variabel lingkungan.

PowerShell 7.2

Untuk menjalankan runbook PowerShell 7.2 pada Windows Hybrid Worker, instal PowerShell di Hybrid Worker. Lihat Menginstal PowerShell di Windows.

Setelah penginstalan PowerShell 7.2 selesai, buat variabel lingkungan dengan Nama variabel sebagai nilai powershell_7_2_path dan Variabel sebagai lokasi PowerShell yang dapat dieksekusi. Mulai ulang Hybrid Runbook Worker setelah variabel lingkungan berhasil dibuat.

PowerShell 7.1

Untuk menjalankan runbook PowerShell 7.1 pada Windows Hybrid Worker, instal PowerShell di Hybrid Worker. Lihat Menginstal PowerShell di Windows. Pastikan untuk menambahkan file PowerShell ke variabel lingkungan PATH dan mulai ulang Hybrid Runbook Worker setelah penginstalan.

Python 3.10

Untuk menjalankan runbook Python 3.10 pada Windows Hybrid Worker, instal Python di Hybrid Worker. Lihat Menginstal Python di Windows.

Setelah penginstalan Python 3.10 selesai, buat variabel lingkungan dengan Nama variabel sebagai nilai python_3_10_path dan Variabel sebagai lokasi Python yang dapat dieksekusi. Mulai ulang Hybrid Runbook Worker setelah variabel lingkungan berhasil dibuat.

Python 3.8

Untuk menjalankan runbook Python 3.8 pada Windows Hybrid Worker, instal Python di Hybrid Worker. Lihat Menginstal Python di Windows. Buat variabellingkungan PYTHON_3_PATH untuk runbook Python 3.8 dan pastikan untuk menambahkan lokasi Python yang dapat dieksekusi sebagai nilai Variabel. Mulai ulang Hybrid Runbook Worker setelah variabel lingkungan berhasil dibuat.

Jika file Python yang dapat dieksekusi berada di lokasi default C:\WPy64-3800\python-3.8.0.amd64\python.exe, maka Anda tidak perlu membuat variabel lingkungan.

Python 2.7

Untuk menjalankan runbook Python 2.7 pada Windows Hybrid Worker, instal Python di Hybrid Worker. Lihat Menginstal Python di Windows. Buat variabellingkungan PYTHON_2_PATH untuk runbook Python 2.7 dan pastikan untuk menambahkan lokasi file Python yang dapat dieksekusi sebagai nilai Variabel. Mulai ulang Hybrid Runbook Worker setelah variabel lingkungan berhasil dibuat.

Jika file yang dapat dieksekusi Python berada di lokasi default C:\Python27\python.exe, maka Anda tidak perlu membuat variabel lingkungan.

Linux Hybrid Worker

Catatan

  • Runbook PowerShell 5.1, PowerShell 7.1(pratinjau), Python 2.7, Python 3.8 didukung pada Linux Hybrid Runbook Worker berbasis ekstensi dan berbasis agen. Untuk pekerja berbasis agen, pastikan versi pekerja Linux Hybrid Runbook adalah 1.7.5.0 atau lebih tinggi.
  • Runbook PowerShell 7.2 dan Python 3.10 (pratinjau) hanya didukung pada Linux Hybrid Workers berbasis ekstensi. Pastikan versi ekstensi Linux Hybrid worker adalah 1.1.11 atau lebih tinggi.

Catatan

Untuk membuat variabel lingkungan di sistem Linux, ikuti langkah-langkah berikut:

  1. Buka /etc/environment.
  2. Buat variabel Lingkungan baru dengan menambahkan VARIABLE_NAME="variable_value" di baris baru di /etc/environment (VARIABLE_NAME adalah nama variabel Lingkungan baru dan variable_value mewakili nilai yang akan ditetapkan).
  3. Mulai ulang VM atau keluar dari pengguna saat ini dan masuk setelah menyimpan perubahan ke /etc/environment untuk menerapkan perubahan variabel lingkungan.

PowerShell 7.2

Untuk menjalankan runbook PowerShell 7.2 di Linux Hybrid Worker, instal file PowerShell di Hybrid Worker. Untuk informasi selengkapnya, lihat Menginstal PowerShell di Linux.

Setelah penginstalan PowerShell 7.2 selesai, buat variabel lingkungan dengan Nama variabel sebagai nilai powershell_7_2_path dan Variabel sebagai lokasi file PowerShell yang dapat dieksekusi. Mulai ulang Hybrid Runbook Worker setelah variabel lingkungan berhasil dibuat.

Python 3.10

Untuk menjalankan runbook Python 3.10 pada Linux Hybrid Worker, instal Python di Hybrid Worker. Untuk informasi selengkapnya, lihat Menginstal Python 3.10 di Linux.

Setelah penginstalan Python 3.10 selesai, buat variabel lingkungan dengan Nama variabel sebagai nilai python_3_10_path dan Variabel sebagai lokasi file Python yang dapat dieksekusi. Mulai ulang Hybrid Runbook Worker setelah variabel lingkungan berhasil dibuat.

Python 3.8

Untuk menjalankan runbook Python 3.8 pada Linux Hybrid Worker, instal Python di Hybrid Worker. Pastikan untuk menambahkan file Python yang dapat dieksekusi ke variabel lingkungan PATH dan mulai ulang Hybrid Runbook Worker setelah penginstalan.

Python 2.7

Untuk menjalankan runbook Python 2.7 pada Linux Hybrid Worker, instal Python di Hybrid Worker. Pastikan untuk menambahkan file Python yang dapat dieksekusi ke variabel lingkungan PATH dan mulai ulang Hybrid Runbook Worker setelah penginstalan.

Mengonfigurasi izin runbook

Tentukan izin untuk runbook yang dijalankan di Hybrid Runbook Worker dengan cara berikut:

  • Minta runbook menyediakan autentikasinya sendiri untuk sumber daya lokal.
  • Konfigurasi autentikasi menggunakan identitas terkelola untuk sumber daya Azure.
  • Tentukan kredensial Hybrid Worker untuk menyediakan konteks pengguna untuk semua runbook.

Gunakan autentikasi runbook ke sumber daya lokal

Jika menyiapkan runbook yang menyediakan autentikasinya sendiri ke sumber daya, gunakan aset info masuk dan sertifikat di runbook Anda. Ada beberapa cmdlet yang memungkinkan Anda menentukan info masuk sehingga runbook dapat mengautentikasi ke sumber daya yang berbeda. Contoh berikut menunjukkan bagian runbook yang menghidupkan ulang komputer. Ini mengambil info masuk dari aset info masuk dan nama komputer dari aset variabel, kemudian menggunakan nilai ini dengan cmdlet Restart-Computer.

$Cred = Get-AutomationPSCredential -Name "MyCredential"
$Computer = Get-AutomationVariable -Name "ComputerName"

Restart-Computer -ComputerName $Computer -Credential $Cred

Anda juga dapat menggunakan aktivitas InlineScript. InlineScript memungkinkan Anda menjalankan blok kode di komputer lain dengan info masuk.

Gunakan autentikasi runbook dengan identitas terkelola

Hybrid Runbook Worker di mesin virtual Azure dapat menggunakan identitas terkelola untuk mengautentikasi ke sumber daya Azure. Menggunakan identitas terkelola untuk sumber daya Azure alih-alih akun Jalankan Sebagai memberikan keuntungan karena Anda tidak perlu:

  • Mengekspor sertifikat Jalankan Sebagai lalu mengimpor ke Hybrid Runbook Worker.
  • Memperpanjang sertifikat yang digunakan oleh akun Jalankan Sebagai.
  • Menangani objek koneksi Jalankan Sebagai di kode runbook Anda.

Ada dua cara untuk menggunakan Identitas Terkelola dalam skrip Hybrid Runbook Worker.

  1. Gunakan Identitas Terkelola yang ditetapkan sistem untuk akun Automation:

    1. Konfigurasikan Identitas Terkelola yang ditetapkan Sistem untuk akun Automation.

    2. Berikan identitas ini izin yang diperlukan dalam Langganan untuk melakukan tugasnya.

    3. Perbarui runbook untuk menggunakan cmdlet Connect-AzAccount dengan parameter Identity untuk mengautentikasi ke sumber daya Azure. Konfigurasi ini mengurangi kebutuhan untuk menggunakan akun Jalankan Sebagai dan melakukan pengelolaan akun terkait.

      # Ensures you do not inherit an AzContext in your runbook
      Disable-AzContextAutosave -Scope Process
      
      # Connect to Azure with system-assigned managed identity
      $AzureContext = (Connect-AzAccount -Identity).context
      
      # set and store context
      $AzureContext = Set-AzContext -SubscriptionName $AzureContext.Subscription -DefaultProfile
      $AzureContext
      
      # Get all VM names from the subscription
      Get-AzVM -DefaultProfile $AzureContext | Select Name
      

    Catatan

    Tidak dimungkinkan untuk menggunakan Identitas Terkelola Pengguna Akun Automation pada Hybrid Runbook Worker, itu harus menjadi Identitas Terkelola Sistem Akun Automation.

  2. Untuk Azure VM yang berjalan sebagai Hybrid Runbook Worker, gunakan Identitas Terkelola VM. Dalam hal ini, Anda dapat menggunakan Identitas Terkelola yang ditetapkan Pengguna VM ATAU Identitas Terkelola yang ditetapkan Sistem komputer virtual.

    Catatan

    Ini TIDAK akan berfungsi di Akun Automation yang telah dikonfigurasi dengan akun Automation Managed Identity. Segera setelah akun Automation Identitas Terkelola diaktifkan, tidak lagi mungkin untuk menggunakan Identitas Terkelola VM dan kemudian, hanya dimungkinkan untuk menggunakan Identitas Terkelola yang Ditetapkan Sistem Akun Automation seperti yang disebutkan dalam opsi 1 di atas.

    Gunakan salah satu identitas terkelola berikut:

    1. Mengonfigurasi Identitas Terkelola Sistem untuk VM.
    2. Berikan identitas ini izin yang diperlukan dalam langganan untuk melakukan tugasnya.
    3. Perbarui runbook untuk menggunakan cmdlet Koneksi-Az-Account dengan Identity parameter untuk mengautentikasi ke sumber daya Azure. Konfigurasi ini mengurangi kebutuhan untuk menggunakan Akun Jalankan Sebagai dan melakukan manajemen akun terkait.
        # Ensures you do not inherit an AzContext in your runbook
        Disable-AzContextAutosave -Scope Process
    
        # Connect to Azure with system-assigned managed identity
        $AzureContext = (Connect-AzAccount -Identity).context
    
        # set and store context
        $AzureContext = Set-AzContext -SubscriptionName $AzureContext.Subscription -DefaultProfile
        $AzureContext
    
        # Get all VM names from the subscription
        Get-AzVM -DefaultProfile $AzureContext | Select Name
    

Server berkemampuan Arc atau VMware vSphere VM berkemampuan Arc yang berjalan sebagai Hybrid Runbook Worker sudah memiliki Identitas Terkelola Sistem bawaan yang ditetapkan untuknya yang dapat digunakan untuk autentikasi.

  1. Anda dapat memberikan akses Identitas Terkelola ini ke sumber daya dalam langganan Anda di bilah Kontrol akses (IAM) untuk sumber daya dengan menambahkan penetapan peran yang sesuai.

    Screenshot of how to select managed identities.

  2. Tambahkan Identitas Terkelola Azure Arc ke peran yang Anda pilih sesuai kebutuhan.

    Screenshot of how to add role assignment in the Access control blade.

Catatan

Ini TIDAK akan berfungsi di Akun Automation yang telah dikonfigurasi dengan akun Automation Managed Identity. Segera setelah akun Automation Identitas Terkelola diaktifkan, tidak lagi mungkin untuk menggunakan Identitas Terkelola Arc dan kemudian, hanya dimungkinkan untuk menggunakan Identitas Terkelola yang Ditetapkan Sistem Akun Automation seperti yang disebutkan dalam opsi 1 di atas.

Catatan

Secara default, konteks Azure disimpan untuk digunakan di antara sesi PowerShell. Ada kemungkinan bahwa ketika runbook sebelumnya di Hybrid Runbook Worker telah diautentikasi dengan Azure, konteks tersebut berlanjut ke disk di profil System PowerShell, sesuai konteks Azure dan kredensial masuk | Microsoft Docs. Misalnya, runbook dengan Get-AzVM dapat mengembalikan semua VM dalam langganan tanpa panggilan ke Connect-AzAccount, dan pengguna akan dapat mengakses sumber daya Azure tanpa harus mengautentikasi dalam runbook tersebut. Anda dapat menonaktifkan penyimpanan otomatis konteks di Azure PowerShell, seperti yang dijelaskan di sini.

Menggunakan autentikasi runbook dengan Kredensial Hybrid Worker

Alih-alih meminta runbook Anda memberikan autentikasinya sendiri ke sumber daya lokal, Anda dapat menentukan Info Masuk Hybrid Worker untuk grup Hybrid Runbook Worker. Untuk menentukan Kredensial Hybrid Worker, Anda harus menentukan aset kredensial yang memiliki akses ke sumber daya lokal. Sumber daya ini mencakup penyimpanan sertifikat dan semua runbook yang dijalankan menggunakan info masuk ini di Hybrid Runbook Worker dalam grup.

  • Nama pengguna untuk info masuk harus dalam salah satu format berikut:

    • domain\username
    • username@domain
    • nama pengguna (untuk akun lokal ke komputer lokal)
  • Untuk menggunakan runbook Export-RunAsCertificateToHybridWorker PowerShell, Anda perlu menginstal modul Az untuk Azure Automation di mesin lokal.

Menggunakan aset kredensial untuk grup Hybrid Runbook Worker

Secara default, pekerjaan Hybrid berjalan dalam konteks akun Sistem. Namun, untuk menjalankan pekerjaan Hibrid di bawah aset kredensial yang berbeda, ikuti langkah-langkahnya:

  1. Buat aset info masuk dengan akses ke sumber daya lokal.
  2. Buka akun Automation di portal Microsoft Azure.
  3. Pilih Grup Hybrid Worker, lalu pilih grup tertentu.
  4. Pilih Pengaturan.
  5. Ubah nilai kredensial Hybrid Worker dari Default ke Kustom.
  6. Pilih info masuk lalu klik Simpan.
  7. Jika izin berikut tidak ditetapkan untuk pengguna Kustom, pekerjaan mungkin ditangguhkan.
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

Pekerja Hibrida Linux tidak mendukung kredensial Pekerja Hibrida.

Menjalankan runbook di Hybrid Runbook Worker

Memulai runbook di Azure Automation menjelaskan berbagai metode untuk memulai runbook. Mulai runbook di Hybrid Runbook Worker menggunakan opsi Jalankan di yang memungkinkan Anda menentukan nama grup Hybrid Runbook Worker. Saat grup ditentukan, salah satu pekerja dalam grup tersebut mengambil dan menjalankan runbook. Jika runbook Anda tidak menentukan opsi ini, Azure Automation menjalankan runbook seperti biasa.

Saat memulai runbook di portal Microsoft Azure, Anda disajikan dengan opsi Jalankan di yang dapat Anda pilih Azure atau Hybrid Worker-nya. Pilih Hybrid Worker, untuk memilih grup Hybrid Runbook Worker dari menu dropdown.

Screenshot showing how to select the Hybrid Runbook Worker group.

Saat memulai runbook menggunakan PowerShell, gunakan parameter RunOn dengan cmdlet Start-AzAutomationRunbook. Contoh berikut menggunakan Windows PowerShell untuk memulai runbook bernama Test-Runbook di grup Hybrid Runbook Worker bernama MyHybridGroup.

Start-AzAutomationRunbook -AutomationAccountName "MyAutomationAccount" -Name "Test-Runbook" -RunOn "MyHybridGroup"

Bekerja dengan runbook yang ditandatangani di Hybrid Runbook Worker Windows

Anda dapat mengonfigurasi Hybrid Runbook Worker Windows untuk hanya menjalankan runbook yang ditandatangani.

Penting

Setelah Anda mengonfigurasi Hybrid Runbook Worker untuk hanya menjalankan runbook yang ditandatangani, runbook yang tidak ditandatangani gagal dieksekusi di pekerja.

Catatan

PowerShell 7.x tidak mendukung runbook yang ditandatangani untuk Windows dan Linux Hybrid Runbook Worker.

Membuat sertifikat penandatanganan

Contoh berikut membuat sertifikat yang ditandatangani sendiri yang dapat digunakan untuk menandatangani runbook. Kode ini membuat sertifikat dan mengekspornya sehingga Hybrid Runbook Worker dapat mengimpornya nanti. Thumbprint juga dikembalikan untuk digunakan nanti dalam mereferensikan sertifikat.

# Create a self-signed certificate that can be used for code signing
$SigningCert = New-SelfSignedCertificate -CertStoreLocation cert:\LocalMachine\my `
    -Subject "CN=contoso.com" `
    -KeyAlgorithm RSA `
    -KeyLength 2048 `
    -Provider "Microsoft Enhanced RSA and AES Cryptographic Provider" `
    -KeyExportPolicy Exportable `
    -KeyUsage DigitalSignature `
    -Type CodeSigningCert

# Export the certificate so that it can be imported to the hybrid workers
Export-Certificate -Cert $SigningCert -FilePath .\hybridworkersigningcertificate.cer

# Import the certificate into the trusted root store so the certificate chain can be validated
Import-Certificate -FilePath .\hybridworkersigningcertificate.cer -CertStoreLocation Cert:\LocalMachine\Root

# Retrieve the thumbprint for later use
$SigningCert.Thumbprint

Mengimpor sertifikat dan mengonfigurasi pekerja untuk validasi tanda tangan

Salin sertifikat yang telah Anda buat ke setiap Hybrid Runbook Worker dalam grup. Jalankan skrip berikut untuk mengimpor sertifikat dan mengonfigurasi pekerja untuk menggunakan validasi tanda tangan di runbook.

# Install the certificate into a location that will be used for validation.
New-Item -Path Cert:\LocalMachine\AutomationHybridStore
Import-Certificate -FilePath .\hybridworkersigningcertificate.cer -CertStoreLocation Cert:\LocalMachine\AutomationHybridStore

# Import the certificate into the trusted root store so the certificate chain can be validated
Import-Certificate -FilePath .\hybridworkersigningcertificate.cer -CertStoreLocation Cert:\LocalMachine\Root

# Configure the hybrid worker to use signature validation on runbooks.
Set-HybridRunbookWorkerSignatureValidation -Enable $true -TrustedCertStoreLocation "Cert:\LocalMachine\AutomationHybridStore"

Menandatangani runbook Anda menggunakan sertifikat

Dengan Hybrid Runbook Worker yang dikonfigurasi untuk hanya menggunakan runbook yang ditandatangani, Anda harus menandatangani runbook yang akan digunakan di Hybrid Runbook Worker. Gunakan sampel kode PowerShell berikut untuk menandatangani runbook ini.

$SigningCert = ( Get-ChildItem -Path cert:\LocalMachine\My\<CertificateThumbprint>)
Set-AuthenticodeSignature .\TestRunbook.ps1 -Certificate $SigningCert

Setelah runbook ditandatangani, Anda harus mengimpornya ke akun Automation Anda dan menerbitkannya dengan blok tanda tangan. Untuk mempelajari cara mengimpor runbook, lihat Mengimpor runbook.

Catatan

Hanya gunakan karakter teks biasa dalam kode runbook Anda, termasuk komentar. Menggunakan karakter dengan tanda diakritik, seperti á atau ñ, akan mengakibatkan kesalahan. Saat Azure Automation mengunduh kode Anda, karakter akan digantikan oleh tanda tanya dan penandatanganan akan gagal dengan pesan "kegagalan validasi hash tanda tangan".

Bekerja dengan runbook yang ditandatangani di Hybrid Runbook Worker Linux

Agar dapat bekerja dengan runbook yang ditandatangani, Hybrid Runbook Worker Linux harus memiliki GPG yang dapat dieksekusi di mesin lokal.

Penting

Setelah Anda mengonfigurasi Hybrid Runbook Worker untuk hanya menjalankan runbook yang ditandatangani, runbook yang tidak ditandatangani gagal dieksekusi di pekerja.

Anda akan melakukan langkah berikut untuk menyelesaikan konfigurasi ini:

  • Membuat keyring dan keypair GPG
  • Membuat keyring tersedia untuk Hybrid Runbook Worker
  • Memverifikasi bahwa validasi tanda tangan aktif
  • Menandatangani runbook

Catatan

  • PowerShell 7.x tidak mendukung runbook yang ditandatangani untuk Windows berbasis agen dan Linux Hybrid Runbook Worker berbasis agen.
  • Runbook PowerShell dan Python yang ditandatangani tidak didukung di Linux Hybrid Workers berbasis ekstensi.

Membuat keyring dan keypair GPG

Catatan

Keyring Buat GPG dan keypair hanya berlaku untuk pekerja hibrid berbasis agen.

Untuk membuat keyring dan keypair GPG, gunakan akun nxautomation Hybrid Runbook Worker.

  1. Gunakan aplikasi sudo untuk masuk sebagai akun nxautomation.

    sudo su - nxautomation
    
  2. Setelah Anda menggunakan nxautomation, hasilkan keypair GPG sebagai root. GPG memandu Anda melalui langkah-langkahnya. Anda harus memberikan nama, alamat email, waktu kedaluwarsa, dan kata kunci. Lalu, Anda menunggu sampai ada cukup entropi pada mesin untuk membuat kunci.

    sudo gpg --generate-key
    
  3. Karena direktori GPG dihasilkan dengan sudo, Anda harus mengubah pemiliknya menjadi nxautomation menggunakan perintah berikut sebagai root.

    sudo chown -R nxautomation ~/.gnupg
    

Membuat keyring tersedia untuk Hybrid Runbook Worker

Setelah keyring dibuat, buatlah tersedia untuk Hybrid Runbook Worker. Ubah file pengaturan home/nxautomation/state/worker.conf agar menyertakan contoh kode berikut di bawah bagian file [worker-optional].

gpg_public_keyring_path = /home/nxautomation/run/.gnupg/pubring.kbx

Memverifikasi bahwa validasi tanda tangan aktif

Jika validasi tanda tangan telah dinonaktifkan pada komputer, Anda harus mengaktifkannya dengan menjalankan perintah berikut sebagai root. Ganti <LogAnalyticsworkspaceId> dengan ID ruang kerja Anda.

sudo python /opt/microsoft/omsconfig/modules/nxOMSAutomationWorker/DSCResources/MSFT_nxOMSAutomationWorkerResource/automationworker/scripts/require_runbook_signature.py --true <LogAnalyticsworkspaceId>

Menandatangani runbook

Setelah Anda mengonfigurasi validasi tanda tangan, gunakan perintah GPG berikut untuk menandatangani runbook.

gpg --clear-sign <runbook name>

Runbook yang ditandatangani disebut runbook name.asc>.<

Sekarang, Anda dapat mengunggah runbook yang ditandatangani ke Azure Automation dan menjalankannya seperti runbook biasa.

Pencatatan

Untuk membantu memecahkan masalah terkait runbook yang berjalan di pekerja runbook hibrid, log disimpan secara lokal di lokasi berikut:

  • Di Windows pada C:\ProgramData\Microsoft\System Center\Orchestrator\<version>\SMA\Sandboxes untuk pengelogan proses runtime pekerjaan mendetail. Peristiwa status pekerjaan runbook tingkat tinggi ditulis ke log peristiwa Log Aplikasi dan Layanan\Microsoft-Automation\Operations.

  • Di Linux, log pekerja hibrid pengguna dapat ditemukan di /home/nxautomation/run/worker.log, dan log pekerja runbook sistem dapat ditemukan di /var/opt/microsoft/omsagent/run/automationworker/worker.log.

Langkah berikutnya