Gambaran umum Mulai/Hentikan Komputer Virtual selama di luar jam kerja

Fitur Mulai/Hentikan Komputer Virtual selama di luar jam kerja memulai atau menghentikan komputer virtual Azure yang diaktifkan. Ini memulai atau menghentikan komputer pada jadwal yang ditentukan pengguna, memberikan wawasan melalui log Azure Monitor, dan mengirim email opsional dengan menggunakan grup tindakan. Fitur ini dapat dikelola di Azure Resource Manager dan komputer virtual klasik untuk sebagian besar skenario.

Catatan

Sebelum Anda menginstal versi ini (v1), kami ingin Anda mengetahui tentang versi berikutnya, yang sekarang sedang dalam pratinjau. Versi baru (v2) ini menawarkan semua fungsi yang sama dengan versi ini, tetapi dirancang untuk memanfaatkan teknologi yang lebih baru di Azure. Ini menambahkan beberapa fitur yang biasa diminta dari pelanggan, seperti dukungan multi-langganan dari satu instans Mulai/Hentikan.

Start/Stop VM selama di luar jam kerja (v1) akan dihentikan pada 21/5/2022.

Fitur ini menggunakan cmdlet Start-AzVm untuk memulai komputer virtual. Ini menggunakan Stop-AzVM untuk menghentikan komputer virtual.

Catatan

Mulai/Hentikan Komputer Virtual selama di luar jam kerja telah diperbarui untuk mendukung versi terbaru dari modul Azure yang tersedia. Versi terbaru dari fitur ini, tersedia di Marketplace Azure, tidak mendukung modul AzureRM karena kami telah bermigrasi dari modul AzureRM ke Az. Sementara runbook telah diperbarui untuk menggunakan cmdlet modul Azure Az baru, fitur tersebut menggunakan alias awalan AzureRM.

Fitur ini menyediakan opsi otomatisasi berbiaya rendah yang terdesentralisasi untuk pengguna yang ingin mengoptimalkan biaya komputer virtual mereka. Anda dapat menggunakan fitur ini untuk:

Berikut ini adalah batasan dengan fitur saat ini:

  • Ini mengelola komputer virtual di wilayah mana pun, tetapi hanya dapat digunakan dalam langganan yang sama dengan akun Azure Automation Anda.
  • Ini tersedia di Azure dan Azure Government untuk wilayah mana pun yang mendukung ruang kerja Analitik Log, akun Azure Automation, dan pemberitahuan. Wilayah Azure Government saat ini tidak mendukung fungsionalitas email.

Prasyarat

  • Runbook untuk Mulai/Hentikan Komputer Virtual selama di luar jam kerja akan berfungsi dengan akun Azure Jalankan Sebagai. Akun Jalankan Sebagai adalah metode autentikasi yang disukai karena menggunakan autentikasi sertifikat, bukan kata sandi yang mungkin kedaluwarsa atau sering berubah.

  • Ruang kerja Analitik Log Azure Monitor yang menyimpan log pekerjaan runbook dan aliran pekerjaan akan menghasilkan ruang kerja untuk kueri dan analisis. Ruang kerja akun Azure Automation dan Analitik Log harus berada di wilayah langganan dan dukungan yang sama. Ruang kerja harus sudah ada, Anda tidak dapat membuat ruang kerja baru selama penyebaran fitur ini.

Sebaiknya Anda menggunakan akun Automation terpisah untuk bekerja dengan komputer virtual yang diaktifkan untuk fitur Mulai/Hentikan Komputer Virtual selama di luar jam kerja. Versi modul Azure sering ditingkatkan dan parameternya mungkin berubah. Fitur ini tidak ditingkatkan pada tempo yang sama dan mungkin tidak berfungsi dengan versi cmdlet yang lebih baru yang digunakannya. Sebelum mengimpor modul yang diperbarui ke akun Automation produksi Anda, sebaiknya Anda mengimpornya ke akun Automation pengujian untuk memverifikasi bahwa tidak ada masalah kompatibilitas.

