Dokumen ini menjelaskan cara menggunakan mode massal di MIG untuk membuat semua instance virtual machine (VM) yang Anda perlukan secara bersamaan. Membuat instance sekaligus memastikan bahwa MIG membuat instance hanya jika semua resource yang diperlukan tersedia.
Untuk mempelajari cara kerja mode massal, lihat Tentang pembuatan instance secara massal di MIG.
Membuat template instance
Mode massal di MIG hanya didukung dengan template instance yang menentukan model penyediaan terikat reservasi atau mulai fleksibel. Untuk menggunakan mode massal, buat template instance menggunakan salah satu model penyediaan ini seperti yang dijelaskan di bagian berikut. Untuk mengetahui informasi selengkapnya tentang model penyediaan, lihat Model penyediaan instance Compute Engine.
Menggunakan model penyediaan terikat reservasi
Untuk membuat template instance, pilih salah satu opsi berikut:
Konsol
Di konsol Cloud de Confiance , buka halaman Instance templates.
Klik Buat template instance . Halaman Create an instance template akan terbuka.
Di kolom Name, masukkan nama untuk template instance.
Di bagian Lokasi, pilih salah satu opsi berikut:
Untuk membuat template instance regional, pilih Regional (direkomendasikan), lalu pilih region tempat Anda ingin membuat template.
Untuk membuat template instance global, pilih Global.
Di bagian Konfigurasi mesin, tentukan jenis mesin.
Di bagian Provisioning model, selesaikan langkah-langkah berikut:
Luaskan Setelan lanjutan model penyediaan VM.
Dalam daftar On VM termination, pilih Delete.
Opsional: Untuk mengubah jenis atau image boot disk nilai default, di bagian Boot disk, klik Ubah. Kemudian, ikuti prompt untuk mengubah boot disk.
Luaskan bagian Opsi lanjutan, lalu lakukan hal berikut:
Luaskan bagian Management.
Di bagian Reservations, pilih Choose a reservation, lalu klik Choose reservation. Di panel yang muncul, ikuti perintah untuk memilih reservasi yang ingin Anda gunakan.
Klik Create.
gcloud
Untuk membuat template instance, gunakan
perintah instance-templates create dengan setelan flag berikut:
Flag
--instance-termination-actionditetapkan keDELETE.Flag
--maintenance-policyditetapkan keTERMINATE.Flag
--provisioning-modelditetapkan keRESERVATION_BOUND.Flag
--reservation-affinityditetapkan kespecific.Flag
--reservation.
Contoh perintah berikut membuat template instance regional. Jika Anda ingin membuat template instance global, gunakan perintah yang sama tanpa flag --instance-template-region.
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
--image-project=IMAGE_PROJECT \
--image-family=IMAGE_FAMILY \
--instance-termination-action=DELETE \
--instance-template-region=REGION \
--machine-type=MACHINE_TYPE \
--maintenance-policy=TERMINATE \
--provisioning-model=RESERVATION_BOUND \
--reservation-affinity=specific \
--reservation=RESERVATION_URL
Ganti kode berikut:
INSTANCE_TEMPLATE_NAME: nama template instance yang akan dibuat.IMAGE_PROJECT: project gambar yang berisi gambar; misalnya,debian-cloud. Untuk mengetahui informasi selengkapnya tentang project gambar yang didukung, lihat Gambar publik.IMAGE_FAMILY: kelompok image. Tentukan kelompok image untuk menggunakan image OS terbaru yang masih digunakan. Misalnya, jika Anda menentukandebian-12, versi terbaru dalam kelompok image Debian 12 akan digunakan. Untuk mengetahui informasi selengkapnya tentang cara menggunakan kelompok image, lihat Praktik terbaik kelompok image.REGION: region tempat membuat template instance.MACHINE_TYPE: jenis mesin yang ditentukan dalam reservasi yang ingin Anda gunakan.RESERVATION_URL: URL pemesanan yang dibuat otomatis untuk pemesanan untuk masa mendatang dalam mode kalender yang ingin Anda gunakan. Tentukan salah satu nilai berikut:Jika pemesanan yang dibuat otomatis ada di project Anda:
RESERVATION_NAME.Jika pemesanan yang dibuat otomatis ada di project lain:
projects/PROJECT_ID/reservations/RESERVATION_NAME.
REST
Untuk membuat template instance, buat permintaan POST ke salah satu
metode berikut:
Untuk membuat template instance regional: Metode
regionInstanceTemplates.insertUntuk membuat template instance global: metode
instanceTemplates.insert
Dalam isi permintaan, sertakan kolom berikut:
Kolom
reservationAffinity.consumeReservationTypeditetapkan keSPECIFIC_RESERVATION.Kolom
reservationAffinity.keyditetapkan kecompute.googleapis.com/reservation-name.Kolom
reservationAffinity.valuesditetapkan ke URL pemesanan yang dibuat secara otomatis.Kolom
scheduling.instanceTerminationActionditetapkan keDELETE.Kolom
scheduling.onHostMaintenanceditetapkan keTERMINATE.Kolom
scheduling.provisioningModelditetapkan keRESERVATION_BOUND.
Misalnya, untuk membuat template instance regional, buat permintaan seperti berikut:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceTemplates
{
"name": "INSTANCE_TEMPLATE_NAME",
"properties": {
"disks": [
{
"boot": true,
"initializeParams": {
"sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE"
}
}
],
"machineType": "MACHINE_TYPE",
"networkInterfaces": [
{
"network": "global/networks/default"
}
],
"reservationAffinity": {
"consumeReservationType": "SPECIFIC_RESERVATION",
"key": "compute.googleapis.com/reservation-name",
"values": [
"RESERVATION_URL"
]
},
"scheduling": {
"instanceTerminationAction": "DELETE",
"onHostMaintenance": "TERMINATE",
"provisioningModel": "RESERVATION_BOUND"
}
}
}
Ganti kode berikut:
PROJECT_ID: ID project tempat template instance akan dibuat.REGION: region tempat membuat template instance.INSTANCE_TEMPLATE_NAME: nama template instance yang akan dibuat.IMAGE_PROJECT: project gambar yang berisi gambar; misalnya,debian-cloud. Untuk mengetahui informasi selengkapnya tentang project gambar yang didukung, lihat Gambar publik.IMAGE: tentukan salah satu dari berikut ini:Versi tertentu dari OS imageโmisalnya,
debian-12-bookworm-v20240617.Kelompok image, yang harus diformat sebagai
family/IMAGE_FAMILY. Tentukan kelompok image untuk menggunakan image OS terbaru yang masih digunakan. Misalnya, jika Anda menentukanfamily/debian-12, versi terbaru dalam kelompok image Debian 12 akan digunakan. Untuk mengetahui informasi selengkapnya tentang cara menggunakan kelompok image, lihat Praktik terbaik kelompok image.
MACHINE_TYPE: jenis mesin yang ditentukan dalam reservasi yang ingin Anda gunakan.RESERVATION_URL: URL pemesanan yang dibuat otomatis untuk pemesanan untuk masa mendatang dalam mode kalender yang ingin Anda gunakan. Tentukan salah satu nilai berikut:Jika pemesanan yang dibuat otomatis ada di project Anda:
RESERVATION_NAMEJika pemesanan yang dibuat otomatis ada di project lain:
projects/PROJECT_ID/reservations/RESERVATION_NAME
Untuk mengetahui informasi selengkapnya tentang cara membuat template instance, lihat Membuat template instance.
Menggunakan model penyediaan flex-start
Untuk membuat template instance, pilih salah satu opsi berikut:
Konsol
Di konsol Cloud de Confiance , buka halaman Instance templates.
Klik Buat template instance . Halaman Create an instance template akan terbuka.
Di kolom Name, masukkan nama untuk template instance.
Di bagian Lokasi, pilih salah satu opsi berikut:
Untuk membuat template instance regional, pilih Regional (direkomendasikan), lalu pilih region tempat Anda ingin membuat template.
Untuk membuat template instance global, pilih Global.
Di bagian Konfigurasi mesin, tentukan jenis mesin.
Di bagian Provisioning model, selesaikan langkah-langkah berikut:
Di kolom VM provisioning model, pilih Flex-start.
Luaskan Setelan lanjutan model penyediaan VM.
Centang kotak Set a time limit for the VM.
Untuk menetapkan durasi operasi VM yang dibuat menggunakan template instance, di kolom Enter number of hours, masukkan jumlah jam. Nilainya harus antara 36 detik (
0.01) dan tujuh hari (168).
Opsional: Untuk mengubah jenis atau image boot disk nilai default, di bagian Boot disk, klik Ubah. Kemudian, ikuti prompt untuk mengubah boot disk.
Klik Create.
gcloud
Untuk membuat template instance, gunakan
perintah instance-templates create dengan setelan flag berikut:
Flag
--instance-termination-actionditetapkan keDELETE.Flag
--maintenance-policyditetapkan keTERMINATE.Flag
--max-run-duration.Flag
--provisioning-modelditetapkan keFLEX_START.Flag
--reservation-affinityditetapkan kenone.
Contoh perintah berikut membuat template instance regional. Jika Anda ingin membuat template instance global, gunakan perintah yang sama tanpa flag --instance-template-region.
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
--image-project=IMAGE_PROJECT \
--image-family=IMAGE_FAMILY \
--instance-template-region=REGION \
--instance-termination-action=DELETE \
--machine-type=MACHINE_TYPE \
--maintenance-policy=TERMINATE \
--max-run-duration=RUN_DURATION \
--provisioning-model=FLEX_START \
--reservation-affinity=none
Ganti kode berikut:
INSTANCE_TEMPLATE_NAME: nama template instance yang akan dibuat.IMAGE_PROJECT: project gambar yang berisi gambar; misalnya,debian-cloud. Untuk mengetahui informasi selengkapnya tentang project gambar yang didukung, lihat Gambar publik.IMAGE_FAMILY: kelompok image. Tentukan kelompok image untuk menggunakan image OS terbaru yang masih digunakan. Misalnya, jika Anda menentukandebian-12, versi terbaru dalam kelompok image Debian 12 akan digunakan. Untuk mengetahui informasi selengkapnya tentang cara menggunakan kelompok image, lihat Praktik terbaik kelompok image.REGION: region tempat membuat template instance.MACHINE_TYPE: jenis mesin yang akan digunakan untuk VM mulai fleksibel. Jika Anda menentukan jenis mesin N1, Anda harus menyertakan flag--acceleratoruntuk menentukan jumlah dan jenis GPU yang akan dipasang ke VM Anda.RUN_DURATION: durasi yang Anda inginkan untuk menjalankan VM yang diminta. Anda harus memformat nilai sebagai jumlah hari, jam, menit, atau detik yang diikuti dengand,h,m, dans. Misalnya, tentukan30mselama 30 menit atau1d2h3m4suntuk satu hari, dua jam, tiga menit, dan empat detik. Nilai harus antara 10 menit dan tujuh hari.
REST
Untuk membuat template instance, buat permintaan POST ke salah satu
metode berikut:
Untuk membuat template instance regional: Metode
regionInstanceTemplates.insertUntuk membuat template instance global: metode
instanceTemplates.insert
Dalam isi permintaan, sertakan kolom berikut:
Kolom
reservationAffinity.consumeReservationTypeditetapkan keNO_RESERVATION.Kolom
scheduling.instanceTerminationActionditetapkan keDELETE.Kolom
scheduling.maxRunDuration.Kolom
scheduling.onHostMaintenanceditetapkan keTERMINATE.Kolom
scheduling.provisioningModelditetapkan keFLEX_START.
Contoh permintaan berikut membuat template instance regional:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceTemplates
{
"name": "INSTANCE_TEMPLATE_NAME",
"properties": {
"disks": [
{
"boot": true,
"initializeParams": {
"sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE"
}
}
],
"machineType": "MACHINE_TYPE",
"networkInterfaces": [
{
"network": "global/networks/default"
}
],
"reservationAffinity": {
"consumeReservationType": "NO_RESERVATION"
},
"scheduling": {
"instanceTerminationAction": "DELETE",
"maxRunDuration": {
"seconds": RUN_DURATION
},
"onHostMaintenance": "TERMINATE",
"provisioningModel": "FLEX_START"
}
}
}
Ganti kode berikut:
PROJECT_ID: ID project tempat template instance akan dibuat.REGION: region tempat membuat template instance.INSTANCE_TEMPLATE_NAME: nama template instance yang akan dibuat.IMAGE_PROJECT: project gambar yang berisi gambar; misalnya,debian-cloud. Untuk mengetahui informasi selengkapnya tentang project gambar yang didukung, lihat Gambar publik.IMAGE: tentukan salah satu dari berikut ini:Versi tertentu dari OS imageโmisalnya,
debian-12-bookworm-v20240617.Kelompok image, yang harus diformat sebagai
family/IMAGE_FAMILY. Tentukan kelompok image untuk menggunakan image OS terbaru yang masih digunakan. Misalnya, jika Anda menentukanfamily/debian-12, versi terbaru dalam kelompok image Debian 12 akan digunakan. Untuk mengetahui informasi selengkapnya tentang cara menggunakan kelompok image, lihat Praktik terbaik kelompok image.
MACHINE_TYPE: jenis mesin yang akan digunakan untuk VM. Jika Anda menentukan jenis mesin N1, Anda harus menyertakan kolomguestAcceleratorsuntuk menentukan jumlah dan jenis GPU yang akan dipasang ke VM Anda.RUN_DURATION: durasi, dalam detik, yang Anda inginkan untuk menjalankan VM yang diminta. Nilai harus antara600, yaitu 600 detik (10 menit), dan604800, yaitu 604.800 detik (tujuh hari).
Untuk mengetahui informasi selengkapnya tentang cara membuat template instance, lihat Membuat template instance.
Membuat MIG yang menggunakan mode massal
Untuk mengaktifkan pembuatan instance secara massal di MIG, tetapkan kolom targetSizePolicy.mode
ke BULK dalam konfigurasi MIG. Saat Anda menggunakan mode massal ini, MIG menunggu ketersediaan resource penuh, lalu membuat instance sekaligus.
Konsol
Buka halaman Instance groups.
Klik Create instance group. Halaman Create instance group akan terbuka.
Di kolom Nama, masukkan nama untuk MIG.
Sebelum memilih template instance, Anda harus melakukan hal berikut:
- Jika Anda menggunakan model penyediaan flex-start, Anda harus menonaktifkan perbaikan sebagai berikut:
- Di bagian VM instance lifecycle, hapus centang pada kotak Allow repair of VMs in an alternate zone.
- Dalam daftar Default action on failure, pilih No action.
- Di bagian Location, lakukan tindakan berikut:
- Untuk membuat MIG zona, pilih Single zone.
- Untuk membuat MIG regional, pilih Multiple zones. Di bagian Bentuk distribusi target, pilih Satu zona. Pada dialog yang muncul, pilih Nonaktifkan pendistribusian ulang instance.
- Jika Anda menggunakan model penyediaan flex-start, Anda harus menonaktifkan perbaikan sebagai berikut:
Kembali ke kolom template instance. Dalam daftar Instance template, pilih template instance yang Anda buat di bagian sebelumnya.
Di kolom Number of instances, tentukan jumlah instance yang ingin Anda buat sekaligus.
Centang kotak Obtain VMs all at once with bulk target size policy.
Klik Create.
gcloud
Untuk membuat MIG yang mengaktifkan pembuatan massal, gunakan
perintah gcloud compute instance-groups managed create
dengan flag --target-size-policy-mode yang ditetapkan ke bulk.
Jika menggunakan model penyediaan flex-start, Anda harus menonaktifkan perbaikan di MIG dengan menyertakan flag --default-action-on-vm-failure=do-nothing dalam perintah berikut.
- Untuk membuat MIG zona, jalankan perintah berikut:
gcloud compute instance-groups managed create INSTANCE_GROUP_NAME \
--size=SIZE \
--target-size-policy-mode=bulk \
--template=INSTANCE_TEMPLATE_URL \
--zone=ZONE \
- Untuk membuat MIG regional, jalankan perintah berikut:
gcloud compute instance-groups managed create INSTANCE_GROUP_NAME \
--size=SIZE \
--target-size-policy-mode=bulk \
--template=INSTANCE_TEMPLATE_URL \
--zones=LIST_OF_ZONES \
Ganti kode berikut:
INSTANCE_GROUP_NAME: nama MIG.SIZE: jumlah instance dalam 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:
ZONE: zona tempat MIG membuat instance.LIST_OF_ZONES: daftar zona yang dipisahkan koma tempat MIG regional membuat instance. Contoh,us-central1-a, us-central1-b, us-central1-c.
REST
Untuk membuat MIG yang mengaktifkan pembuatan massal, buat permintaan POST sebagai
berikut. Di isi permintaan, tetapkan kolom targetSizePolicy.mode ke
bulk.
Jika menggunakan model penyediaan flex-start, Anda harus menonaktifkan perbaikan
di MIG dengan menyertakan kolom
"instanceLifecyclePolicy": {"defaultActionOnFailure": "DO_NOTHING"}
dalam permintaan berikut.
Untuk membuat MIG zona, buat permintaan
POSTke metodeinstanceGroupManagers.insert.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers { "name": "INSTANCE_GROUP_NAME", "targetSize": SIZE, "targetSizePolicy": { "mode": "bulk" }, "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ] }Untuk membuat MIG regional, buat permintaan
POSTke metoderegionInstanceGroupManagers.insert.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers { "name": "INSTANCE_GROUP_NAME", "targetSize": SIZE, "targetSizePolicy": { "mode": "bulk" }, "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ] }
Ganti kode berikut:
PROJECT_ID:project ID.ZONE:zona tempat MIG membuat instance.REGION:region tempat MIG membuat instance.INSTANCE_GROUP_NAME:nama MIG.SIZE:jumlah instance dalam 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:
Menambahkan atau menghapus instance
Di MIG yang menggunakan mode massal, Anda dapat menambahkan atau menghapus instance dengan menambah atau mengurangi ukuran target MIG secara manual.
Menambahkan instance: Saat Anda meningkatkan ukuran target dari nol, MIG akan menambahkan instance dengan cara yang sama seperti saat membuat MIG. Anda juga dapat membuat instance dengan nama tertentu menggunakan metode
createInstancesjika tidak ada instance di MIG. Untuk membuat instance dengan nama tertentu, lihat Membuat instance dengan nama tertentu di MIG.Menghapus instance: Saat Anda mengurangi ukuran target menjadi nol, MIG akan menghapus semua instance yang ada dalam grup dan membatalkan operasi pembuatan yang sedang berlangsung. Anda dapat menghapus instance dengan mengurangi ukuran target menjadi
0. Untuk mengurangi ke ukuran selain nol, MIG tidak boleh memiliki operasi instance massal yang sedang berlangsung (bulkInstanceOperation.inProgressharusfalse).
Untuk menambahkan atau menghapus instance dari MIG dengan mengubah ukuran target, lihat Menetapkan ukuran MIG secara manual.