Mengelola Jadwal di Azure Automation

Azure Automation menggunakan sejumlah modul PowerShell untuk mengaktifkan cmdlet dalam runbook dan sumber daya DSC dalam konfigurasi DSC. Modul yang didukung meliputi:

Saat Anda membuat akun Automation, Azure Automation mengimpor beberapa modul secara default. Lihat Modul default.

Kotak pasir

Ketika Automation menjalankan pekerjaan kompilasi runbook dan DSC, otomatisasi memuat modul ke dalam kotak pasir di mana runbook dapat berjalan dan konfigurasi DSC dapat mengompilasi. Automation juga secara otomatis menempatkan sumber daya DSC dalam modul di server penarikan DSC. Mesin dapat menarik sumber daya ketika menyebarkan konfigurasi DSC.

Kotak pasir cloud mendukung maksimum 48 panggilan sistem, dan membatasi semua panggilan lain karena alasan keamanan. Fungsionalitas lain seperti manajemen info masuk dan beberapa jaringan tidak didukung di kotak pasir cloud.

Karena jumlah modul dan cmdlet yang disertakan, sulit untuk mengetahui sebelumnya cmdlet mana yang akan melakukan panggilan yang tidak didukung. Umumnya, kami telah melihat masalah dengan cmdlet yang memerlukan akses tinggi, memerlukan info masuk sebagai parameter, atau cmdlet yang terkait dengan jaringan. Setiap cmdlet yang melakukan operasi jaringan tumpukan penuh tidak didukung di kotak pasir, termasuk Connect-AipService dari modul AIPService PowerShell dan Resolve-DnsName dari modul DNSClient.

Ini adalah batasan yang diketahui pada kotak pasir. Solusi yang disarankan adalah menyebarkan Hybrid Runbook Worker atau menggunakan Azure Functions.

Penting

Jangan sertakan kata kunci "AzureRm" dalam skrip apa pun yang dirancang untuk dieksekusi dengan modul Az. Penyertaan kata kunci, bahkan dalam komentar, dapat menyebabkan AzureRm dimuat dan kemudian mengalami konflik dengan modul Az.

Modul default

Semua akun Automation baru memiliki versi terbaru dari modul PowerShell Az yang diimpor secara default. Modul Az menggantikan AzureRM dan merupakan modul yang direkomendasikan untuk digunakan dengan Azure. Modul default di akun Automation baru mencakup 24 modul AzureRM yang ada dan 60+ modul Az.

Ada opsi native untuk memperbarui modul ke modul Az terbaru oleh pengguna untuk akun Automation. Operasi akan menangani semua dependensi modul di backend sehingga menghilangkan kerepotan memperbarui modul secara manual atau mengeksekusi runbook untuk memperbarui modul Azure.

Jika akun Automation yang ada hanya memiliki modul AzureRM, opsi Perbarui modul Az akan memperbarui akun Automation dengan versi modul Az yang dipilih pengguna.

Jika akun Automation yang ada memiliki AzureRM dan beberapa modul Az, opsi akan mengimpor modul Az yang tersisa ke akun Automation. Modul Az yang ada akan mengambil preferensi dan operasi pembaruan tidak akan memperbarui modul tersebut. Ini untuk memastikan operasi modul pembaruan tidak menyebabkan kegagalan eksekusi runbook dengan secara tidak sengaja memperbarui modul yang sedang digunakan oleh runbook. Cara yang disarankan untuk skenario ini adalah dengan terlebih dahulu menghapus modul Az yang ada dan kemudian melakukan operasi pembaruan untuk mendapatkan modul Az terbaru yang diimpor di akun Automation. Jenis modul tersebut, yang tidak diimpor secara default, disebut sebagai Kustom. Modul kustom akan selalu mengambil preferensi atas modul default.

Misalnya: Jika Anda sudah memiliki modul Az.Aks yang diimpor dengan versi 2.3.0 yang disediakan oleh modul Az 6.3.0 dan Anda mencoba memperbarui modul Az ke versi 6.4.0 terbaru. Operasi pembaruan akan mengimpor semua modul Az dari paket 6.4.0, kecuali Az.Aks. Untuk memiliki versi Az.Aks terbaru, terlebih dahulu hapus modul yang ada dan kemudian lakukan operasi pembaruan, atau Anda juga dapat memperbarui modul ini secara terpisah seperti yang dijelaskan dalam Modul Az impor untuk mengimpor versi yang berbeda dari modul tertentu.

