Melihat penonaktifan halus di instance Compute Engine

Dokumen ini menjelaskan cara melihat setelan dan progres penghentian normal di instance Compute Engine. Untuk mempelajari lebih lanjut penghentian normal, lihat Ringkasan penghentian normal.

Saat melihat detail instance, Anda dapat melakukan hal berikut:

  • Lihat setelan penghentian normal. Anda dapat memverifikasi apakah penghentian normal diaktifkan dan berapa lama durasinya.

  • Pantau penghentian normal. Saat penghentian normal sedang berlangsung, Anda dapat memeriksa hal berikut:

    • Saat proses penghentian normal kehabisan waktu.

    • Jika operasi berhenti atau hapus sedang berlangsung.

Sebelum memulai

  • Siapkan autentikasi jika Anda belum melakukannya. Autentikasi memverifikasi identitas Anda untuk mengakses layanan Google Cloud dan API. Untuk menjalankan kode atau contoh dari lingkungan pengembangan lokal, Anda dapat melakukan autentikasi ke Compute Engine dengan memilih salah satu opsi berikut:

    Pilih tab untuk melihat bagaimana Anda berencana menggunakan contoh di halaman ini:

    Konsol

    Saat menggunakan konsol Google Cloud untuk mengakses layanan dan API Google Cloud , Anda tidak perlu menyiapkan autentikasi.

    gcloud

    1. Instal Google Cloud CLI. Setelah penginstalan, lakukan inisialisasi Google Cloud CLI dengan menjalankan perintah berikut:

      gcloud init

      Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.

  • Tetapkan 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.

      Jika 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 melihat penghentian normal instance komputasi, minta administrator untuk memberi Anda peran IAM Compute Instance Admin (v1) (roles/compute.instanceAdmin.v1) di project Anda. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.

Peran bawaan ini berisi izin compute.instances.get di project, yang diperlukan untuk melihat penghentian normal dari instance komputasi.

Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.

Melihat setelan penghentian normal

Untuk melihat setelan penghentian normal di instance komputasi, pilih salah satu opsi berikut:

Konsol

  1. Di konsol Google Cloud , buka halaman VM instances.

    Buka instance VM

  2. Di kolom Name, klik nama instance Anda.

    Halaman detail instance akan terbuka di tab Details.

  3. Untuk memeriksa setelan penghentian normal, di bagian Availability policies, periksa nilai kolom Graceful shutdown maximum duration. Kolom ini menampilkan periode penghentian normal. Jika menampilkan tanda hubung (-), berarti penghentian normal dinonaktifkan.

gcloud

Untuk melihat setelan penghentian normal di instance, gunakan perintah gcloud beta compute instances describe:

gcloud beta compute instances describe INSTANCE_NAME \
    --zone=ZONE

Ganti kode berikut:

  • INSTANCE_NAME: nama instance.

  • ZONE: zona tempat instance berada.

Jika penghentian normal diaktifkan, output-nya akan mirip dengan berikut:

...
scheduling:
  ...
  gracefulShutdown:
    enabled: true
    maxDuration:
      seconds: 'MAX_DURATION'
  ...
...

Output mencakup nilai MAX_DURATION. Nilai ini menunjukkan durasi periode penghentian normal dalam detik. Jika Anda tidak menentukan periode penghentian kustom saat mengaktifkan penghentian normal di instance, Compute Engine akan menghilangkan kolom maxDuration dan menetapkan periode penghentian normal menjadi 10 menit.

REST

Untuk melihat setelan penghentian normal di instance, buat permintaan GET ke metode instances.get beta:

GET https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME

Ganti kode berikut:

  • PROJECT_ID: ID project tempat Anda membuat instance.

  • ZONE: zona tempat instance berada.

  • INSTANCE_NAME: nama instance.

Jika penghentian normal diaktifkan, output-nya akan mirip dengan berikut:

{
  ...
  "scheduling": {
    ...
    "gracefulShutdown": {
      "enabled": true,
      "maxDuration": {
        "seconds": "MAX_DURATION"
      }
    }
  },
  ...
}

Output mencakup nilai MAX_DURATION. Nilai ini menunjukkan durasi periode penghentian normal dalam detik. Jika Anda tidak menentukan periode penghentian normal kustom saat mengaktifkan penghentian normal di instance, Compute Engine akan menghilangkan kolom maxDuration dan menetapkan periode penghentian normal menjadi 10 menit.

Memantau penghentian normal

Untuk memantau penghentian normal yang sedang berlangsung di instance komputasi, pilih salah satu opsi berikut:

Konsol

  1. Di konsol Google Cloud , buka halaman VM instances.

    Buka instance VM

  2. Di kolom Name, klik nama instance Anda.

    Halaman detail instance akan terbuka di tab Details.

  3. Jika penghentian normal sedang berlangsung, periksa kolom berikut di bagian Basic information:

    • Status: kolom ini menampilkan status instance Anda. Selama penghentian normal, kolom ini menampilkan Pending stop dan penghitung mundur. Timer menghitung mundur hingga saat penghentian normal berakhir.

    • Status target: kolom ini menunjukkan apakah Compute Engine menghentikan (Dihentikan) atau menghapus (Dihapus) instance.

