Saat membuat MIG regional, Anda memilih satu atau beberapa zona tempat MIG mendistribusikan VM-nya. Secara default, jika VM di MIG gagal, MIG akan mencoba memperbaiki VM tersebut di zona aslinya. Anda dapat secara opsional 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
EVENatauANY_SINGLE_ZONEbentuk distribusi target.MIG dengan konfigurasi stateful.
Sebelum memulai
-
Siapkan autentikasi jika Anda belum melakukannya.
Autentikasi memverifikasi identitas Anda untuk mengakses Google Cloud layanan 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 Google Cloud konsol untuk mengakses Google Cloud layanan 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 melakukannya jika menggunakan Cloud Shell.
Jika error autentikasi ditampilkan, dan Anda menggunakan penyedia identitas (IdP) eksternal, pastikan 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, baca 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 Instance template.
- Di bagian Location, pilih Multiple zones, lalu pilih region dan zona.
Di menu drop-down Target distribution shape, pilih Balanced atau Any.
Jika Anda memilih Balanced, di dialog yang muncul, klik Disable instance redistribution.
Jika Anda ingin memilih Any, Anda harus menghapus konfigurasi penskalaan otomatis terlebih dahulu. Untuk menghapus penskalaan otomatis, di menu drop-down Autoscaling mode, klik Delete autoscaling configuration.
Di bagian VM instance lifecycle, pastikan kolom berikut ditetapkan sebagai berikut:
Daftar Default action on failure ditetapkan ke Repair 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 Save untuk MIG yang sudah ada atau Create untuk MIG baru.
gcloud
Untuk mengonfigurasi MIG yang sudah ada agar memperbaiki VM di zona alternatif, gunakan perintah
beta update:
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 createbeta:
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
Untuk membuat MIG yang dapat memperbaiki VM di zona alternatif, gunakan resource
google_compute_region_instance_group_manager resource.
Untuk mempelajari cara menerapkan atau menghapus konfigurasi Terraform, lihat Perintah dasar Terraform.
REST
Untuk mengonfigurasi MIG yang sudah ada agar memperbaiki VM di zona alternatif, gunakan metode
beta regionInstanceGroupManagers.patch:
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
beta regionInstanceGroupManagers.insert:
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 tempat MIG memperbaiki VM di zona aslinya.
Untuk tidak mengizinkan 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 VM instance lifecycle.
Di bagian Change zone during VM instance repair, hapus centang kotak Allow repair of VMs in an alternate zone.
Klik Save.
gcloud
Untuk tidak mengizinkan perbaikan di zona alternatif, gunakan
beta update perintah:
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 tidak mengizinkan perbaikan di zona alternatif, gunakan metode
beta regionInstanceGroupManagers.patch:
PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME
{
"instanceLifecyclePolicy": {
"onRepair": {
"allowChangingZone": "NO"
}
}
}
Ganti kode berikut:
Langkah berikutnya
- Memeriksa konfigurasi perbaikan di MIG
- Memeriksa zona VM dengan mencantumkan instance terkelola