Tabel berikut ini mencantumkan modul yang diimpor Azure Automation secara default saat Anda membuat akun Automation. Automation dapat mengimpor versi modul ini yang lebih baru. Namun, Anda tidak dapat menghapus versi asli dari akun Automation, meskipun Anda menghapus versi yang lebih baru.

Modul default juga dikenal sebagai modul global. Di portal Microsoft Azure, properti Modul global akan bernilai benar jika melihat modul yang diimpor saat akun dibuat.

Screenshot of global module property in Azure Portal

Catatan

Kami tidak menyarankan untuk mengubah modul dan runbook di akun Automation yang digunakan untuk penyebaran fitur Mulai/Hentikan komputer virtual di luar jam kerja.

Nama modul Versi
Az.* Melihat daftar lengkap di bawah Detail Paket di PowerShell Gallery
AuditPolicyDsc 1.1.0.0
Azure 1.0.3
Azure.Storage 1.0.3
AzureRM.Automation 1.0.3
AzureRM.Compute 1.2.1
AzureRM.Profile 1.0.3
AzureRM.Resources 1.0.3
AzureRM.Sql 1.0.3
AzureRM.Storage 1.0.3
ComputerManagementDsc 5.0.0.0
GPRegistryPolicyParser 0,2
Microsoft.PowerShell.Core 0
Microsoft.PowerShell.Diagnostics
Microsoft.PowerShell.Management
Microsoft.PowerShell.Security
Microsoft.PowerShell.Utility
Microsoft.WSMan.Management
Orchestrator.AssetManagement.Cmdlets 1
PSDscResources 2.9.0.0
SecurityPolicyDsc 2.1.0.0
StateConfigCompositeResources 1
xDSCDomainjoin 1.1
xPowerShellExecutionPolicy 1.1.0.0
xRemoteDesktopAdmin 1.1.0.0

cmdlet internal

Azure Automation mendukung cmdlet internal yang hanya tersedia saat Anda menjalankan runbook di lingkungan kotak pasir Azure, atau pada Windows Hybrid Runbook Worker. Modul internal Orchestrator.AssetManagement.Cmdlets diinstal secara default di akun Azure Automation Anda dan ketika peran Windows Hybrid Runbook Worker diinstal pada mesin.

Tabel berikut mendefinisikan cmdlet internal. Cmdlet ini dirancang untuk digunakan sebagai ganti cmdlet Azure PowerShell untuk berinteraksi dengan sumber daya Azure Automation Anda. cmdlet dapat mengambil rahasia dari variabel terenkripsi, info masuk, dan koneksi terenkripsi.

Nama Deskripsi
Get-AutomationCertificate Get-AutomationCertificate [-Name] <string> [<CommonParameters>]
Get-AutomationConnection Get-AutomationConnection [-Name] <string> [-DoNotDecrypt] [<CommonParameters>]
Get-AutomationPSCredential Get-AutomationPSCredential [-Name] <string> [<CommonParameters>]
Get-AutomationVariable Get-AutomationVariable [-Name] <string> [-DoNotDecrypt] [<CommonParameters>]
Set-AutomationVariable Set-AutomationVariable [-Name] <string> -Value <Object> [<CommonParameters>]
Start-AutomationRunbook Start-AutomationRunbook [-Name] <string> [-Parameters <IDictionary>] [-RunOn <string>] [-JobId <guid>] [<CommonParameters>]
Wait-AutomationJob Wait-AutomationJob -Id <guid[]> [-TimeoutInMinutes <int>] [-DelayInSeconds <int>] [-OutputJobsTransitionedToRunning] [<CommonParameters>]

