Jendela Pemeliharaan: Panduan Praktis untuk Penjadwalan & Otomatisasi di Lingkungan TI
“Sebuah jendela pemeliharaan yang terkelola dengan baik bukan hanya meminimalkan downtime, melainkan juga meningkatkan kepercayaan pengguna terhadap layanan IT.” – Rina Pratama, Senior IT Operations Manager
Repositori GitHub Maintenance‑Windows menyediakan kumpulan skrip PowerShell, contoh runbook Azure Automation, dan template penjadwalan yang dapat langsung dipakai untuk mengotomatisasi proses tersebut.
Berikut kami rangkum cara memanfaatkan repositori tersebut serta prinsip‑prinsip utama yang harus diikuti:
|
Aspek |
Tujuan |
Manfaat |
|
Penjadwalan |
Menentukan
tanggal & jam pemeliharaan |
Mengurangi
dampak pada jam operasional utama |
|
Otomatisasi |
Menggunakan
skrip / runbook |
Meminimalkan
error manusia, mempercepat eksekusi |
|
Monitoring |
Memantau
status selama pemeliharaan |
Menyediakan
data real‑time untuk keputusan cepat |
|
Manajemen
Perubahan |
Selaras
dengan ITIL
Change Management |
Memastikan
persetujuan, catatan, dan auditability |
|
Integrasi
Azure |
Memanfaatkan Azure
Automation, Logic
Apps |
Skalabilitas,
keamanan, dan pelaporan terpusat |
Penjadwalan & Otomatisasi
1. Menentukan Jendela Pemeliharaan
|
Kriteria |
Contoh
Implementasi |
|
Frekuensi |
Mingguan
(patch OS), Bulanan (upgrade aplikasi) |
|
Durasi |
2‑4 jam
(tergantung kompleksitas) |
|
Waktu |
02:00‑04:00
WIB (off‑peak) |
|
Stakeholder |
Tim Ops,
Owner aplikasi, End‑user (via email) |
|
Persetujuan |
ITIL Change
Advisory Board (CAB) |
2. Otomatisasi dengan PowerShell
Repositori menyediakan modul PowerShell yang dapat di‑import ke dalam runbook Azure Automation:
# Load modul custom
Import-Module -Name "MaintenanceWindow"
# Definisikan parameter jendela
$window = New-MaintenanceWindow `
-StartTime (Get-Date "2025-11-01 02:00") `
-EndTime (Get-Date "2025-11-01 04:00") `
-Description "Patch keamanan Windows Server"
# Eksekusi tindakan selama jendela
Start-MaintenanceTask -Window $window -TaskScript {
# Contoh: Update Windows
Install-WindowsUpdate -AcceptAll -AutoReboot:$false
}
Skrip di atas menyiapkan jendela pemeliharaan, kemudian mengeksekusi tugas pemeliharaan (contoh: instalasi patch). Karena dijalankan di Azure Automation, proses dapat dijadwalkan secara terpusat, dipantau, dan tercatat dalam Log Analytics.
Runbook PowerShell
Berikut contoh runbook yang siap pakai dari repositori:
|
Nama
Runbook |
Fungsi |
Parameter
Utama |
Catatan |
|
Mematikan VM,
menjalankan patch, menghidupkan kembali |
-VMName, -MaintenanceWindow |
Memanfaatkan
Azure PowerShell module Az.Compute |
|
|
Membuat
backup full & diff sebelum pemeliharaan |
-ServerName, -DatabaseName |
Mengirim
notifikasi ke Teams setelah selesai |
|
|
Deploy paket
aplikasi ke environment staging |
-PackagePath, -TargetEnv |
Dapat
dipanggil lewat webhook Azure DevOps |
Cara Mengimport ke Azure Automation
- Masuk ke Azure Portal → Automation Accounts.
- Pilih Runbooks → Add a runbook → Import PowerShell script.
- Unggah file
.ps1dari folderrunbookspada repositori. - Set Schedule (mis. setiap pertama Selasa bulan) dan Link assets (Credential, Variable).
Dengan begitu, penjadwalan dan eksekusi otomatis menjadi satu alur yang terkelola.
Integrasi Azure
Azure Automation & Logic Apps
|
Komponen |
Kegunaan |
|
Menyimpan
runbook, credential, variable |
|
|
Mengelola
patch OS pada VM Windows/Linux |
|
|
Mengumpulkan
metrik downtime & alert |
|
|
Logic Apps |
Mengirim
notifikasi (email, Teams, Slack) sebelum & sesudah jendela |
|
Memaksa
penggunaan tag maintenance-window pada resource baru |
Monitoring & Manajemen Event
Selama jendela pemeliharaan, monitoring menjadi kunci untuk mendeteksi masalah secara real‑time. Berikut praktik terbaik yang direkomendasikan:
|
Aktivitas |
Alat |
Detail |
|
Health
Check |
Azure Monitor
(Metrics) |
CPU, Memory,
Disk I/O > threshold |
|
Log
Collection |
Log Analytics
Workspace |
Kumpulkan
EventLog, Syslog, Application logs |
|
Alerting |
Action
Groups (email, SMS, webhook) |
Notifikasi
saat threshold terlampaui |
|
Dashboard |
Azure
Dashboard / Power BI |
Visualisasi
downtime, MTTR, SLA compliance |
|
Audit
Trail |
Azure
Activity Log |
Catat siapa,
kapan, apa yang dijalankan |
Contoh Query Log Analytics untuk memantau downtime VM selama jendela:
Heartbeat
| where TimeGenerated between(datetime(2025-11-01 02:00) .. datetime(2025-11-01 04:00))
| summarize downCount = countif(Computer == "unavailable") by Computer
Dengan query ini, tim operasi dapat melihat ketersediaan layanan secara granular dan melaporkan hasil ke manajemen.
Manajemen Perubahan & Keselarasan ITIL
ITIL (Information Technology Infrastructure Library) menekankan proses Change Management yang terstruktur untuk menghindari risiko. Jendela pemeliharaan merupakan Standard Change bila memenuhi kriteria berikut:
|
Kriteria
ITIL |
Penjelasan |
|
Low Risk |
Perubahan
bersifat rutin, terdokumentasi, dan memiliki rollback plan. |
|
Pre‑Approved |
Disetujui
oleh Change Advisory Board (CAB) sebelum dijadwalkan. |
|
Documented |
Semua
langkah, script, dan hasil diuji dan dicatat dalam Configuration Management
Database (CMDB). |
|
Post‑Implementation
Review |
Dilakukan
dalam 24‑48 jam untuk menilai keberhasilan. |
Langkah‑Langkah Implementasi
“Mengintegrasikan proses ITIL dengan otomatisasi PowerShell serta Azure Automation menjamin konsistensi dan auditability yang diperlukan dalam lingkungan enterprise.” – Budi Santoso, Consultant ITIL
Selamat mencoba, dan semoga infrastruktur Anda tetap stabil dan aman! 🚀

0 Comments