Jenis runbook Azure Automation

Fitur Azure Automation Process Automation mendukung beberapa jenis runbook seperti yang didefinisikan dalam tabel berikut. Untuk mempelajari tentang lingkungan Automation proses, lihat Menjalankan eksekusi di Automation Azure.

Jenis Deskripsi
PowerShell Runbook tekstual berbasis pembuatan skrip Windows PowerShell. Versi yang saat ini didukung adalah: PowerShell 5.1 (GA), PowerShell 7.1 (pratinjau), dan PowerShell 7.2 (pratinjau).
PowerShell Workflow Runbook tekstual berbasis pembuatan skrip Windows PowerShell Workflow.
Python Runbook tekstual berdasarkan pembuatan skrip Python. Versi yang saat ini didukung adalah: Python 2.7 (GA), Python 3.8 (GA), dan Python 3.10 (pratinjau).
Grafis Runbook grafis berbasis Windows PowerShell dan dibuat serta diedit sepenuhnya di editor grafis di portal Microsoft Azure.
PowerShell Workflow Grafis Runbook grafis berdasarkan Windows PowerShell Workflow dan dibuat serta diedit sepenuhnya di editor grafis di portal Microsoft Azure.

Pertimbangkan pertimbangan berikut saat menentukan jenis yang akan digunakan untuk runbook tertentu.

  • Anda tidak dapat mengonversi runbook dari jenis grafis ke teks, atau sebaliknya.
  • Ada batasan saat menggunakan runbook dari berbagai jenis sebagai runbook turunan. Untuk informasi selengkapnya, lihat Runbook turunan di Azure Automation.

Runbook PowerShell

Runbook PowerShell berbasis Windows PowerShell. Anda dapat mengedit kode runbook secara langsung menggunakan editor teks di portal Microsoft Azure. Anda juga dapat menggunakan editor teks offline apa pun dan mengimpor runbook ke Azure Automation.

Versi PowerShell ditentukan oleh versi Runtime yang ditentukan (yaitu versi 7.2 (pratinjau), 7.1 (pratinjau) atau 5.1). Layanan Azure Automation mendukung runtime PowerShell terbaru.

Azure sandbox dan Hybrid Runbook Worker yang sama dapat menjalankan runbook PowerShell 5.1 dan PowerShell 7.1 (pratinjau) secara berdampingan.

Catatan

  • Saat ini, versi runtime PowerShell 7.2 (pratinjau) didukung untuk pekerjaan Cloud dan Hybrid di semua wilayah Publik kecuali awan Australia Tengah2, Korea Selatan, Swedia Selatan, Jio India Tengah, Brasil Tenggara, India Tengah, India Barat, UEA Tengah, dan Gov.
  • Pada saat eksekusi runbook, jika Anda memilih Versi Runtime sebagai 7.1 (pratinjau), modul PowerShell yang menargetkan versi runtime 7.1 (pratinjau) digunakan dan jika Anda memilih Versi Runtime sebagai 5.1, modul PowerShell yang menargetkan versi runtime 5.1 digunakan. Ini berlaku untuk modul dan runbook PowerShell 7.2 (pratinjau).

Pastikan Anda memilih Versi Runtime yang tepat untuk modul.

Misalnya: jika Anda menjalankan runbook untuk skenario otomatisasi SharePoint di Runtime versi7.1 (pratinjau), impor modul di Runtime versi7.1 (pratinjau); jika Anda menjalankan runbook untuk skenario otomatisasi SharePoint di Runtime versi5.1, impor modul di Runtime versi5.1. Dalam hal ini, Anda akan melihat dua entri untuk modul, satu untuk Runtime Versi7.1(pratinjau) dan lainnya untuk 5.1.

Jenis runbook.

Catatan

Saat ini, PowerShell 5.1, PowerShell 7.1 (pratinjau) dan PowerShell 7.2 (pratinjau) didukung.

Kelebihan

  • Menerapkan semua logika kompleks dengan kode PowerShell tanpa kompleksitas lain dari PowerShell Workflow.
  • Memulai lebih cepat dari runbook PowerShell Workflow karena ini tidak perlu dikompilasi sebelum dijalankan.
  • Dijalankan di Azure dan di Hybrid Runbook Worker untuk Windows dan Linux.

Batasan dan Masalah yang diketahui

Berikut ini adalah batasan saat ini dan masalah yang diketahui dengan runbook PowerShell:

Batasan

  • Anda pasti sudah tidak asing lagi dengan pembuatan skrip PowerShell.
  • Runbook tidak dapat menggunakan pemrosesan paralel untuk menjalankan beberapa tindakan secara paralel.
  • Runbook tidak dapat menggunakan titik pemeriksaan untuk melanjutkan runbook jika ada kesalahan.
  • Anda hanya dapat menyertakan runbook PowerShell Workflow dan runbook grafis sebagai runbook turunan dengan menggunakan cmdlet Start-AzAutomationRunbook yang menghasilkan pekerjaan baru.
  • Runbook tidak dapat menggunakan pernyataan #Requires PowerShell, tidak didukung di kotak pasir Azure atau di Hybrid Runbook Workers dan dapat menyebabkan pekerjaan gagal.

