Pemeliharaan pada semua instance virtual machine (VM) ditentukan oleh kebijakan pemeliharaan host yang Anda pilih saat membuat VM. Beberapa VM menawarkan opsi tambahan untuk melihat jadwal pemeliharaan VM terlebih dahulu.
Halaman ini menjelaskan cara memantau dan merencanakan peristiwa pemeliharaan host di VM Compute Engine. Untuk melihat jadwal pemeliharaan VM, VM harus menjalankan jenis mesin dari salah satu kelompok mesin berikut:
- VM C3 tujuan umum
- VM C3D tujuan umum
- VM Z3 yang dioptimalkan untuk penyimpanan
- VM M1, M2, M3 yang dioptimalkan untuk memori
Sebelum memulai
-
Siapkan autentikasi, jika Anda belum melakukannya.
Autentikasi adalah proses verifikasi identitas Anda untuk akses ke layanan dan API Google Cloud.
Untuk menjalankan kode atau contoh dari lingkungan pengembangan lokal, Anda dapat melakukan autentikasi ke Compute Engine sebagai berikut.
Pilih tab untuk melihat bagaimana Anda berencana menggunakan contoh di halaman ini:
Konsol
Saat menggunakan Konsol Google Cloud untuk mengakses API dan layanan Google Cloud, Anda tidak perlu menyiapkan autentikasi.
gcloud
-
Instal Google Cloud CLI, lalu initialize dengan menjalankan perintah berikut:
gcloud init
- Menetapkan region dan zona default.
REST
Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.
Instal Google Cloud CLI, lalu initialize dengan menjalankan perintah berikut:
gcloud init
-
Peran yang diperlukan
Untuk mendapatkan izin yang Anda perlukan untuk membuat VM dan mengelola pemeliharaan VM, minta administrator untuk memberi Anda peran IAM Compute Instance Admin (v1) (roles/compute.instanceAdmin.v1
) pada project.
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses.
Peran bawaan ini berisi izin yang diperlukan untuk membuat VM dan mengelola pemeliharaan VM. Untuk melihat izin yang benar-benar diperlukan, perluas bagian Izin yang diperlukan:
Izin yang diperlukan
Izin berikut diperlukan untuk membuat VM dan mengelola pemeliharaan VM:
-
Untuk mendapatkan informasi tentang VM:
compute.instances.get
-
Untuk membuat VM:
compute.instances.create
Anda mung juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaanlainnya.
Memantau notifikasi pemeliharaan
Google mengirimkan notifikasi untuk pemeliharaan VM mendatang melalui beberapa metode. Anda dapat menemukan notifikasi dengan membuat kueri untuk VM, server metadata, atau Cloud Logging. Saat masa pemeliharaan terjadwal terbuka, Google Cloud akan otomatis melakukan pemeliharaan pada VM Anda. Dengan memantau masa pemeliharaan terjadwal VM, Anda dapat secara proaktif menyiapkan workload untuk menangani pemeliharaan mendatang dengan gangguan minimal.
VM dengan notifikasi peristiwa pemeliharaan memiliki karakteristik berikut:
- Lebih sedikit peristiwa pemeliharaan: Secara umum, VM dengan interval pemeliharaan berulang akan mengalami lebih sedikit peristiwa pemeliharaan.
- Notifikasi pemeliharaan yang lebih lama: Dapatkan notifikasi tentang peristiwa pemeliharaan terencana jauh sebelum tanggal untuk tujuan perencanaan.
- Pemantauan dan perencanaan: Gunakan Cloud Logging untuk melacak jadwal pemeliharaan. Gunakan insiden dan pemberitahuan untuk mendapatkan informasi terbaru.
Kontrol pemeliharaan on demand: Mulai pemeliharaan selama periode notifikasi untuk mengupdate VM jika sesuai dengan jadwal Anda.
Periksa notifikasi peristiwa pemeliharaan pada VM
Gunakan Google Cloud CLI, metode REST, atau server metadata untuk melihat apakah ada peristiwa pemeliharaan VM yang akan datang.
gcloud
Untuk melihat masa pemeliharaan mendatang untuk VM, gunakan
perintah
gcloud compute instances describe
. Anda harus menyertakan --zone=[ZONE_NAME]
.
gcloud compute instances describe VM_NAME \ --zone=ZONE
Ganti kode berikut:
VM_NAME
: Nama VM.ZONE
: Zona tempat VM berada.
Responsnya akan terlihat seperti ini:
upcomingMaintenance:{
"canReschedule":True
"latestWindowStartTime": "2023-12-01T19:00:01Z"
"maintenanceStatus":"PENDING"
"type":"SCHEDULED"
"windowEndTime": "2023-12-01T22:00:00Z"
"windowStartTime": "2023-12-01T19:00:00Z"
}
Dalam respons ini, canReschedule
disetel ke True
dan maintenanceStatus
disetel ke PENDING
. Pemeliharaan dijadwalkan sesuai tanggal dan waktu yang ditampilkan. Setelan ini menunjukkan bahwa Anda dapat memicu peristiwa ini secara manual terlebih
dahulu.
REST
Untuk mengetahui apakah ada pemeliharaan mendatang untuk VM, jalankan perintah instances.get
:
GET https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/instances/VM_NAME
Ganti kode berikut:
PROJECT_NAME
: Nama project.ZONE
: Zona tempat VM berada.VM_NAME
: Nama VM.
Responsnya akan terlihat seperti ini:
upcomingMaintenance:{
"canReschedule":True
"latestWindowStartTime": "2023-12-01T19:00:01Z"
"maintenanceStatus":"PENDING"
"type":"SCHEDULED"
"windowEndTime": "2023-12-01T22:00:00Z"
"windowStartTime": "2023-12-01T19:00:00Z"
}
Dalam respons ini, canReschedule
disetel ke TRUE
dan maintenanceStatus
disetel ke PENDING
. Pemeliharaan dijadwalkan sesuai tanggal dan waktu yang ditampilkan.
server metadata
Dari Guest OS, buat kueri server metadata untuk melihat peristiwa pemeliharaan berikutnya.
$ curl http://metada.google.internal/computeMetadata/v1/instance/upcoming-maintenance?alt=json -H "Metadata-Flavor: Google"
Memeriksa Cloud Logging untuk melihat notifikasi peristiwa pemeliharaan
Google mengirimkan notifikasi ke Cloud Logging sebelum pemeliharaan VM. Cloud Logging menghasilkan peristiwa sistem di Logs Explorer.
Pemeliharaan terjadwal VM muncul di Cloud Logging sebagai: compute.instance.upcomingMaintenance
.
Bergantung pada konfigurasi VM Anda, Cloud Logging akan menampilkan peristiwa dengan cara berikut:
- Untuk VM yang dikonfigurasi guna menggunakan migrasi langsung untuk pemeliharaan, peristiwa akan ditampilkan dengan nama metode:
compute.instance.migrateOnHostMaintenance
. - Untuk VM yang dikonfigurasi untuk menggunakan Hentikan dan Mulai Ulang Otomatis untuk pemeliharaan, peristiwa akan ditampilkan dengan nama metode:
compute.instance.terminateOnHostMaintenance
.
Jika VM Anda dikonfigurasi untuk menggunakan migrasi langsung, compute.instance.upcomingMaintenance
akan muncul setelah pemeliharaan selesai, yang menunjukkan bahwa notifikasi dihapus.
Anda dapat memanfaatkan penyiapan pemberitahuan untuk menerima notifikasi pemeliharaan. Untuk mempelajari lebih lanjut, baca Mengonfigurasi pemberitahuan berbasis log dan Membuat dan mengelola saluran notifikasi.
Definisi status pemeliharaan
Definisi status berikut menjelaskan respons terhadap kueri pemeliharaan VM. Solusi ini memberikan informasi terkait pemeliharaan VM. Google Cloud CLI, REST, dan server metadata menggunakan respons yang sama ini:
- windowStartTime: awal periode waktu saat pemeliharaan terjadi
- windowEndTime: akhir jangka waktu saat pemeliharaan terjadi
- latestWindowStartTime: waktu paling awal jendela dapat dipindahkan
- maintenanceType: jenis pemeliharaan yang akan dilakukan
- TIDAK ADA: tidak ada pemeliharaan yang dijadwalkan untuk VM ini
- DIJADWALKAN: pemeliharaan akan mendapatkan pemberitahuan 7 hari
- TIDAK DIJADWALKAN: pemeliharaan menunjukkan update penting dengan pemberitahuan yang jauh lebih sedikit
- canReschedule: apakah pemeliharaan dapat dipicu selama periode notifikasi untuk VM ini
- TRUE: pemeliharaan yang dipicu pelanggan dapat dilakukan selama periode notifikasi
- FALSE: pemeliharaan yang dipicu pelanggan tidak dapat dilakukan pada VM ini. Hal ini sering terjadi selama periode saat VM menjalani pemeliharaan
- maintenanceStatus: status operasi pemeliharaan saat ini
- SEDANG BERLANGSUNG: operasi pemeliharaan sedang berlangsung
- TERTUNDA: operasi pemeliharaan dijadwalkan, tetapi belum dimulai
Perilaku status pemeliharaan
Selagi Anda mengelola jadwal pemeliharaan, periksa status canReschedule=
dan maintenanceStatus=
kombinasi respons ini menjelaskan perilaku fitur yang diharapkan dan menampilkan salah satu kombinasi status berikut:
- Jika
canReschedule=Yes
danmaintenanceStatus=Pending
Anda dapat memicu pemeliharaan pada VM. - Jika
canReschedule=No
danmaintenanceStatus=Ongoing
, pemeliharaan sedang berlangsung. - Jika
canReschedule=No
danmaintenanceStatus=Pending
VM Anda tidak mendukung pemeliharaan yang dipicu secara manual.
Langkah selanjutnya
- Pelajari cara Menetapkan kebijakan pemeliharaan host VM.
- Pelajari cara Mendapatkan pemberitahuan migrasi langsung.
- Pelajari cara Memicu peristiwa pemeliharaan host secara manual
- Pelajari cara membuat pemberitahuan berbasis log di Cloud Logging.