Perhatikan bahwa cmdlet internal berbeda dalam penamaan dari cmdlet Az dan AzureRM. Nama cmdlet internal tidak berisi kata-kata seperti Azure atau Az dalam bentuk kata benda, tetapi menggunakan kata Automation. Kami merekomendasikan penggunaannya daripada penggunaan cmdlet Az atau AzureRM selama eksekusi runbook di kotak pasir Azure atau pada Windows Hybrid Runbook Worker karena memerlukan lebih sedikit parameter dan berjalan dalam konteks pekerjaan Anda selama eksekusi.

Gunakan cmdlet Az atau AzureRM untuk memanipulasi sumber daya Automation di luar konteks runbook.

Modul Python

Anda dapat membuat runbook Python 2 di Azure Automation. Untuk informasi modul Python, lihat Mengelola paket Python 2 di Azure Automation.

Modul kustom

Azure Automation mendukung modul PowerShell kustom yang Anda buat untuk digunakan dengan runbook dan konfigurasi DSC Anda. Salah satu jenis modul kustom adalah modul integrasi yang secara opsional berisi file metadata untuk menentukan fungsionalitas kustom untuk cmdlet modul. Contoh penggunaan modul integrasi disediakan dalam Menambahkan tipe koneksi.

Azure Automation dapat mengimpor modul kustom untuk membuat cmdlet-nya tersedia. Di balik layar, Azure Automation menyimpan modul dan menggunakannya di kotak pasir Azure, seperti halnya modul lain.

Bermigrasi ke modul Az

Bagian ini menjelaskan cara bermigrasi ke modul Az di Automation. Untuk informasi selengkapnya, lihat Melakukan migrasi Azure PowerShell dari AzureRM ke Az.

Sebaiknya Anda tidak menjalankan modul AzureRM dan modul Az di akun Automation yang sama. Saat Anda yakin ingin melakukan migrasi dari AzureRM ke Az, sebaiknya lakukan migrasi penuh. Automation sering menggunakan kembali kotak pasir dalam akun Automation untuk menghemat waktu pengaktifan. Jika tidak melakukan migrasi modul penuh, Anda dapat memulai pekerjaan yang hanya menggunakan modul AzureRM, lalu memulai pekerjaan lain yang hanya menggunakan modul Az. Kotak pasir segera mengalami crash, dan Anda menerima kesalahan yang menyatakan bahwa modul tidak kompatibel. Situasi ini mengakibatkan crash yang terjadi secara acak untuk runbook atau konfigurasi tertentu.

Catatan

Saat Anda membuat akun Automation baru, meski setelah migrasi ke modul Az, Automation akan masih memasang modul AzureRM secara default.

Menguji runbook dan konfigurasi DSC Anda sebelum migrasi modul

Pastikan untuk menguji semua runbook dan konfigurasi DSC dengan cermat dalam akun Automation terpisah, sebelum Anda bermigrasi ke modul Az.

Menghentikan dan menghapus jadwal semua runbook yang menggunakan modul AzureRM

Untuk memastikan bahwa Anda tidak menjalankan runbook atau konfigurasi DSC yang ada yang menggunakan modul AzureRM, Anda harus menghentikan dan membatalkan semua runbook dan konfigurasi yang terpengaruh. Pertama, pastikan Anda meninjau setiap konfigurasi runbook atau DSC dan jadwalnya secara terpisah, guna memastikan bahwa Anda dapat menjadwal ulang item di masa mendatang jika perlu.

Saat sudah siap untuk menghapus jadwal, Anda dapat menggunakan portal Microsoft Azure atau cmdlet Remove-AzureRmAutomationSchedule. Lihat Menghapus jadwal.

Menghapus modul AzureRM

Anda dapat menghapus modul AzureRM sebelum mengimpor modul Az. Namun, jika melakukannya, Anda dapat mengganggu sinkronisasi kontrol sumber dan menyebabkan skrip apa pun yang masih dijadwalkan gagal. Jika Anda memutuskan untuk menghapus modul, lihat Menghapus instalan AzureRM.

Mengimpor modul Az

Mengimpor modul Az ke akun Automation Anda tidak secara otomatis mengimpor modul ke sesi PowerShell yang digunakan oleh runbook. Modul diimpor ke sesi PowerShell dalam situasi berikut:

  • Ketika runbook memanggil cmdlet dari modul.
  • Saat runbook mengimpor modul secara eksplisit dengan cmdlet Impor-Modul.
  • Saat runbook mengimpor modul secara eksplisit dengan pernyataan menggunakan modul. Pernyataan penggunaan didukung dimulai dengan Windows PowerShell 5.0 dan mendukung kelas dan impor jenis enum.
  • Saat runbook mengimpor modul dependensi lainnya.