gcloud

Untuk memantau penghentian normal yang sedang berlangsung dalam sebuah instance, gunakan perintah gcloud beta compute instances describe:

gcloud beta compute instances describe INSTANCE_NAME \
    --zone=ZONE

Ganti kode berikut:

  • INSTANCE_NAME: nama instance.

  • ZONE: zona tempat instance berada.

Jika penghentian normal sedang berlangsung, output-nya akan mirip dengan berikut:

...
resourceStatus:
  ...
  shutdownDetails:
    maxDuration:
      seconds: 'MAX_DURATION'
    requestTimestamp: 'REQUEST_TIMESTAMP'
    stopState: STOP_STATE
    targetState: TARGET_STATE
...
status: PENDING_STOP
...

Output ini mencakup nilai-nilai berikut:

  • MAX_DURATION: durasi periode penghentian normal dalam detik. Setelah Compute Engine menetapkan STOP_STATE ke STOPPING, Compute Engine akan menghapus kolom maxDuration.

  • REQUEST_TIMESTAMP: stempel waktu saat STOP_STATE dimulai.

  • STOP_STATE: fase penghentian instance. Nilainya dapat berupa salah satu dari berikut:

    • PENDING_STOP: Compute Engine telah memulai penonaktifan yang benar. Instance akan tetap dalam status ini hingga Anda mengakhiri penghentian normal secara manual atau periode penghentian normal berakhir.

    • STOPPING: penghentian normal telah berakhir, dan Compute Engine melanjutkan operasi penghentian atau penghapusan.

  • TARGET_STATE: apakah Compute Engine menghentikan (STOPPED) atau menghapus (DELETED) instance.

Jika operasi penghentian sedang berjalan, setelah Compute Engine menyetel kolom status ke TERMINATE, Compute Engine akan menghapus kolom shutdownDetails.

REST

Untuk memantau penghentian normal yang sedang berlangsung di instance, buat permintaan GET ke metode beta instances.get:

GET https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME

Ganti kode berikut:

  • PROJECT_ID: ID project tempat Anda membuat instance.

  • ZONE: zona tempat instance berada.

  • INSTANCE_NAME: nama instance.

Jika penghentian normal sedang berlangsung, output-nya akan mirip dengan berikut:

{
  ...
  "resourceStatus": {
    ...
    "shutdownDetails": {
      "maxDuration": {
        "seconds": "MAX_DURATION"
      },
      "requestTimestamp": "REQUEST_TIMESTAMP",
      "stopState": "STOP_STATE",
      "targetState": "TARGET_STATE"
    }
  },
  ...
  "status": "PENDING_STOP",
  ...
}

Output ini mencakup nilai-nilai berikut:

  • MAX_DURATION: durasi periode penghentian normal dalam detik. Setelah Compute Engine menetapkan STOP_STATE ke STOPPING, Compute Engine akan menghapus kolom maxDuration.

  • REQUEST_TIMESTAMP: stempel waktu saat STOP_STATE dimulai.

  • STOP_STATE: fase penghentian instance. Nilainya dapat berupa salah satu dari berikut:

    • PENDING_STOP: Compute Engine telah memulai penonaktifan yang benar. Instance akan tetap dalam status ini hingga Anda mengakhiri penghentian normal secara manual atau periode penghentian normal berakhir.

    • STOPPING: penghentian normal telah berakhir, dan Compute Engine melanjutkan operasi penghentian atau penghapusan.

  • TARGET_STATE: apakah Compute Engine menghentikan (STOPPED) atau menghapus (DELETED) instance.

Jika operasi penghentian sedang berjalan, setelah Compute Engine menyetel kolom status ke TERMINATE, Compute Engine akan menghapus kolom shutdownDetails.

Server metadata

  1. Hubungkan ke instance.

  2. Buat kueri server metadata:

    curl "http://metadata.google.internal/computeMetadata/v1/instance/shutdown-details/?recursive=true?alt=json" \-H "Metadata-Flavor: Google"
    

    Jika penghentian normal sedang berlangsung, output-nya akan mirip dengan berikut:

    {
      "maxDuration": "MAX_DURATION",
      "requestTimestamp": "REQUEST_TIMESTAMP",
      "stopState": "STOP_STATE",
      "targetState": "TARGET_STATE"
    }
    

    Outputnya mencakup nilai berikut:

    • MAX_DURATION: durasi periode penonaktifan yang benar dalam detik. Setelah Compute Engine menetapkan STOP_STATE ke STOPPING, Compute Engine akan menghapus kolom maxDuration.

    • REQUEST_TIMESTAMP: stempel waktu saat STOP_STATE dimulai.

    • STOP_STATE: fase penghentian instance. Nilainya bisa berupa salah satu dari berikut:

      • PENDING_STOP: Compute Engine telah memulai penghentian normal. Instance tetap dalam status ini hingga Anda mengakhiri penghentian normal secara manual atau periode penghentian normal habis.

      • STOPPING: penghentian normal telah berakhir, dan Compute Engine melanjutkan operasi penghentian atau penghapusan.

    • TARGET_STATE: apakah Compute Engine menghentikan (STOPPED) atau menghapus (DELETED) instance.

Langkah berikutnya