Memecahkan masalah grup instance terkelola

Ada beberapa masalah yang dapat menghalangi grup instance terkelola (MIG) berhasil membuat atau membuat ulang instance VM.

Jika log dibuat untuk MIG yang dihapus

Masalahnya mungkin terkait dengan situasi berikut.

Autoscaler yang terpasang masih ada

Jika Anda menghapus MIG menggunakan Compute Engine API dan Anda tidak mengeluarkan permintaan terpisah untuk menghapus autoscaler yang terpasang, Logs Explorer mungkin akan menampilkan log dengan pesan singkat berikut ini.

The resource 'projects/PROJECT/zones/ZONE/instanceGroupManagers/DELETED_INSTANCE_GROUP_NAME' was not found.

Penyelesaian:

Untuk mengatasinya, hapus autoscaler yang terpasang menggunakan metode Compute Engine API:

Jika MIG Anda tidak dapat membuat atau membuat ulang instance

Masalahnya mungkin terkait dengan situasi berikut.

Boot disk yang sudah ada

Secara default, persistent disk booting baru akan dibuat saat Anda membuat instance. Nama boot disk cocok dengan nama VM. Jika Anda memberi nama VM my-instance, disk juga akan diberi nama my-instance. Jika persistent disk dengan nama tersebut sudah ada, permintaan akan gagal. Untuk mengatasinya, Anda dapat mengambil snapshot, lalu menghapus persistent disk yang ada.

Template instance tidak valid

Jika Anda baru-baru ini memperbarui template instance, mungkin ada properti tidak valid yang menyebabkan MIG gagal membuat VM. Periksa properti jika ada error umum berikut:

  • Anda menentukan resource yang tidak ada, seperti image sumber.
  • Anda salah mengeja nama resource.
  • Anda mencoba memasang persistent disk non-booting yang sudah ada dalam mode baca/tulis, tetapi grup Anda berisi lebih dari satu VM. Untuk grup dengan lebih dari satu VM, setiap disk tambahan yang ingin Anda gunakan bersama di antara semua VM dalam grup hanya dapat dipasang dalam mode hanya baca.

Batas terlampaui untuk jenis resource

Error berikut terjadi saat Anda mencoba membuat lebih dari 2.000 VM di MIG regional atau lebih dari 1.000 VM di MIG zona. Anda telah mencapai batas ukuran untuk grup instance Anda.

Pesan error:

ERROR: (gcloud.compute.<INSTANCE_GROUP_TYPE>.<METHOD>) Could not
fetch resource:

 - Exceeded limit 'MAX_INSTANCES_IN_INSTANCE_GROUP' on resource 'PROJECT_ID'.
 Limit: NUMBER

Penyelesaian:

Untuk mengatasi masalah ini, coba salah satu langkah berikut:

Jika Anda tidak dapat menghapus MIG Anda atau instance-nya

Masalahnya mungkin terkait dengan situasi berikut.

Resource tidak ditemukan di zona atau region

Error berikut terjadi saat Anda mencoba menghapus MIG regional dan menentukan flag --zone, tanpa menentukan region atau region salah. Error serupa dapat terjadi jika Anda mencoba menghapus MIG zona dan menentukan flag --region.

Pesan error:

  • ERROR: (gcloud.compute.instance-groups.managed.delete) Some requests did not succeed:
    ‐ The resource 'projects/PROJECT/zones/ZONE/instanceGroupManagers/INSTANCE_GROUP_NAME' was not found
    
  • ERROR: (gcloud.compute.instance-groups.managed.delete) Some requests did not succeed:
    ‐ The resource 'projects/PROJECT/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME' was not found
    

Penyelesaian:

Untuk mengatasi masalah ini, coba salah satu langkah berikut:

Resource digunakan oleh layanan backend

Anda tidak dapat menghapus grup instance jika grup tersebut digunakan oleh layanan backend load balancer. Anda harus menghapus instance dari layanan backend sebelum dapat menghapus grup instance.

Pesan error:

  • ERROR: (gcloud.compute.instance-groups.managed.delete) Some requests did not succeed:
    ‐ The instance_group_manager resource 'projects/PROJECT/zones/ZONE/instanceGroupManagers/INSTANCE_GROUP_NAME is already being used by 'projects/PROJECT/global/backendServices/BACKEND_SERVICE
  • ERROR: (gcloud.compute.instance-groups.managed.delete) Some requests did not succeed:
    ‐ The instance_group_manager resource 'projects/PROJECT/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME is already being used by 'projects/PROJECT/global/backendServices/BACKEND_SERVICE

Penyelesaian:

  1. Opsional: Kosongkan grup instance backend.

  2. Hapus MIG dari layanan backend regional atau global.

    • Untuk MIG zona, jalankan perintah berikut:

      gcloud compute backend-services remove-backend BACKEND_SERVICE \
          --instance-group=INSTANCE_GROUP_NAME \
          --instance-group-zone=ZONE \
          [--region=REGION | --global]
      
    • Untuk MIG regional, jalankan perintah berikut:

      gcloud compute backend-services remove-backend BACKEND_SERVICE  \
          --instance-group=INSTANCE_GROUP_NAME \
          --instance-group-region=REGION \
          [--region=REGION | --global]
      
  3. Hapus MIG:

    gcloud compute instance-groups managed delete INSTANCE_GROUP_NAME
    

Jika MIG Anda terus-menerus mencoba membuat ulang instance

Masalahnya mungkin terkait dengan situasi berikut.

Pemeriksaan health check tidak dapat menjangkau instance

Jika Anda telah mengonfigurasi kebijakan autohealing, tetapi tidak mengonfigurasi—atau salah mengonfigurasi—aturan firewall yang memungkinkan pemeriksaan health check menjangkau aplikasi Anda, VM Anda akan tampak tidak responsif, dan MIG akan terus-menerus berupaya membuatnya kembali. Untuk informasi cara mengonfigurasi aturan firewall health check, lihat Contoh penyiapan health check.

Jika MIG Anda memiliki distribusi zona yang tidak merata atau menggunakan jenis mesin yang tidak terduga

Jika MIG regional atau MIG dengan fleksibilitas instance Anda beroperasi, tetapi Anda menduga bahwa instance tidak didistribusikan di seluruh zona seperti yang diharapkan, atau grup mengandalkan jenis mesin penggantian, Anda dapat memantau distribusi sebenarnya dari instance yang berhasil disediakan.

Untuk memantau distribusi instance runtime MIG, gunakan dasbor Pemantauan Distribusi Instance MIG GCE di Cloud Monitoring. Perhatikan bahwa dasbor ini adalah alat observasi untuk distribusi instance; dasbor ini tidak mengidentifikasi penyebab utama kegagalan pembuatan atau batasan kapasitas. Untuk mengetahui informasi selengkapnya tentang dasbor, lihat Memantau distribusi instance di MIG.