Saat membuat MIG regional, Anda memilih satu atau beberapa zona tempat MIG mendistribusikan VM-nya. Secara default, jika VM dalam MIG gagal, MIG akan mencoba memperbaiki VM tersebut di zona aslinya. Secara opsional, Anda dapat mengizinkan MIG untuk memperbaiki VM tersebut di salah satu zona lain yang dipilih, yang berguna jika MIG tidak dapat memperbaiki VM di zona aslinya. MIG memilih zona alternatif berdasarkan kapasitas dan kuota yang tersedia.
Batasan
Saat Anda mengonfigurasi MIG regional untuk memperbaiki VM di zona alternatif, batasan berikut berlaku:
Anda harus mengaktifkan update saat perbaikan.
MIG regional dengan konfigurasi berikut tidak didukung:
MIG dengan bentuk distribusi target
EVENatauANY_SINGLE_ZONE.MIG dengan konfigurasi stateful.
Sebelum memulai
-
Siapkan autentikasi jika Anda belum melakukannya.
Autentikasi memverifikasi identitas Anda untuk mengakses layanan Google Cloud dan API. Untuk menjalankan
kode atau sampel 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 Google Cloud dan API, Anda tidak perlu menyiapkan autentikasi.
gcloud
-
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.
-
- Tetapkan region dan zona default.
-
Instal Google Cloud CLI.
-
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
-
Jika Anda menggunakan shell lokal, buat kredensial autentikasi lokal untuk akun pengguna Anda:
gcloud auth application-default login
Anda tidak perlu melakukan langkah ini jika menggunakan Cloud Shell.
Jika error autentikasi ditampilkan, dan Anda menggunakan penyedia identitas (IdP) eksternal, konfirmasi bahwa Anda telah login ke gcloud CLI dengan identitas gabungan Anda.
Terraform
Untuk menggunakan contoh Terraform di halaman ini dalam lingkungan pengembangan lokal, instal dan lakukan inisialisasi gcloud CLI, lalu siapkan Kredensial Default Aplikasi dengan kredensial pengguna Anda.
Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
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 .
Mengizinkan perbaikan di zona alternatif
Untuk mengizinkan MIG memperbaiki VM di zona alternatif, pilih salah satu opsi berikut:
Konsol
Di konsol Google Cloud , buka halaman Instance groups.
Jika Anda sudah memiliki MIG, lakukan hal berikut:
- Klik nama MIG.
- Klik Edit.
Jika Anda belum memiliki MIG, lakukan hal berikut:
- Klik Create instance group.
- Masukkan Nama.
- Pilih sebuah Instance template.
- Di bagian Lokasi, pilih Beberapa zona, lalu pilih region dan zona.
Di drop-down Bentuk distribusi target, pilih Seimbang atau Apa saja.
Jika Anda memilih Seimbang, di dialog yang muncul, klik Nonaktifkan redistribusi instance.
Jika Anda ingin memilih Apa saja, Anda harus menghapus konfigurasi penskalaan otomatis terlebih dahulu. Untuk menghapus penskalaan otomatis, di drop-down Autoscaling mode, klik Delete autoscaling configuration.
Di bagian VM instance lifecycle, pastikan kolom berikut ditetapkan sebagai berikut:
Daftar Tindakan default saat terjadi kegagalan disetel ke Perbaiki instance.
Updates during VM instance repair ditetapkan ke Update the instance configuration.
Di bagian Change zone during VM instance repair, centang kotak Allow repair of VMs in an alternate zone.
Untuk setelan lainnya, Anda dapat menggunakan nilai default atau mengubah kolom.
Setelah selesai, klik Simpan untuk MIG yang sudah ada atau Buat untuk MIG baru.
gcloud
Untuk mengonfigurasi MIG yang ada agar memperbaiki VM di zona alternatif, gunakan
perintah update beta:
gcloud beta compute instance-groups managed update MIG_NAME \
--on-repair-allow-changing-zone=YES \
--force-update-on-repair \
--region=REGION
Untuk membuat MIG yang dapat memperbaiki VM di zona alternatif, gunakan
perintah create beta:
gcloud beta compute instance-groups managed create MIG_NAME \
--template=INSTANCE_TEMPLATE_URL \
--size=SIZE \
--zones=ZONES \
--target-distribution-shape=SHAPE \
--instance-redistribution-type=none \
--on-repair-allow-changing-zone=YES \
--force-update-on-repair
Ganti kode berikut:
MIG_NAME: nama MIG.INSTANCE_TEMPLATE_URL: URL template instance yang ingin Anda gunakan untuk membuat instance di MIG. URL dapat berisi ID atau nama template instance. Tentukan salah satu nilai berikut:- Untuk template instance regional:
projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID - Untuk template instance global:
INSTANCE_TEMPLATE_ID
- Untuk template instance regional:
SIZE: ukuran target MIG.ZONES: daftar zona di region tempat Anda ingin membuat VM di MIG.SHAPE: bentuk distribusi target. Nilai ini dapat berupabalancedatauany.REGION: region tempat MIG berada.
Terraform
Jika Anda belum membuat template instance, yang menentukan jenis mesin, boot disk image, jaringan, dan properti VM lainnya yang Anda inginkan untuk setiap VM di MIG Anda, buat template instance.
Untuk membuat MIG yang dapat memperbaiki VM di zona alternatif, gunakan
resource google_compute_region_instance_group_manager.
Untuk mempelajari cara menerapkan atau menghapus konfigurasi Terraform, lihat Perintah dasar Terraform.
REST
Untuk mengonfigurasi MIG yang ada agar memperbaiki VM di zona alternatif, gunakan
metode regionInstanceGroupManagers.patch beta:
PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME
{
"instanceLifecyclePolicy": {
"onRepair": {
"allowChangingZone": "YES"
},
"forceUpdateOnRepair": "YES"
}
}
Untuk membuat MIG yang dapat memperbaiki VM di zona alternatif, gunakan
metode regionInstanceGroupManagers.insert beta:
POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers
{
"name": "MIG_NAME",
"instanceTemplate": "INSTANCE_TEMPLATE_URL",
"targetSize": SIZE,
"distributionPolicy": {
"targetShape": "SHAPE"
}
"updatePolicy": {
"instanceRedistributionType": none
}
"instanceLifecyclePolicy": {
"forceUpdateOnRepair": "YES",
"onRepair": {
"allowChangingZone": "YES"
}
}
}
Ganti kode berikut:
PROJECT_ID: Project ID Anda..REGION: region tempat MIG berada.MIG_NAME: nama MIG.INSTANCE_TEMPLATE_URL: URL template instance yang ingin Anda gunakan untuk membuat instance di MIG. URL dapat berisi ID atau nama template instance. Tentukan salah satu nilai berikut:- Untuk template instance regional:
projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID - Untuk template instance global:
INSTANCE_TEMPLATE_ID
- Untuk template instance regional:
SIZE: ukuran target MIG.SHAPE: bentuk distribusi target. Nilai ini dapat berupaBALANCEDatauANY.
Tidak mengizinkan perbaikan di zona alternatif
Jika Anda mengonfigurasi MIG untuk memperbaiki VM di zona alternatif, Anda dapat memulihkan setelan default yang membuat MIG memperbaiki VM di zona asli.
Untuk melarang perbaikan di zona alternatif, pilih salah satu opsi berikut:
Konsol
Di konsol Google Cloud , buka halaman Instance groups.
Klik nama MIG.
Klik Edit.
Buka bagian Siklus proses instance VM.
Di bagian Change zone during VM instance repair, hapus centang pada kotak Allow repair of VMs in an alternate zone.
Klik Simpan.
gcloud
Untuk melarang perbaikan di zona alternatif, gunakan
perintah beta update:
gcloud beta compute instance-groups managed update MIG_NAME \
--on-repair-allow-changing-zone=NO \
--region=REGION
Ganti kode berikut:
MIG_NAME: nama MIG.REGION: region tempat MIG berada.
REST
Untuk melarang perbaikan di zona alternatif, gunakan
metode regionInstanceGroupManagers.patch beta:
PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME
{
"instanceLifecyclePolicy": {
"onRepair": {
"allowChangingZone": "NO"
}
}
}
Ganti kode berikut:
PROJECT_ID: Project ID Anda..REGION: region tempat MIG berada.MIG_NAME: nama MIG.
Langkah berikutnya
- Memeriksa konfigurasi perbaikan di MIG
- Periksa zona VM dengan mencantumkan instance terkelola