Izin

Anda harus memiliki izin tertentu untuk mengaktifkan komputer virtual untuk fitur Mulai/Hentikan Komputer Virtual selama di luar jam kerja. Izin tersebut berbeda tergantung pada apakah fitur tersebut menggunakan akun Automation dan ruang kerja Analitik Log yang telah dibuat sebelumnya atau membuat akun dan ruang kerja baru.

Anda tidak perlu mengonfigurasi izin jika Anda adalah Kontributor di langganan dan Administrator Global di penyewa Azure Active Directory (AD). Jika Anda tidak memiliki hak ini atau perlu mengonfigurasi peran kustom, pastikan Anda memiliki izin yang dijelaskan di bawah.

Izin untuk akun Automation dan ruang kerja Analitik Log yang sudah ada sebelumnya

Untuk mengaktifkan komputer virtual untuk fitur Mulai/Hentikan Komputer Virtual selama di luar jam menggunakan akun Automation dan ruang kerja Analitik Log yang ada, Anda memerlukan izin berikut pada cakupan Grup Sumber Daya. Untuk mempelajari selengkapnya tentang peran, lihat Peran kustom Azure.

Izin Cakupan
Microsoft.Automation/automationAccounts/read Grup Sumber Daya
Microsoft.Automation/automationAccounts/variables/write Grup Sumber Daya
Microsoft.Automation/automationAccounts/schedules/write Grup Sumber Daya
Microsoft.Automation/automationAccounts/runbooks/write Grup Sumber Daya
Microsoft.Automation/automationAccounts/connections/write Grup Sumber Daya
Microsoft.Automation/automationAccounts/certificates/write Grup Sumber Daya
Microsoft.Automation/automationAccounts/modules/write Grup Sumber Daya
Microsoft.Automation/automationAccounts/modules/read Grup Sumber Daya
Microsoft.automation/automationAccounts/jobSchedules/write Grup Sumber Daya
Microsoft.Automation/automationAccounts/jobs/write Grup Sumber Daya
Microsoft.Automation/automationAccounts/jobs/read Grup Sumber Daya
Microsoft.OperationsManagement/solutions/write Grup Sumber Daya
Microsoft.OperationalInsights/workspaces/* Grup Sumber Daya
Microsoft.Insights/diagnosticSettings/write Grup Sumber Daya
Microsoft.Insights/ActionGroups/Write Grup Sumber Daya
Microsoft.Insights/ActionGroups/read Grup Sumber Daya
Microsoft.Resources/subscriptions/resourceGroups/read Grup Sumber Daya
Microsoft.Resources/deployments/* Grup Sumber Daya

Izin untuk akun Automation baru dan ruang kerja Analitik Log baru

Anda dapat mengaktifkan komputer virtual untuk fitur Mulai/Hentikan Komputer Virtual selama di luar jam kerja menggunakan akun Automation baru dan ruang kerja Analitik Log. Dalam hal ini, Anda memerlukan izin yang ditentukan di bagian sebelumnya serta izin yang ditentukan di bagian ini. Anda juga memerlukan peran berikut:

Izin Cakupan
Microsoft.Authorization/Operations/read Langganan
Microsoft.Authorization/permissions/read Langganan
Microsoft.Authorization/roleAssignments/read Langganan
Microsoft.Authorization/roleAssignments/write Langganan
Microsoft.Authorization/roleAssignments/delete Langganan
Microsoft.Automation/automationAccounts/connections/read Grup Sumber Daya
Microsoft.Automation/automationAccounts/certificates/read Grup Sumber Daya
Microsoft.Automation/automationAccounts/write Grup Sumber Daya
Microsoft.OperationalInsights/workspaces/write Grup Sumber Daya

Komponen

Fitur Mulai/Hentikan VM selama di luar jam kerja mencakup runbook, jadwal, dan integrasi yang telah dikonfigurasi sebelumnya dengan log Azure Monitor. Anda dapat menggunakan elemen-elemen ini untuk menyesuaikan mulai dan matikan komputer virtual agar sesuai dengan kebutuhan bisnis Anda.

Runbook

Tabel berikut mencantumkan runbook yang disebarkan fitur ke akun Automation Anda. JANGAN membuat perubahan pada kode runbook. Sebagai gantinya, tulis runbook Anda sendiri untuk fungsionalitas baru.

Penting

Jangan langsung menjalankan runbook apa pun dengan elemen anak yang ditambahkan ke nama runbook tersebut.

Semua runbook induk menyertakan parameter WhatIf. Saat diatur ke True, parameter akan mendukung tindakan merinci perilaku persis yang dilakukan runbook saat dijalankan tanpa parameter dan memvalidasi bahwa komputer virtual yang benar ditargetkan. Runbook hanya melakukan tindakan yang ditentukan ketika parameter WhatIf diatur ke False.

Runbook Parameter Deskripsi
AutoStop_CreateAlert_Child VMObject
AlertAction
WebHookURI
Dipanggil dari runbook induk. Runbook ini membuat pemberitahuan per sumber daya untuk skenario Penghentian Otomatis.
AutoStop_CreateAlert_Parent VMList
WhatIf: True or False
Membuat atau memperbarui aturan pemberitahuan Azure pada komputer virtual dalam grup langganan atau sumber daya yang ditargetkan.
VMList adalah daftar komputer virtual yang dipisahkan koma (tanpa ruang kosong), misalnya, vm1,vm2,vm3.
WhatIf memungkinkan validasi logika runbook tanpa mengeksekusi.
AutoStop_Disable Tidak ada Menonaktifkan pemberitahuan Berhenti Otomatis dan jadwal default.
AutoStop_VM_Child WebHookData Dipanggil dari runbook induk. Aturan pemberitahuan memanggil runbook ini untuk menghentikan komputer virtual klasik.
AutoStop_VM_Child_ARM WebHookData Dipanggil dari runbook induk. Aturan pemberitahuan memanggil runbook ini untuk menghentikan komputer virtual.
ScheduledStartStop_Base_Classic CloudServiceName
Action: Start or Stop
VMList
Melakukan tindakan memulai atau menghentikan dalam grup komputer virtual klasik oleh Cloud Services.
ScheduledStartStop_Child VMName
Action: Start or Stop
ResourceGroupName
Dipanggil dari runbook induk. Menjalankan tindakan mulai atau hentikan untuk penghentian terjadwal.
ScheduledStartStop_Child_Classic VMName
Action: Start or Stop
ResourceGroupName
Dipanggil dari runbook induk. Menjalankan tindakan mulai atau hentikan untuk penghentian terjadwal untuk komputer virtual klasik.
ScheduledStartStop_Parent Action: Start or Stop
VMList
WhatIf: True or False
Memulai atau menghentikan semua komputer virtual dalam langganan. Edit variabel External_Start_ResourceGroupNames dan External_Stop_ResourceGroupNames hanya untuk dijadwalkan pada grup sumber daya yang ditargetkan ini. Anda juga dapat mengecualikan komputer virtual tertentu dengan memperbarui variabel External_ExcludeVMNames.
SequencedStartStop_Parent Action: Start or Stop
WhatIf: True or False
VMList
Membuat tag bernama sequencestart dan sequencestop pada setiap komputer virtual yang ingin Anda urutkan aktivitas mulai/berhentinya. Nama tag ini peka huruf besar/kecil. Nilai tag harus berupa daftar bilangan bulat positif, misalnya, 1,2,3, yang sesuai dengan urutan yang Anda inginkan untuk memulai atau berhenti.
Catatan: Komputer virtual harus berada dalam grup sumber daya yang ditentukan dalam variabel External_Start_ResourceGroupNames, External_Stop_ResourceGroupNames, dan External_ExcludeVMNames. Mereka harus memiliki tag yang sesuai agar tindakan dapat diterapkan.

Variabel

Tabel berikut mencantumkan variabel yang dibuat di akun Automation Anda. Hanya ubah variabel yang diawali dengan External. Mengubah variabel yang diawali dengan Internal akan menyebabkan efek yang tidak diinginkan.

Catatan

Keterbatasan pada nama komputer virtual dan grup sumber daya sebagian besar disebabkan oleh ukuran variabel. Lihat Aset variabel di Azure Automation.

Variabel Deskripsi
External_AutoStop_Condition Operator kondisional diperlukan untuk mengonfigurasi kondisi sebelum memicu peringatan. Nilai yang dapat diterima adalah GreaterThan, GreaterThanOrEqual, LessThan, dan LessThanOrEqual.
External_AutoStop_Description Pemberitahuan untuk menghentikan komputer virtual jika persentase CPU melebihi ambang batas.
External_AutoStop_Frequency Frekuensi evaluasi untuk aturan. Parameter ini menerima input dalam format rentang waktu. Nilai yang mungkin adalah dari 5 menit hingga 6 jam.
External_AutoStop_MetricName Nama metrik kinerja yang akan dikonfigurasi aturan Azure Alert.
External_AutoStop_Severity Tingkat keparahan pemberitahuan metrik, yang dapat berkisar dari 0 hingga 4.
External_AutoStop_Threshold Ambang batas untuk aturan Azure Alert yang ditentukan dalam variabel External_AutoStop_MetricName. Nilai persentase berkisar dari 1 hingga 100.
External_AutoStop_TimeAggregationOperator Operator agregasi waktu diterapkan ke ukuran jendela yang dipilih untuk mengevaluasi kondisi. Nilai yang dapat diterima adalah Average, Minimum, Maximum, Total, dan Last.
External_AutoStop_TimeWindow Ukuran jendela saat Azure menganalisis metrik yang dipilih untuk memicu peringatan. Parameter ini menerima input dalam format rentang waktu. Nilai yang mungkin adalah dari 5 menit hingga 6 jam.
External_EnableClassicVMs Nilai yang menentukan apakah komputer virtual klasik ditargetkan oleh fitur tersebut. Nilai default-nya adalah True. Atur variabel ini ke False untuk langganan Azure CSP.
External_ExcludeVMNames Daftar nama komputer virtual yang dipisahkan koma untuk dikecualikan, dibatasi hingga 140 komputer virtual. Jika Anda menambahkan lebih dari 140 komputer virtual ke daftar, komputer virtual yang ditentukan untuk pengecualian mungkin akan dimulai atau dihentikan secara tidak sengaja.
External_Start_ResourceGroupNames Daftar yang dipisahkan koma dari satu atau beberapa grup sumber daya yang ditargetkan untuk tindakan mulai.
External_Stop_ResourceGroupNames Daftar yang dipisahkan koma dari satu atau beberapa grup sumber daya yang ditargetkan untuk tindakan penghentian.
External_WaitTimeForVMRetrySeconds Waktu tunggu dalam detik untuk tindakan yang akan dilakukan pada komputer virtual untuk runbook SequencedStartStop_Parent. Variabel ini memungkinkan runbook untuk menunggu operasi elemen anak selama beberapa detik tertentu sebelum melanjutkan dengan tindakan berikutnya. Waktu tunggu maksimum adalah 10800 detik atau tiga jam. Nilai default-nya adalah 2100 detik.
Internal_AutomationAccountName Menentukan nama akun Automation.
Internal_AutoSnooze_ARM_WebhookURI URI Webhook meminta skenario AutoStop untuk komputer virtual.
Internal_AutoSnooze_WebhookUri URI Webhook meminta skenario AutoStop untuk komputer virtual klasik.
Internal_AzureSubscriptionId ID langganan Azure.
Internal_ResourceGroupName Nama grup sumber daya akun Automation.

Catatan

Untuk variabel External_WaitTimeForVMRetryInSeconds, nilai default telah diperbarui dari 600 menjadi 2100.

Di semua skenario, variabel External_Start_ResourceGroupNames, External_Stop_ResourceGroupNames, dan External_ExcludeVMNames diperlukan untuk menargetkan komputer virtual, kecuali untuk daftar komputer virtual yang dipisahkan koma untuk runbook AutoStop_CreateAlert_Parent, SequencedStartStop_Parent, dan ScheduledStartStop_Parent. Artinya, komputer virtual Anda harus termasuk dalam grup sumber daya target agar tindakan memulai dan menghentikan terjadi. Logikanya bekerja mirip dengan Azure Policy, yang grup langganan atau sumber dayanya dapat Anda targetkan dan memiliki tindakan yang diwarisi oleh komputer virtual yang baru dibuat. Pendekatan ini menghindari keharusan mempertahankan jadwal terpisah untuk setiap komputer virtual dan mengelola mulai dan hentikan dalam skala besar.

Jadwal

Tabel berikut mencantumkan setiap jadwal default yang dibuat di akun Automation Anda. Anda dapat mengubahnya atau membuat jadwal kustom Anda sendiri. Secara default, semua jadwal dinonaktifkan kecuali untuk jadwal Scheduled_StartVM dan Scheduled_StopVM.

Jangan aktifkan semua jadwal, karena hal itu dapat membuat tindakan jadwal yang tumpang tindih. Sebaiknya tentukan pengoptimalan mana yang ingin Anda lakukan dan ubah sesuai dengan itu. Lihat contoh skenario di bagian gambaran umum untuk penjelasan selengkapnya.

Nama jadwal Frekuensi Deskripsi
Schedule_AutoStop_CreateAlert_Parent Setiap 8 jam Menjalankan runbook AutoStop_CreateAlert_Parent setiap 8 jam, yang selanjutnya menghentikan nilai berbasis komputer virtual dalam variabel External_Start_ResourceGroupNames, External_Stop_ResourceGroupNames, dan External_ExcludeVMNames. Atau Anda dapat menentukan daftar komputer virtual yang dipisahkan koma dengan menggunakan parameter VMList.
Scheduled_StopVM Ditentukan pengguna, setiap hari Menjalankan runbook ScheduledStopStart_Parent dengan parameter Stop setiap hari pada waktu yang ditentukan. Secara otomatis menghentikan semua komputer virtual yang memenuhi aturan yang ditentukan oleh aset variabel. Aktifkan jadwal terkait Scheduled-StartVM.
Scheduled_StartVM Ditentukan pengguna, setiap hari Menjalankan runbook ScheduledStopStart_Parent dengan nilai parameter Start setiap hari pada waktu yang ditentukan. Secara otomatis memulai semua komputer virtual yang memenuhi aturan yang ditentukan oleh aset variabel. Aktifkan jadwal terkait Scheduled-StopVM.
Sequenced-StopVM 13:00 (UTC), setiap hari Jumat Menjalankan runbook Sequenced_StopStop_Parent dengan nilai parameter Stop setiap hari Jumat pada waktu yang ditentukan. Secara berurutan (naik) menghentikan semua komputer dengan tag SequenceStop yang ditentukan oleh variabel yang sesuai. Untuk informasi selengkapnya tentang nilai tag dan variabel aset, lihat Runbook. Aktifkan jadwal terkait, Sequenced-StartVM.
Sequenced-StartVM 13:00 (UTC), setiap hari Senin Menjalankan runbook SequencedStopStart_Parent dengan nilai parameter Start setiap hari Senin pada waktu yang ditentukan. Secara berurutan (turun) memulai semua komputer dengan tag SequenceStart yang ditentukan oleh variabel yang sesuai. Untuk informasi selengkapnya tentang nilai tag dan aset variabel, lihat Runbook. Aktifkan jadwal terkait, Sequenced-StopVM.

Menggunakan fitur dengan komputer virtual klasik

Jika Anda menggunakan fitur Mulai/Hentikan Komputer Virtual selama di luar jam untuk komputer virtual klasik, Automation akan memproses semua komputer virtual Anda secara berurutan per layanan cloud. Komputer virtual masih diproses secara paralel di berbagai layanan cloud.

Jika Anda memiliki lebih dari 20 komputer virtual per layanan cloud, berikut beberapa rekomendasinya:

  • Buat beberapa jadwal dengan runbook induk ScheduledStartStop_Parent dan tentukan 20 komputer virtual per jadwal.
  • Di properti jadwal, gunakan parameter VMList untuk menentukan nama komputer virtual sebagai daftar yang dipisahkan koma (tanpa ruang kosong).

Sebaliknya, jika pekerjaan Automation untuk fitur ini berjalan lebih dari tiga jam, pekerjaan tersebut akan diturunkan sementara atau dihentikan sesuai batas pembagian yang adil.

Langganan Azure CSP hanya mendukung model Azure Resource Manager. Layanan Resource Manager Non-Azure tidak tersedia dalam program ini. Saat fitur Mulai/Hentikan Komputer Virtual selama di luar jam berjalan, Anda mungkin akan menerima kesalahan karena memiliki cmdlet untuk mengelola sumber daya klasik. Untuk mempelajari selengkapnya tentang Penyedia Solusi Cloud, lihat Layanan yang tersedia di langganan Penyedia Solusi Cloud. Jika Anda menggunakan langganan Penyedia Solusi Cloud, Anda harus mengatur variabel External_EnableClassicVMs ke False setelah penyebaran.

Catatan

Artikel ini baru-baru ini diperbarui untuk menggunakan istilah log Azure Monitor alih-alih Analitik Log. Data log masih disimpan di ruang kerja Analitik Log dan masih dikumpulkan dan dianalisis oleh layanan Analitik Log yang sama. Kami memperbarui terminologi untuk mencerminkan peran log di Azure Monitor dengan lebih baik. Lihat Perubahan terminologi Azure Monitor untuk detailnya.

Melihat fitur

Gunakan salah satu mekanisme berikut untuk mengakses fitur yang diaktifkan:

  • Dari akun Automation, pilih Mulai/Hentikan Komputer Virtual di bawah Sumber Daya Terkait. Pada halaman Mulai/Hentikan Komputer Virtual, pilih Kelola solusi di bawah Kelola Solusi Mulai/Hentikan Komputer Virtual.

  • Navigasikan ke ruang kerja Analitik Log yang ditautkan ke akun Automation Anda. Setelah memilih ruang kerja, pilih Solusi dari panel sebelah kiri. Pada halaman Solusi, pilih Start-Stop-VM[workspace] dari daftar.

Memilih fitur akan menampilkan halaman Start-Stop-VM[workspace] . Di sini Anda dapat meninjau detail penting, seperti informasi di ubin StartStopVM. Seperti di ruang kerja Analitik Log Anda, ubin ini menampilkan hitungan dan representasi grafis dari pekerjaan runbook untuk fitur yang telah dimulai dan telah berhasil diselesaikan.

Halaman Manajemen Pembaruan Automation

Anda dapat melakukan analisis lebih lanjut dari catatan pekerjaan dengan mengeklik ubin donat. Dasbor menunjukkan riwayat pekerjaan dan kueri pencarian log yang telah ditentukan sebelumnya. Beralih ke portal tingkat lanjut analitik log untuk mencari berdasarkan kueri pencarian Anda.

Memperbarui fitur

Jika Anda telah menerapkan Mulai/Hentikan Komputer Virtual versi sebelumnya selama di luar jam kerja, hapus versi tersebut dari akun Anda sebelum menerapkan rilis yang diperbarui. Ikuti langkah-langkah untuk menghapus fitur tersebut, lalu ikuti langkah-langkah untuk mengaktifkannya.

Langkah berikutnya

Untuk mengaktifkan fitur pada komputer virtual di lingkungan Anda, lihat Mengaktifkan Mulai/Hentikan Komputer Virtual selama di luar jam kerja.