Masalah yang diketahui

  • Runbook PowerShell tidak dapat mengambil aset variabel yang tidak terenkripsi dengan nilai kosong.
  • Runbook PowerShell tidak dapat mengambil aset variabel dengan nama yang memuat *~*.
  • Operasi Get-Process dalam loop di runbook PowerShell dapat crash setelah sekitar 80 pengulangan.
  • Runbook PowerShell dapat gagal jika runbook mencoba menulis sejumlah besar data ke aliran output sekaligus. Anda biasanya dapat mengatasi masalah ini dengan memiliki output runbook hanya informasi yang diperlukan untuk bekerja dengan objek besar. Misalnya, alih-alih menggunakan Get-Process tanpa batasan, Anda dapat memberikan parameter yang diperlukan output cmdlet seperti dalam Get-Process | Select ProcessName, CPU.
  • Saat Anda menggunakan versi modul ExchangeOnlineManagement : 3.0.0 atau yang lebih tinggi, Anda mungkin mengalami kesalahan. Untuk mengatasi masalah ini, pastikan Anda juga mengunggah modul PowerShellGet dan PackageManagement secara eksplisit.
  • Saat Anda menggunakan cmdlet Item baru, pekerjaan mungkin ditangguhkan. Untuk mengatasi masalah ini, ikuti langkah-langkah mitigasi:
    1. Konsumsi output new-item cmdlet dalam variabel dan jangan menulisnya ke aliran output menggunakan write-output perintah .
      • Anda dapat menggunakan debug atau aliran kemajuan setelah mengaktifkannya dari pengaturan Pengelogan dan Pelacakan runbook.
      $item = New-Item -Path ".\message.txt" -Force -ErrorAction SilentlyContinue
      write-debug $item # or use write-progress $item
      
      • Atau, Anda dapat memeriksa apakah variabel tidak ada gunanya jika diperlukan untuk melakukannya dalam skrip.
      $item = New-Item -Path ".\message.txt" -Force -ErrorAction SilentlyContinue
      if($item) { write-output "File Created" }
      
    2. Anda juga dapat meningkatkan runbook ke PowerShell 7.1 atau PowerShell 7.2 di mana runbook yang sama akan berfungsi seperti yang diharapkan.

Runbook PowerShell Workflow

Runbook PowerShell Workflow adalah runbook teks berbasis Windows PowerShell Workflow. Anda dapat mengedit kode runbook secara langsung menggunakan editor teks di portal Microsoft Azure. Anda juga dapat menggunakan editor teks offline apa pun dan mengimpor runbook ke Azure Automation.

Catatan

PowerShell 7.1 (pratinjau) dan PowerShell 7.2 (pratinjau) tidak mendukung runbook Alur Kerja.

Kelebihan

  • Menerapkan semua logika kompleks dengan kode PowerShell Workflow.
  • Menggunakan titik pemeriksaan untuk melanjutkan operasi jika ada kesalahan.
  • Menggunakan pemrosesan paralel untuk melakukan beberapa tindakan secara paralel.
  • Dapat menyertakan runbook grafis dan runbook PowerShell Workflow lainnya sebagai runbook turunan untuk membuat alur kerja tingkat tinggi.

Batasan

  • Anda pasti sudah tidak asing lagi dengan PowerShell Workflow.
  • Runbook harus menangani kompleksitas tambahan PowerShell Workflow seperti objek yang dideserialisasi.
  • Runbook membutuhkan waktu lebih lama untuk memulai dibanding runbook PowerShell karena harus dikompilasi sebelum dijalankan.
  • Anda hanya dapat menyertakan runbook PowerShell sebagai runbook turunan menggunakan cmdlet Start-AzAutomationRunbook.
  • Runbook tidak dapat berjalan pada Linux Hybrid Runbook Worker.

Runbook Python

Runbook Python dikompilasi di bawah Python 2.7(GA), Python 3.8 (GA) dan Python 3.10 (pratinjau). Anda dapat mengedit kode runbook secara langsung menggunakan editor teks di portal Microsoft Azure. Anda juga dapat menggunakan editor teks offline dan mengimpor runbook ke Azure Automation.

Saat ini, versi runtime Python 3.10 (pratinjau) didukung untuk pekerjaan Cloud dan Hybrid di semua wilayah Publik kecuali Australia Tengah2, Korea Selatan, Swedia Selatan, Jio India Tengah, Brasil Tenggara, India Tengah, India Barat, UEA Tengah, dan Gov cloud.

Kelebihan