Anda dapat mengimpor modul Az ke akun Automation dari portal Microsoft Azure. Karena Az.Accounts adalah dependensi untuk modul Az lainnya, pastikan untuk mengimpor modul ini terlebih dahulu.

Catatan

Dengan diperkenalkannya dukungan PowerShell 7.1 (pratinjau), opsi Telusuri galeri telah diperbarui dengan perubahan berikut:

  • Telusuri galeri tersedia di bilah Otomasi Proses>Modul.
  • Halaman Modul menampilkan dua kolom baru - Versi modul dan Versi runtime
  1. Masuk ke portal Azure.

  2. Cari dan pilih Akun Automation.

  3. Di halaman Akun Automation, pilih akun Automation Anda dari daftar.

  4. Dari akun Automation, pada bagian Sumber Daya Bersama, pilih Modul.

  5. Pilih Tambahkan modul. Di halaman Tambahkan modul, Anda dapat memilih salah satu opsi berikut:

    1. Telusuri file - memilih file dari komputer lokal Anda.
    2. Telusuri dari Galeri - Anda dapat menelusuri dan memilih modul yang ada dari galeri.
  6. Klik Pilih untuk memilih modul.

  7. Pilih Versi runtime dan klik Impor.

    Screenshot of importing modules into your Automation account.

  8. Pada halaman Modul, Anda dapat menampilkan modul yang diimpor pada bagian akun Automation.

Anda juga dapat melakukan impor ini melalui Galeri PowerShell, dengan mencari modul yang akan diimpor. Saat Anda menemukan modul, pilih modul tersebut, dan pilih tab Azure Automation. Pilih Sebarkan ke Azure Automation.

Screenshot of importing modules directly from PowerShell Gallery.

Menguji runbook Anda

Setelah mengimpor modul Az ke akun Automation, Anda dapat mulai mengedit runbook dan konfigurasi DSC untuk menggunakan modul baru. Salah satu cara untuk menguji modifikasi runbook untuk menggunakan cmdlet baru adalah dengan menggunakan perintah Enable-AzureRmAlias -Scope Process di awal runbook. Dengan menambahkan perintah ini ke runbook Anda, skrip dapat berjalan tanpa perubahan.

Modul pembuat

Sebaiknya ikuti pertimbangan di bagian ini saat Anda menulis modul PowerShell kustom untuk digunakan di Azure Automation. Untuk menyiapkan modul untuk impor, Anda harus membuat setidaknya file .dll modul .psd1, .psm1, atau PowerShell dengan nama yang sama seperti folder modul. Kemudian, ekstrak folder modul sehingga Azure Automation dapat mengimpornya sebagai satu file. Paket .zip harus memiliki nama yang sama dengan folder modul yang ada di dalamnya.

Untuk mempelajari selengkapnya tentang membuat modul PowerShell, lihat Cara Menulis Modul Skrip PowerShell.

Folder versi

Penerapan versi modul berdampingan PowerShell memungkinkan Anda menggunakan lebih dari satu versi modul dalam PowerShell. Hal ini dapat berguna jika Anda memiliki skrip lama yang telah diuji dan hanya berfungsi melawan versi tertentu dari modul PowerShell, tetapi skrip lain memerlukan versi yang lebih baru dari modul PowerShell yang sama.

Untuk membangun modul PowerShell sehingga berisi beberapa versi, buat folder modul, lalu buat folder dalam folder modul ini untuk setiap versi modul yang Anda inginkan agar dapat digunakan. Dalam contoh berikut, modul yang disebut TestModule menyediakan dua versi, 1.0.0 dan 2.0.0.

TestModule
   1.0.0
   2.0.0

