Dokumen ini menjelaskan cara menggunakan fitur pemeliharaan host yang tersedia dengan VM H4D. Panduan ini menjelaskan cara memantau, merencanakan, dan melakukan pemeliharaan terjadwal pada instance virtual machine (VM). Untuk mengelola pemeliharaan pada blok kapasitas yang dipesan, terlepas dari apakah VM berjalan di blok tersebut atau tidak, lihat Mengelola peristiwa host di seluruh reservasi.
Saat mengelola peristiwa pemeliharaan host yang akan datang secara proaktif di VM, Anda dapat meminimalkan gangguan dan mempertahankan performa yang optimal.
Sebelum memulai
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
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. Setelah penginstalan, inisialisasi Google Cloud CLI dengan menjalankan perintah berikut:
gcloud initJika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
Untuk mengetahui informasi selengkapnya, lihat Melakukan autentikasi untuk menggunakan REST dalam dokumentasi autentikasi Google Cloud .
Peran yang diperlukan
Untuk mendapatkan izin yang diperlukan untuk mengelola peristiwa pemeliharaan host di seluruh VM, minta administrator untuk memberi Anda peran IAM berikut:
-
Compute Admin (
roles/compute.admin) di project -
Untuk akses hanya baca ke log audit Peristiwa Sistem:
Logs Viewer (
roles/logging.viewer) pada project
Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses ke project, folder, dan organisasi.
Peran bawaan ini berisi izin yang diperlukan untuk mengelola peristiwa pemeliharaan host di seluruh VM. Untuk melihat izin yang benar-benar diperlukan, perluas bagian Izin yang diperlukan:
Izin yang diperlukan
Izin berikut diperlukan untuk mengelola peristiwa pemeliharaan host di seluruh VM:
-
Untuk melihat detail VM:
compute.instances.getpada project
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Ringkasan
Untuk mengoptimalkan pemeliharaan VM Anda, selesaikan langkah-langkah berikut:
Memahami pemeliharaan host. Pelajari frekuensi dan perilaku pemeliharaan VM Anda berdasarkan seri mesinnya. Informasi ini membantu Anda meminimalkan gangguan pada workload Anda.
Siapkan pemberitahuan notifikasi. Buat pemberitahuan berbasis log untuk menerima notifikasi saat pemeliharaan VM Anda dijadwalkan, dimulai, atau selesai. Pendekatan ini membantu Anda merencanakan aktivitas secara proaktif dan menghindari periode nonaktif yang tidak terduga.
Mengelola pemeliharaan di seluruh VM. Melihat apakah pemeliharaan dijadwalkan untuk VM Anda. Jika perlu, Anda dapat memulai pemeliharaan secara manual di seluruh VM. Proses ini membantu Anda meningkatkan ketahanan workload untuk menghosting acara, mencegah periode nonaktif, dan memaksimalkan ketersediaan aplikasi Anda.
Memahami pemeliharaan host
Selama siklus proses instance Compute Engine, mesin host tempat instance Anda berjalan mengalami beberapa peristiwa host. Peristiwa host dapat mencakup pemeliharaan rutin infrastruktur Compute Engine, atau dalam kasus yang jarang terjadi, error host. Compute Engine juga menerapkan beberapa upgrade ringan yang tidak mengganggu untuk hypervisor dan jaringan di latar belakang.
Seri mesin H4D menawarkan fitur berikut terkait pemeliharaan host:
| Jenis mesin | Frekuensi umum peristiwa pemeliharaan terjadwal | Perilaku pemeliharaan | Notifikasi lanjutan | Pemeliharaan sesuai permintaan | Simulasi pemeliharaan |
|---|---|---|---|---|---|
h4d-standard-192 |
Minimum 30 hari | Hentikan | 7 hari | Ya | Tidak |
h4d-highmem-192 |
Minimum 30 hari | Hentikan | 7 hari | Ya | Tidak |
h4d-highmem-192-lssd |
Minimum 30 hari | Berakhir dengan persistensi data SSD Lokal | 7 hari | Ya | Tidak |
Frekuensi pemeliharaan yang ditampilkan dalam tabel sebelumnya adalah perkiraan, bukan jaminan. Compute Engine terkadang melakukan pemeliharaan lebih sering.
Menyiapkan pemberitahuan notifikasi untuk VM
Anda dapat menerima notifikasi tentang peristiwa pemeliharaan terjadwal, dimulai, atau selesai untuk VM Anda dengan membuat kebijakan pemberitahuan berbasis log.
Untuk membuat pemberitahuan untuk peristiwa pemeliharaan VM Anda, selesaikan prosedur berikut. Ulangi prosedur ini untuk setiap pemberitahuan yang ingin Anda buat.
-
Di konsol Google Cloud , buka halaman Logs Explorer:
Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Logging.
Klik tombol Tampilkan kueri ke posisi aktif.
Di panel Query, buat salah satu kueri berikut. Kueri ini memfilter entri log untuk mengidentifikasi peristiwa pemeliharaan tertentu. Jika Anda ingin menggunakan beberapa kueri, ulangi prosedur ini untuk membuat pemberitahuan unik untuk setiap kueri.
Untuk menerima pemberitahuan saat pemeliharaan VM dijadwalkan:
protoPayload.methodName="compute.instances.upcomingMaintenance" severity>=DEFAULT protoPayload.status.message =~ "scheduled"Untuk menerima pemberitahuan saat masa pemeliharaan untuk VM telah dimulai:
protoPayload.methodName="compute.instances.upcomingMaintenance" severity>=DEFAULT protoPayload.status.message =~ "ongoing"Untuk menerima pemberitahuan saat pemeliharaan VM telah dimulai:
protoPayload.methodName="compute.instance.terminateOnHostMaintenance" severity>=DEFAULTUntuk menerima pemberitahuan saat pemeliharaan VM telah selesai:
protoPayload.methodName="compute.instances.upcomingMaintenance" severity>=DEFAULT protoPayload.status.message =~ "completed"
Untuk memvalidasi kueri, klik Jalankan kueri. Jika kueri valid, panel Query results akan menampilkan entri log yang cocok dengan kueri.
Di toolbar hasil Kueri, klik daftar Tindakan, lalu pilih Buat pemberitahuan log. Panel Buat kebijakan pemberitahuan berbasis log akan muncul.
Di bagian Detail pemberitahuan, lakukan tindakan berikut:
Di kolom Alert Policy Name, masukkan nama untuk kebijakan tersebut.
Di daftar Tingkat keseriusan kebijakan, pilih Peringatan (atau tingkat keseriusan yang lebih tinggi).
Klik Berikutnya.
Di bagian Choose logs to include in the alert, klik Next.
Di bagian Setel frekuensi notifikasi dan durasi penutupan otomatis, tentukan hal berikut:
Di daftar Waktu antar-notifikasi, pilih seberapa sering Anda ingin mendapatkan notifikasi.
Dalam daftar Durasi penutupan insiden otomatis, pilih durasi setelah Cloud Logging berhenti mengirim notifikasi dan menutup insiden secara otomatis.
Klik Berikutnya.
Di bagian Who should be notified?, tentukan saluran notifikasi untuk Logging guna mengirim notifikasi.
Klik Simpan.
Untuk melihat contoh notifikasi peristiwa pemeliharaan di Logs Explorer, lihat Contoh notifikasi pemeliharaan dalam dokumentasi Compute Engine.
Mengelola pemeliharaan di seluruh VM
Anda dapat melihat dan mengontrol pemeliharaan VM dengan melakukan satu atau beberapa hal berikut:
Untuk memeriksa status dan waktu terjadwal pemeliharaan mendatang untuk VM Anda, lihat status pemeliharaan VM.
Untuk segera memulai pemeliharaan pada VM, daripada menunggu waktu pemeliharaan terjadwal, mulai pemeliharaan pada VM secara manual.
Melihat status pemeliharaan VM
Anda dapat melihat status dan waktu yang dijadwalkan untuk pemeliharaan mendatang VM Anda dengan memeriksa nilai kolom upcomingMaintenance dalam metadata instance. Jika VM tidak berisi kolom upcomingMaintenance, tidak ada peristiwa pemeliharaan host yang dijadwalkan untuk VM. Untuk mengetahui informasi selengkapnya tentang kolom
di upcomingMaintenance, lihat
Definisi status pemeliharaan
dalam dokumentasi Compute Engine.
Selain itu, jika pemeliharaan dijadwalkan untuk VM, kolom
upcomingGroupMaintenance berisi kolom maintenanceReasons. Kolom ini menjelaskan alasan pemeliharaan dijadwalkan untuk VM Anda, seperti yang dijelaskan dalam tabel berikut:
| Jenis pemeliharaan | Alasan pemeliharaan | Status VM |
|---|---|---|
| Pemeliharaan terencana untuk pemeliharaan rutin |
|
Berlaku untuk VM yang sedang berjalan, dihentikan, atau ditangguhkan. |
| Pemeliharaan darurat yang tidak terencana |
|
Hanya berlaku untuk VM yang sedang berjalan. |
Untuk melihat kolom maintenanceReasons di VM, Anda harus menggunakan
gcloud CLI atau REST API. Untuk melihat status pemeliharaan beberapa VM secara bersamaan, Anda harus menggunakan konsol Google Cloud atau REST API. Jika tidak, pilih salah satu opsi berikut:
Konsol
Di konsol Google Cloud , buka halaman VM instances.
Di kolom Status pemeliharaan, Compute Engine menampilkan status pemeliharaan VM Anda. Jika Anda tidak melihat kolom ini di tabel VM instances, klik view_column Opsi tampilan kolom, pilih kotak centang Status pemeliharaan, lalu klik OK.
gcloud
Untuk melihat status pemeliharaan VM, gunakan
perintah gcloud compute instances describe
dengan flag --flatten=resourceStatus.upcomingMaintenance:
gcloud compute instances describe VM_NAME \
--flatten=resourceStatus.upcomingMaintenance \
--zone=ZONE
Ganti kode berikut:
VM_NAME: nama VM.ZONE: zona tempat VM berada.
Outputnya mirip dengan salah satu dari berikut ini:
Jika peristiwa pemeliharaan host dijadwalkan untuk VM Anda, outputnya akan mirip dengan berikut ini:
--- canReschedule: true latestWindowStartTime: '2025-11-01T19:00:00Z' maintenanceReasons: - 'PLANNED_UPDATE' - 'PLANNED_NETWORK_UPDATE' maintenanceStatus: 'PENDING' type: 'SCHEDULED' windowEndTime: '2025-11-01T22:00:00Z' windowStartTime: '2025-11-01T19:00:00Z'Jika peristiwa pemeliharaan host tidak dijadwalkan untuk VM Anda, outputnya akan mirip dengan berikut:
--- null
REST
Untuk melihat status pemeliharaan VM, buat salah satu permintaan GET
berikut. Saat membuat permintaan, Anda harus menyertakan parameter kueri fields untuk hanya menampilkan nama, jenis mesin, dan pemeliharaan mendatang untuk VM. Anda juga harus menyertakan parameter kueri filter untuk memfilter VM hanya menurut jenis mesin tertentu.
Untuk melihat VM di semua zona: metode
instances.aggregatedList.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/aggregated/instances?fields=items.name,items.machineType,items.upcomingMaintenance&filter=machineType%3AMACHINE_TYPEUntuk melihat VM di zona tertentu: metode
instances.list.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances?fields=items.name,items.machineType,items.upcomingMaintenance&filter=machineType%3AMACHINE_TYPE
Ganti kode berikut:
PROJECT_ID: ID project tempat Anda membuat VM.ZONE: zona tempat VM berada.MACHINE_TYPE: jenis mesin yang ingin Anda gunakan untuk memfilter VM.
Jika peristiwa pemeliharaan host dijadwalkan untuk VM, maka VM berisi kolom
upcomingMaintenance:
{
"items": [
{
"name": "vm-01",
"machineType": "https://www.googleapis.com/compute/v1/projects/example-project/zones/europe-west4-b/machineTypes/h4d-highmem-192-lssd",
"resourceStatus": {
"upcomingMaintenance": {
"canReschedule": true,
"latestWindowStartTime": "2024-11-01T19:00:00Z",
"maintenanceStatus": "PENDING",
"maintenanceReasons": [
"PLANNED_UPDATE",
"PLANNED_NETWORK_UPDATE"
],
"type": "SCHEDULED",
"windowEndTime": "2024-11-01T22:00:00Z",
"windowStartTime": "2024-11-01T19:00:00Z"
}
}
},
...
]
}
Atau, untuk mempersempit daftar VM lebih lanjut, tetapkan parameter kueri filter ke
ekspresi filter yang berbeda.
Server metadata
Untuk melihat status pemeliharaan VM, lakukan langkah berikut:
Jika belum, hubungkan ke Linux atau VM Windows Anda.
Buat kueri server metadata sebagai berikut:
curl http://metadata.google.internal/computeMetadata/v1/instance/upcoming-maintenance?alt=json -H "Metadata-Flavor: Google"Jika peristiwa pemeliharaan host dijadwalkan untuk VM Anda, outputnya akan mirip dengan berikut ini:
"Upcoming maintenance": { "can_reschedule": "true", "latest_window_start_time": "2024-12-01T19:00:01Z", "maintenance_reasons": [ "PLANNED_UPDATE", "PLANNED_NETWORK_UPDATE" ], "maintenance_status": "PENDING", "type": "SCHEDULED", "window_end_time": "2024-12-01T21:00:01Z", "window_start_time": "2024-12-01T19:00:01Z" }Jika peristiwa pemeliharaan host tidak dijadwalkan, outputnya akan mirip dengan yang berikut ini:
{ }
Memulai pemeliharaan pada VM secara manual
Anda dapat memulai pemeliharaan untuk VM secara manual, bukan menunggu waktu yang dijadwalkan.
Bergantung pada status pemeliharaan VM, hal berikut akan terjadi:
| Status pemeliharaan | Deskripsi | Yang Anda lihat |
|---|---|---|
| Dijadwalkan | Compute Engine memiliki pemeliharaan terjadwal untuk VM. Anda dapat memulai pemeliharaan secara manual sebelum waktu yang dijadwalkan. |
|
| Dalam proses | Pemeliharaan sedang berlangsung. Anda tidak dapat menjadwalkannya ulang. |
|
| Selesai | Pemeliharaan selesai. Compute Engine telah menghapus semua notifikasi pemeliharaan dari VM. |
|
Anda dapat memulai pemeliharaan secara manual untuk beberapa VM secara bersamaan atau untuk VM satu per satu. Untuk beberapa VM, gunakan konsol Google Cloud atau, untuk VM yang berada di zona yang sama, gcloud CLI. Untuk VM individual, pilih salah satu opsi berikut:
Konsol
Di konsol Google Cloud , buka halaman VM instances.
Pilih baris untuk VM tempat Anda ingin memulai pemeliharaan.
Klik Jalankan pemeliharaan.
Untuk mengonfirmasi, klik Jalankan pemeliharaan.
gcloud
Untuk memulai pemeliharaan secara manual untuk satu atau beberapa VM dalam zona yang sama, gunakan
perintah
gcloud compute instances perform-maintenance:
gcloud compute instances perform-maintenance VM_NAMES \
--zone=ZONE
Ganti kode berikut:
VM_NAMES: daftar nama VM yang dipisahkan dengan spasi; misalnya,vm-01 vm-02 vm-03.ZONE: zona tempat VM berada.
REST
Untuk memulai pemeliharaan VM secara manual, buat permintaan POST ke
metode instances.performMaintenance:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/performMaintenance
Ganti kode berikut:
PROJECT_ID: ID project tempat Anda membuat VM.ZONE: zona tempat VM berada.VM_NAME: nama VM.
Kecuali dinyatakan lain, konten di halaman ini dilisensikan berdasarkan Lisensi Creative Commons Attribution 4.0, sedangkan contoh kode dilisensikan berdasarkan Lisensi Apache 2.0. Untuk mengetahui informasi selengkapnya, lihat Kebijakan Situs Google Developers. Java adalah merek dagang terdaftar dari Oracle dan/atau afiliasinya.
Terakhir diperbarui pada 2025-12-04 UTC.