Catatan

Mengimpor paket Python mungkin memakan waktu beberapa menit.

  • Menggunakan pustaka Python yang kuat.
  • Dapat berjalan di Azure atau di Hybrid Runbook Workers.
  • Untuk Python 2.7, Windows Hybrid Runbook Workers didukung dengan python 2.7 terinstal.
  • Untuk Pekerjaan Cloud Python 3.8, versi Python 3.8 didukung. Skrip dan paket dari versi 3.x mana pun mungkin berfungsi jika kode kompatibel di berbagai versi.
  • Untuk pekerjaan Python 3.8 Hybrid di komputer Windows, Anda dapat memilih untuk menginstal versi 3.x apa pun yang mungkin ingin Anda gunakan.
  • Untuk pekerjaan Python 3.8 Hybrid pada komputer Linux, kami bergantung pada versi Python 3 yang diinstal pada komputer untuk menjalankan DSC OMSConfig dan Linux Hybrid Worker. Versi yang berbeda harus berfungsi jika tidak ada perubahan yang melanggar dalam tanda tangan metode atau kontrak antara versi Python 3.

Batasan

Berikut adalah batasan runbook Python

  • Anda pasti sudah tidak asing lagi dengan pembuatan skrip Python.
  • Untuk modul Python 2.7.12, gunakan file roda cp27-amd6.
  • Untuk menggunakan pustaka pihak ketiga, Anda harus mengimpor paket ke akun Automation.
  • Azure Automation tidak mendukung sys.stderr.
  • Paket automationassets Python tidak tersedia di pypi.org, sehingga tidak tersedia untuk diimpor ke komputer Windows.

Beberapa versi Python

Ini berlaku untuk pekerja Windows Hybrid. Untuk Windows Runbook Worker, saat menjalankan runbook Python 2, ia mencari variabel PYTHON_2_PATH lingkungan terlebih dahulu dan memvalidasi apakah itu menunjuk ke file yang dapat dieksekusi yang valid. Misalnya, jika folder instalasi adalah C:\Python2, itu akan memeriksa apakah C:\Python2\python.exe merupakan jalur yang valid. Jika tidak ditemukan, maka ia mencari variabel lingkungan PATH untuk melakukan pemeriksaan serupa.

Untuk Python 3, ia mencari variabel PYTHON_3_PATH env terlebih dahulu dan kemudian jatuh kembali ke variabel lingkungan PATH.

Saat hanya menggunakan satu versi Python, Anda dapat menambahkan jalur instalasi ke variabel PATH. Jika Anda ingin menggunakan kedua versi pada Runbook Worker, atur PYTHON_2_PATH dan PYTHON_3_PATH ke lokasi modul untuk versi tersebut.

Masalah yang diketahui

Untuk pekerjaan cloud, pekerjaan Python 3.8 terkadang gagal dengan pesan invalid interpreter executable pathpengecualian . Anda mungkin melihat pengecualian ini jika pekerjaan tertunda, mulai lebih dari 10 menit, atau menggunakan Start-AutomationRunbook untuk memulai runbook Python 3.8. Jika pekerjaan tertunda, Anda hanya perlu memulai ulang runbook.

Runbook grafis

Anda dapat membuat dan mengedit runbook grafis dan runbook PowerShell Workflow grafis menggunakan editor grafis di portal Microsoft Azure. Namun, Anda tidak dapat membuat atau mengedit jenis runbook ini dengan alat lain. Fitur utama runbook grafis:

  • Diekspor ke file di akun Automation Anda lalu diimpor ke akun Automation lain.
  • Menghasilkan kode PowerShell.
  • Dikonversi ke atau dari runbook PowerShell Workflow grafis selama impor.

Kelebihan

  • Menggunakan model penulisan visual insert-link-configure.
  • Fokus pada cara data mengalir melalui proses.
  • Merepresentasikan proses manajemen secara visual.
  • Menyertakan runbook lain sebagai runbook turunan untuk membuat alur kerja tingkat tinggi.
  • Mendorong pemrograman modular.

Batasan

  • Tidak dapat membuat atau mengedit di luar portal Microsoft Azure.
  • Mungkin memerlukan aktivitas kode yang berisi kode PowerShell untuk menjalankan logika kompleks.
  • Tidak dapat mengonversi ke salah satu format teks maupun mengonversi runbook teks ke format grafis.
  • Tidak dapat menampilkan atau mengedit kode PowerShell secara langsung yang dibuat alur kerja grafis. Anda dapat melihat kode yang Anda buat dalam aktivitas kode apa pun.
  • Tidak berfungsi dengan runbook di Linux Hybrid Runbook Worker. Lihat Mengotomatiskan sumber daya di pusat data atau cloud Anda menggunakan Hybrid Runbook Worker.
  • Runbook grafis tidak dapat ditandatangani secara digital.

Langkah berikutnya