Dalam setiap folder versi, salin file .dll modul PowerShell .psm1, .psd1, atau PowerShell yang membentuk modul ke dalam folder versi masing-masing. Ekstrak folder modul agar Azure Automation dapat mengimpornya sebagai satu file .zip. Meskipun Automation hanya menampilkan versi tertinggi modul yang diimpor, jika paket modul berisi versi modul berdampingan, semuanya dapat digunakan dalam runbook atau konfigurasi DSC Anda.

Meskipun mendukung modul yang berisi versi berdampingan dalam paket yang sama, Automation tidak mendukung penggunaan beberapa versi modul di seluruh impor paket modul. Misalnya, Anda mengimpor modul A, yang berisi versi 1 dan 2 ke akun Automation Anda. Kemudian, Anda memperbarui modul A untuk menyertakan versi 3 dan 4, ketika Anda mengimpor ke akun Automation Anda, hanya versi 3 dan 4 yang dapat digunakan dalam runbook atau konfigurasi DSC apa pun. Jika Anda memerlukan semua versi - 1, 2, 3, dan 4 tersedia, file .zip yang Anda impor harus berisi versi 1, 2, 3, dan 4.

Jika Anda akan menggunakan versi yang berbeda dari modul yang sama antara runbook, Anda harus selalu mendeklarasikan versi yang ingin Anda gunakan dalam runbook Anda menggunakan cmdlet Import-Module dan menyertakan parameter -RequiredVersion <version>. Meski versi yang ingin Anda gunakan adalah versi terbaru. Ini karena pekerjaan runbook dapat berjalan di kotak pasir yang sama. Jika kotak pasir telah secara eksplisit memuat modul nomor versi tertentu, karena pekerjaan sebelumnya di kotak pasir tersebut meminta untuk melakukannya, pekerjaan selanjutnya di kotak pasir tersebut tidak akan otomatis memuat versi terbaru modul tersebut. Hal ini terjadi karena beberapa versinya sudah dimuat di kotak pasir.

Untuk sumber daya DSC, gunakan perintah berikut untuk menentukan versi tertentu:

Import-DscResource -ModuleName <ModuleName> -ModuleVersion <version>

Informasi bantuan

Menyertakan sinopsis, deskripsi, dan bantuan URI untuk setiap cmdlet dalam modul Anda. Di PowerShell, Anda dapat menentukan informasi bantuan untuk cmdlet dengan menggunakan cmdlet Get-Help. Contoh berikut menunjukkan cara menentukan sinopsis dan membantu URI dalam file modul .psm1.

<#
     .SYNOPSIS
      Gets a Contoso User account
#>
function Get-ContosoUser {
[CmdletBinding](DefaultParameterSetName='UseConnectionObject', `
HelpUri='https://www.contoso.com/docs/information')]
[OutputType([String])]
param(
   [Parameter(ParameterSetName='UserAccount', Mandatory=true)]
   [ValidateNotNullOrEmpty()]
   [string]
   $UserName,

   [Parameter(ParameterSetName='UserAccount', Mandatory=true)]
   [ValidateNotNullOrEmpty()]
   [string]
   $Password,

   [Parameter(ParameterSetName='ConnectionObject', Mandatory=true)]
   [ValidateNotNullOrEmpty()]
   [Hashtable]
   $Connection
)

switch ($PSCmdlet.ParameterSetName) {
   "UserAccount" {
      $cred = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $UserName, $Password
      Connect-Contoso -Credential $cred
   }
   "ConnectionObject" {
      Connect-Contoso -Connection $Connection
  }
}
}

Memberikan informasi ini akan menampilkan teks bantuan melalui cmdlet Get-Help di konsol PowerShell. Teks ini juga ditampilkan di portal Microsoft Azure.

Screenshot of integration module help

Tipe sambungan

Jika modul tersambung ke layanan eksternal, tentukan tipe koneksi dengan menggunakan modul integrasi kustom. Setiap cmdlet dalam modul harus menerima instans tipe koneksi (objek koneksi) sebagai parameter. Pengguna memetakan parameter aset koneksi ke parameter cmdlet yang sesuai setiap kali memanggil cmdlet.

Use a custom connection in the Azure portal

Contoh runbook berikut menggunakan aset koneksi Contoso yang memanggil ContosoConnection untuk mengakses sumber daya Contoso dan mengembalikan data dari layanan eksternal. Dalam contoh ini, bidang dipetakan ke UserName dan properti Password untuk objek PSCredential, lalu diteruskan ke cmdlet.

$contosoConnection = Get-AutomationConnection -Name 'ContosoConnection'

$cred = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $contosoConnection.UserName, $contosoConnection.Password
Connect-Contoso -Credential $cred
}

Cara yang lebih mudah dan lebih baik untuk mendekati perilaku ini adalah dengan langsung meneruskan objek koneksi ke cmdlet:

$contosoConnection = Get-AutomationConnection -Name 'ContosoConnection'

Connect-Contoso -Connection $contosoConnection
}

Anda dapat mengaktifkan perilaku serupa untuk cmdlet Anda dengan memungkinkan mereka menerima objek koneksi secara langsung sebagai parameter, bukan hanya bidang koneksi untuk parameter. Biasanya Anda ingin parameter diatur untuk masing-masing, sehingga pengguna yang tidak menggunakan Automation dapat memanggil cmdlet Anda tanpa membuat hashtable untuk bertindak sebagai objek koneksi. Set parameter UserAccount digunakan untuk meneruskan properti bidang koneksi. ConnectionObject memungkinkan Anda melewati koneksi langsung.

Jenis output

Menentukan jenis output untuk semua cmdlet di modul Anda. Menentukan jenis output untuk cmdlet memungkinkan IntelliSense waktu desain untuk membantu menentukan properti output cmdlet selama pembuatan. Praktik ini sangat membantu selama tulis balik runbook grafik, di mana pengetahuan waktu desain adalah kunci untuk pengalaman pengguna yang mudah dengan modul Anda.

Tambahkan [OutputType([<MyOutputType>])], dengan MyOutputType adalah jenis yang valid. Untuk mempelajari selengkapnya tentang OutputType, lihat Tentang Functions OutputTypeAttribute. Kode berikut adalah contoh menambahkan OutputType ke cmdlet:

function Get-ContosoUser {
[OutputType([String])]
param(
   [string]
   $Parameter1
)
# <script location here>
}

Screenshot of graphical runbook output type

Perilaku ini mirip dengan fungsi "type ahead" dari output cmdlet di lingkungan layanan integrasi PowerShell, tanpa harus menjalankannya.

Screenshot of POSH IntelliSense

Status cmdlet

Buat agar semua cmdlet dalam modul Anda bersifat stateless. Beberapa pekerjaan runbook dapat berjalan secara bersamaan dalam AppDomain yang sama serta kotak pasir dan proses yang sama. Jika ada status yang dibagikan pada tingkat tersebut, pekerjaan dapat memengaruhi satu sama lain. Perilaku ini dapat menyebabkan masalah terputus-putus dan sulit didiagnosis. Berikut adalah contoh apa yang harus disertakan:

$globalNum = 0
function Set-GlobalNum {
   param(
       [int] $num
   )

   $globalNum = $num
}
function Get-GlobalNumTimesTwo {
   $output = $globalNum * 2

   $output
}

Dependensi modul

Pastikan bahwa modul sepenuhnya berada dalam paket yang dapat disalin dengan menggunakan xcopy. Modul Automation didistribusikan ke kotak pasir Automation saat runbook dijalankan. Modul harus berfungsi secara independen dari host yang menjalankannya.

Anda harus dapat zip up dan memindahkan paket modul, dan menjalankannya agar berfungsi normal ketika diimpor ke lingkungan PowerShell host lain. Agar hal ini terjadi, pastikan bahwa modul tidak bergantung pada file apa pun di luar folder modul yang diekstrak ketika modul diimpor ke dalam Automation.

Modul Anda tidak boleh bergantung pada pengaturan registri unik apa pun di host. Contohnya adalah pengaturan yang dibuat saat produk dipasang.

Jalur file modul

Pastikan bahwa semua file dalam modul memiliki jalur dengan kurang dari 140 karakter. Setiap jalur dengan panjang lebih dari 140 karakter menyebabkan masalah dengan mengimpor runbook. Automation tidak dapat mengimpor file dengan ukuran jalur lebih dari 140 karakter ke dalam sesi PowerShell dengan Import-Module.

Mengimpor modul

Bagian ini menentukan beberapa cara agar Anda dapat mengimpor modul ke akun Automation Anda.

Mengimpor modul di portal Microsoft Azure

Untuk mengimpor modul di portal Microsoft Azure:

  1. Di portal Microsoft Azure, cari dan pilih Akun Automation.
  2. Di halaman Akun Automation, pilih akun Automation Anda dari daftar.
  3. Di bawah Sumber Daya Bersama, pilih Modul.
  4. Pilih Tambahkan modul.
  5. Pilih file .zip yang berisi modul Anda.
  6. Pilih OK untuk mulai mengimpor proses.

Mengimpor modul dengan menggunakan PowerShell

Anda dapat menggunakan cmdlet New-AzAutomationModule untuk mengimpor modul ke akun Automation Anda. Cmdlet mengambil URL untuk paket .zip modul.

New-AzAutomationModule -Name <ModuleName> -ContentLinkUri <ModuleUri> -ResourceGroupName <ResourceGroupName> -AutomationAccountName <AutomationAccountName>

Anda juga dapat menggunakan cmdlet yang sama untuk mengimpor modul dari Galeri PowerShell secara langsung. Pastikan untuk mengambil ModuleName dan ModuleVersion dari Galeri PowerShell.

$moduleName = <ModuleName>
$moduleVersion = <ModuleVersion>
New-AzAutomationModule -AutomationAccountName <AutomationAccountName> -ResourceGroupName <ResourceGroupName> -Name $moduleName -ContentLinkUri "https://www.powershellgallery.com/api/v2/package/$moduleName/$moduleVersion"

Anda dapat mengimpor modul Galeri PowerShell baik langsung dari Galeri maupun dari akun Automation Anda.

Untuk mengimpor modul langsung dari Galeri PowerShell:

  1. Buka https://www.powershellgallery.com dan cari modul yang akan diimpor.
  2. Di bawah Opsi Penginstalan, pada tab Azure Automation, pilih Sebarkan ke Azure Automation. Tindakan ini akan membuka portal Microsoft Azure.
  3. Pada halaman Impor, pilih akun Automation Anda, dan pilih OK.

Screenshot of the PowerShell Gallery import module

Untuk mengimpor modul Galeri PowerShell langsung dari akun Automation Anda:

  1. Di portal Microsoft Azure, cari dan pilih Akun Automation.
  2. Di halaman Akun Automation, pilih akun Automation Anda dari daftar.
  3. Di bawah Sumber Daya Bersama, pilih Modul.
  4. Pilih Telusuri galeri, lalu cari modul di Galeri.
  5. Pilih modul yang akan diimpor, lalu pilih Impor.
  6. Pilih OK untuk memulai proses impor.

Screenshot of importing a PowerShell Gallery module from the Azure portal

Menghapus modul

Jika Anda mengalami masalah dengan modul, atau Anda perlu mengembalikan ke versi modul sebelumnya, Anda dapat menghapusnya dari akun Automation. Anda tidak dapat menghapus versi asli modul default yang diimpor saat membuat akun Automation. Jika modul yang akan dihapus adalah versi yang lebih baru dari salah satu dari modul default, modul akan kembali ke versi yang dipasang dengan akun Automation Anda. Jika tidak, modul apa pun yang Anda hapus dari akun Automation Anda akan dihapus.

Menghapus modul dalam portal Microsoft Azure

Untuk menghapus modul di portal Microsoft Azure:

  1. Di portal Microsoft Azure, cari dan pilih Akun Automation.
  2. Di halaman Akun Automation, pilih akun Automation Anda dari daftar.
  3. Di bawah Sumber Daya Bersama, pilih Modul.
  4. Pilih modul yang ingin Anda hapus.
  5. Pada halaman Modul, pilih Hapus. Jika modul ini adalah salah satu modul default, modul akan kembali ke versi yang ada saat akun Automation dibuat.

Menghapus modul menggunakan PowerShell

Untuk menghapus modul melalui PowerShell, jalankan perintah berikut:

Remove-AzAutomationModule -Name <moduleName> -AutomationAccountName <automationAccountName> -ResourceGroupName <resourceGroupName>

Langkah berikutnya