Dokumen ini menjelaskan cara meningkatkan keandalan instance virtual machine (VM) Anda dengan membuat dan menerapkan kebijakan penempatan spread pada instance tersebut. Untuk mengetahui kebijakan penempatan lebih lanjut, termasuk batasan dan harganya, lihat Ringkasan kebijakan penempatan.
Kebijakan penempatan spread menentukan bahwa VM Anda harus didistribusikan di seluruh domain ketersediaan yang berbeda. Distribusi ini membantu mengurangi gangguan khusus lokasi, seperti error hardware, dan berguna saat menjalankan workload berskala besar, terdistribusi, dan direplikasi seperti Hadoop Distributed File System (HDFS), Cassandra, atau Kafka.
Sebelum memulai
-
Jika Anda belum melakukannya, siapkan autentikasi.
Autentikasi adalah
proses verifikasi identitas Anda untuk mengakses layanan dan API Google Cloud.
Untuk menjalankan kode atau contoh dari lingkungan pengembangan lokal, Anda dapat mengautentikasi ke Compute Engine dengan memilih salah satu opsi berikut:
Select the tab for how you plan to use the samples on this page:
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
-
Untuk membuat kebijakan penempatan:
compute.resourcePolicies.create
pada project -
Untuk menerapkan kebijakan penempatan ke VM yang ada:
compute.instances.addResourcePolicies
pada project -
Untuk membuat VM:
compute.instances.create
pada project- Untuk menggunakan image kustom guna membuat VM:
compute.images.useReadOnly
pada image - Untuk menggunakan snapshot guna membuat VM:
compute.snapshots.useReadOnly
pada snapshot - Untuk menggunakan template instance guna membuat VM:
compute.instanceTemplates.useReadOnly
di template instance - Untuk menetapkan jaringan lama ke VM:
compute.networks.use
di project - Untuk menentukan alamat IP statis untuk VM:
compute.addresses.use
pada project - Untuk menetapkan alamat IP eksternal ke VM saat menggunakan jaringan lama:
compute.networks.useExternalIp
di project - Untuk menentukan subnet bagi VM:
compute.subnetworks.use
di project atau di subnet yang dipilih - Untuk menetapkan alamat IP eksternal ke VM saat menggunakan jaringan VPC:
compute.subnetworks.useExternalIp
di project atau di subnet yang dipilih - Untuk menetapkan metadata instance VM untuk VM:
compute.instances.setMetadata
pada project - Untuk menetapkan tag untuk VM:
compute.instances.setTags
di VM - Untuk menetapkan label untuk VM:
compute.instances.setLabels
di VM - Untuk menetapkan akun layanan yang akan digunakan VM:
compute.instances.setServiceAccount
di VM - Untuk membuat disk baru bagi VM:
compute.disks.create
pada project - Untuk memasang disk yang ada dalam mode hanya baca atau baca-tulis:
compute.disks.use
pada disk - Untuk memasang disk yang ada dalam mode hanya baca:
compute.disks.useReadOnly
pada disk
-
Untuk membuat template instance:
compute.instanceTemplates.create
pada project -
Untuk membuat grup instance terkelola (MIG):
compute.instanceGroupManagers.create
pada project POLICY_NAME
: nama kebijakan penempatan spread.DOMAIN_COUNT
: jumlah domain ketersediaan yang berbeda untuk menempatkan VM Anda. Nilainya harus di antara1
dan8
.REGION
: region tempat membuat kebijakan penempatan.PROJECT_ID
: ID project tempat membuat kebijakan penempatan.REGION
: region tempat membuat kebijakan penempatan.POLICY_NAME
: nama kebijakan penempatan spread.DOMAIN_COUNT
: jumlah domain ketersediaan yang berbeda untuk menempatkan VM Anda. Nilainya harus di antara1
dan8
.- Terapkan kebijakan ke VM yang ada.
- Terapkan kebijakan saat membuat VM.
- Terapkan kebijakan saat membuat VM secara massal.
- Terapkan kebijakan saat membuat template instance.
- Terapkan kebijakan ke VM di MIG.
Jika kebijakan penempatan spread menentukan beberapa domain ketersediaan, Anda dapat menerapkan kebijakan tersebut ke VM tanpa menghentikan VM. Namun, VM mungkin perlu dipindahkan ke domain ketersediaan yang berbeda. Selama proses ini, Compute Engine akan menghentikan atau memigrasikan langsung VM berdasarkan kebijakan pemeliharaan host-nya.
VM dan kebijakan penempatan spread harus berada di region yang sama. Misalnya, jika kebijakan penempatan berada di region
us-central1
, VM harus berada di zona dius-central1
. Jika Anda perlu memigrasikan VM ke region lain, lihat Memindahkan VM antar-zona atau region.VM_NAME
: nama VM yang ada.POLICY_NAME
: nama kebijakan penempatan spread yang ada.ZONE
: zona tempat VM berada.PROJECT_ID
: ID project tempat kebijakan penempatan spread dan VM berada.ZONE
: zona tempat VM berada.VM_NAME
: nama VM yang ada.REGION
: region tempat kebijakan penempatan spread berada.POLICY_NAME
: nama kebijakan penempatan spread yang ada.VM_NAME
: nama VM yang akan dibuat.MACHINE_TYPE
: jenis mesin untuk VM.POLICY_NAME
: nama kebijakan penempatan spread yang ada.ZONE
: zona tempat untuk membuat VM.PROJECT_ID
: ID project tempat kebijakan penempatan spread berada.ZONE
: zona tempat membuat VM dan tempat jenis mesin berada. Anda hanya dapat menentukan zona dalam region kebijakan penempatan spread.VM_NAME
: nama VM yang akan dibuat.MACHINE_TYPE
: jenis mesin untuk VM.IMAGE_PROJECT
: project image yang berisi image—misalnya,debian-cloud
. Untuk informasi selengkapnya tentang project image yang didukung, lihat Image publik.IMAGE
: tentukan salah satu dari hal berikut:Versi tertentu dari image OS—misalnya,
debian-12-bookworm-v20240617
.Kelompok image, yang harus diformat sebagai
family/IMAGE_FAMILY
. Tindakan ini menentukan 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 penggunaan kelompok image, lihat Praktik terbaik kelompok image.
REGION
: region tempat kebijakan penempatan spread berada.POLICY_NAME
: nama kebijakan penempatan spread yang ada.Anda hanya dapat membuat VM secara massal yang menentukan kebijakan penempatan spread di region yang sama dengan kebijakan penempatan.
Saat membuat VM secara massal dengan kebijakan penempatan spread, Anda dapat secara opsional menentukan domain ketersediaan tempat VM akan dibuat. Hindari membuat semua VM Anda di satu domain. Jika tidak, Anda tidak mengurangi risiko satu error hardware yang memengaruhi semua VM Anda.
COUNT
: jumlah VM yang akan dibuat.MACHINE_TYPE
: jenis mesin untuk VM.NAME_PATTERN
: pola nama untuk VM. Untuk mengganti urutan angka dalam nama VM, gunakan urutan karakter hash (#
). Misalnya, menggunakanvm-#
untuk pola nama akan menghasilkan VM dengan nama yang dimulai denganvm-1
,vm-2
, dan berlanjut hingga jumlah VM yang ditentukan olehCOUNT
.POLICY_NAME
: nama kebijakan penempatan spread yang ada.ZONE
: zona tempat membuat VM secara massal.PROJECT_ID
: ID project tempat kebijakan penempatan spread berada.ZONE
: zona tempat membuat VM secara massal.COUNT
: jumlah VM yang akan dibuat.NAME_PATTERN
: pola nama untuk VM. Untuk mengganti urutan angka dalam nama VM, gunakan urutan karakter hash (#
). Misalnya, menggunakanvm-#
untuk pola nama akan menghasilkan VM dengan nama yang dimulai denganvm-1
,vm-2
, dan berlanjut hingga jumlah VM yang ditentukan olehCOUNT
.MACHINE_TYPE
: jenis mesin untuk VM.IMAGE_PROJECT
: project image yang berisi image—misalnya,debian-cloud
. Untuk informasi selengkapnya tentang project image yang didukung, lihat Image publik.IMAGE
: tentukan salah satu dari hal berikut:Versi tertentu dari image OS—misalnya,
debian-12-bookworm-v20240617
.Kelompok image, yang harus diformat sebagai
family/IMAGE_FAMILY
. Tindakan ini menentukan 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 penggunaan kelompok image, lihat Praktik terbaik kelompok image.
POLICY_NAME
: nama kebijakan penempatan spread yang ada.Jika Anda ingin membuat template instance regional, buat template di region yang sama dengan kebijakan penempatan spread. Jika tidak, pembuatan template instance akan gagal.
Saat membuat template instance, Anda dapat menentukan domain ketersediaan tempat VM akan dibuat secara opsional. Hindari membuat semua VM di satu domain. Jika tidak, Anda tidak mengurangi risiko satu error hardware yang memengaruhi semua VM Anda.
INSTANCE_TEMPLATE_NAME
: nama template instance.MACHINE_TYPE
: jenis mesin untuk VM yang dibuat menggunakan template instance.POLICY_NAME
: nama kebijakan penempatan spread yang ada.Untuk membuat template instance global: metode
instanceTemplates.insert
.Untuk membuat template instance regional: metode
regionInstanceTemplates.insert
.PROJECT_ID
: ID project tempat kebijakan penempatan spread berada.INSTANCE_TEMPLATE_NAME
: nama template instance.IMAGE_PROJECT
: project image yang berisi image—misalnya,debian-cloud
. Untuk informasi selengkapnya tentang project image yang didukung, lihat Image publik.IMAGE
: tentukan salah satu dari hal berikut:Versi tertentu dari image OS—misalnya,
debian-12-bookworm-v20240617
.Kelompok image, yang harus diformat sebagai
family/IMAGE_FAMILY
. Tindakan ini menentukan 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 penggunaan kelompok image, lihat Praktik terbaik kelompok image.
MACHINE_TYPE
: jenis mesin untuk VM yang dibuat menggunakan template instance.POLICY_NAME
: nama kebijakan penempatan spread yang ada.INSTANCE_GROUP_NAME
: nama MIG yang akan dibuat.SIZE
: ukuran MIG.INSTANCE_TEMPLATE_NAME
: nama template instance global yang ada dan menentukan kebijakan penempatan spread.ZONE
: zona tempat membuat MIG, yang harus berada dalam region tempat kebijakan penempatan spread berada.Untuk membuat MIG zona: metode
instanceGroupManagers.insert
.Untuk membuat MIG regional: metode
regionInstanceGroupManagers.insert
.PROJECT_ID
: ID project tempat kebijakan penempatan spread dan template instance yang menentukan kebijakan penempatan berada.ZONE
: zona tempat membuat MIG, yang harus berada dalam region tempat kebijakan penempatan spread berada.INSTANCE_GROUP_NAME
: nama MIG yang akan dibuat.SIZE
: ukuran MIG.INSTANCE_TEMPLATE_NAME
: nama template instance global yang ada dan menentukan kebijakan penempatan spread.INSTANCE_GROUP_NAME
: nama MIG yang ada.INSTANCE_TEMPLATE_NAME
: nama template instance global yang ada dan menentukan kebijakan penempatan spread.ZONE
: zona tempat MIG berada. Anda hanya dapat menerapkan kebijakan penempatan spread ke MIG yang berada dalam region yang sama dengan kebijakan penempatan.Untuk mengupdate MIG zona: metode
instanceGroupManagers.insert
.Untuk mengupdate MIG regional: metode
regionInstanceGroupManagers.insert
.PROJECT_ID
: ID project yang Anda gunakan untuk membuat MIG yang sudah ada, kebijakan penempatan spread, dan template instance yang menentukan kebijakan penempatan spread.ZONE
: zona tempat MIG berada. Anda hanya dapat menerapkan kebijakan penempatan spread ke MIG yang berada dalam region yang sama dengan kebijakan penempatan.INSTANCE_GROUP_NAME
: nama MIG yang ada.INSTANCE_TEMPLATE_NAME
: nama template instance global yang ada dan menentukan kebijakan penempatan spread.Pelajari cara melihat kebijakan penempatan.
Pelajari cara mengganti, meniadakan, atau menghapus kebijakan penempatan.
Pelajari cara melakukan hal berikut dengan VM yang menentukan kebijakan penempatan:
Pelajari lebih lanjut proses migrasi langsung selama peristiwa pemeliharaan.
REST
Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Untuk informasi selengkapnya, lihat Melakukan autentikasi untuk menggunakan REST dalam dokumentasi autentikasi Google Cloud.
Peran yang diperlukan
Untuk mendapatkan izin yang Anda perlukan untuk membuat dan menerapkan kebijakan penempatan spread ke VM, 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 yang diperlukan untuk membuat dan menerapkan kebijakan penempatan spread ke VM. Untuk melihat izin yang benar-benar diperlukan, luaskan bagian Izin yang diperlukan:
Izin yang diperlukan
Izin berikut diperlukan untuk membuat dan menerapkan kebijakan penempatan spread ke VM:
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Membuat kebijakan penempatan spread
Kecuali jika Anda ingin menguji penerapan kebijakan penempatan spread ke VM, Google Cloud merekomendasikan untuk membuat kebijakan penempatan spread dengan dua atau beberapa domain ketersediaan. Hal ini mengurangi risiko semua VM terpengaruh oleh satu error hardware. Untuk informasi selengkapnya, lihat Tentang kebijakan penempatan spread.
Untuk membuat kebijakan penempatan spread, pilih salah satu opsi berikut:
gcloud
Untuk membuat kebijakan penempatan spread, gunakan perintah
gcloud compute resource-policies create group-placement
dengan flag--availability-domain-count
.gcloud compute resource-policies create group-placement POLICY_NAME \ --availability-domain-count=DOMAIN_COUNT \ --region=REGION
Ganti kode berikut:
REST
Untuk membuat kebijakan penempatan spread, buat permintaan
POST
ke metoderesourcePolicies.insert
. Dalam isi permintaan, sertakan kolomavailabilityDomainCount
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies { "name": "POLICY_NAME", "groupPlacementPolicy": { "availabilityDomainCount": DOMAIN_COUNT } }
Ganti kode berikut:
Menerapkan kebijakan penempatan spread
Anda dapat menerapkan kebijakan penempatan spread ke VM atau MIG yang ada, atau saat membuat VM, template instance, atau MIG.
Untuk menerapkan kebijakan penempatan spread ke resource Compute Engine, pilih salah satu metode berikut:
Setelah menerapkan kebijakan penempatan spread ke VM, Anda dapat memverifikasi domain ketersediaan tempat VM berada dengan melihat detail VM dan memeriksa nilai kolom
availabilityDomain
.Menerapkan kebijakan ke VM yang ada
Sebelum menerapkan kebijakan penempatan spread ke VM yang ada, pertimbangkan hal-hal berikut:
Jika Anda ingin menentukan domain ketersediaan tempat VM akan ditempatkan, terapkan kebijakan penempatan ke VM dengan memperbarui propertinya. Saat memperbarui properti VM, pastikan untuk menyertakan kolom
resourcePolicies
danscheduling.availabilityDomain
.Untuk menerapkan kebijakan penempatan spread ke VM yang ada, pilih salah satu opsi berikut:
gcloud
Untuk menerapkan kebijakan penempatan spread ke VM yang ada, gunakan perintah
gcloud compute instances add-resource-policies
.gcloud compute instances add-resource-policies VM_NAME \ --resource-policies=POLICY_NAME \ --zone=ZONE
Ganti kode berikut:
REST
Untuk menerapkan kebijakan penempatan spread ke VM yang ada, buat permintaan
POST
ke metodeinstances.addResourcePolicies
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/addResourcePolicies { "resourcePolicies": [ "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ] }
Ganti kode berikut:
Menerapkan kebijakan saat membuat VM
Anda hanya dapat membuat VM yang menentukan kebijakan penempatan spread di region yang sama dengan kebijakan penempatan.
Untuk membuat VM yang menentukan kebijakan penempatan spread, pilih salah satu opsi berikut:
gcloud
Untuk membuat VM yang menentukan kebijakan penempatan spread, gunakan perintah
gcloud compute instances create
dengan flag--resource-policies
.gcloud compute instances create VM_NAME \ --machine-type=MACHINE_TYPE \ --resource-policies=POLICY_NAME \ --zone=ZONE
Ganti kode berikut:
Secara opsional, untuk menentukan domain ketersediaan tempat VM akan dibuat, sertakan flag
--availability-domain
.gcloud compute instances create VM_NAME \ --availability-domain=DOMAIN_NUMBER \ --machine-type=MACHINE_TYPE \ --resource-policies=POLICY_NAME \ --zone=ZONE
Ganti
DOMAIN_NUMBER
dengan nomor domain ketersediaan tempat VM Anda akan ditempatkan. Nilainya harus antara1
dan jumlah domain yang ditentukan dalam kebijakan penempatan spread. Untuk memverifikasi jumlah domain dalam kebijakan penempatan sebaran, lihat detail kebijakan penempatan.REST
Untuk membuat VM yang menentukan kebijakan penempatan spread, buat permintaan
POST
ke metodeinstances.insert
. Dalam isi permintaan, sertakan kolomresourcePolicies
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances { "name": "VM_NAME", "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE", "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE" } } ], "networkInterfaces": [ { "network": "global/networks/default" } ], "resourcePolicies": [ "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ] }
Ganti kode berikut:
Atau, untuk menentukan domain ketersediaan tempat VM akan dibuat, sertakan kolom
availabilityDomain
dalam isi permintaan.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances { "name": "VM_NAME", "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE", "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE" } } ], "networkInterfaces": [ { "network": "global/networks/default" } ], "resourcePolicies": [ "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ], "scheduling": { "availabilityDomain": DOMAIN_NUMBER } }
Ganti
DOMAIN_NUMBER
dengan nomor domain ketersediaan tempat VM Anda akan ditempatkan. Nilainya harus antara1
dan jumlah domain yang ditentukan dalam kebijakan penempatan spread. Untuk memverifikasi jumlah domain dalam kebijakan penempatan sebaran, lihat detail kebijakan penempatan.Untuk mengetahui informasi selengkapnya tentang opsi konfigurasi untuk membuat VM, lihat Membuat dan memulai instance VM.
Menerapkan kebijakan saat membuat VM secara massal
Sebelum membuat VM secara massal yang menentukan kebijakan penempatan spread, pastikan hal berikut:
Untuk membuat VM secara massal yang menentukan kebijakan penempatan spread, pilih salah satu opsi berikut:
gcloud
Untuk membuat VM secara massal yang menentukan kebijakan penempatan spread, gunakan perintah
gcloud compute instances bulk create
dengan flag--resource-policies
.Misalnya, untuk membuat VM secara massal di satu zona dan menentukan pola nama untuk VM, jalankan perintah berikut:
gcloud compute instances bulk create \ --count=COUNT \ --machine-type=MACHINE_TYPE \ --name-pattern=NAME_PATTERN \ --resource-policies=POLICY_NAME \ --zone=ZONE
Ganti kode berikut:
Secara opsional, untuk menentukan domain ketersediaan tempat VM akan dibuat secara massal, sertakan flag
--availability-domain
.gcloud compute instances bulk create \ --availability-domain=DOMAIN_NUMBER \ --count=COUNT \ --machine-type=MACHINE_TYPE \ --name-pattern=NAME_PATTERN \ --resource-policies=POLICY_NAME \ --zone=ZONE
Ganti
DOMAIN_NUMBER
dengan nomor domain ketersediaan tempat VM Anda akan ditempatkan. Nilainya harus antara1
dan jumlah domain yang ditentukan dalam kebijakan penempatan spread. Untuk memverifikasi jumlah domain dalam kebijakan penempatan sebaran, lihat detail kebijakan penempatan.REST
Untuk membuat VM secara massal yang menentukan kebijakan penempatan spread, buat
POST
ke metodeinstances.bulkInsert
. Dalam isi permintaan, sertakan kolomresourcePolicies
.Misalnya, untuk membuat VM secara massal di satu zona dan menentukan pola nama untuk VM, buat permintaan
POST
sebagai berikut:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/bulkInsert { "count": "COUNT", "namePattern": "NAME_PATTERN", "instanceProperties": { "machineType": "MACHINE_TYPE", "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE" } } ], "networkInterfaces": [ { "network": "global/networks/default" } ], "resourcePolicies": [ "POLICY_NAME" ] } }
Ganti kode berikut:
Secara opsional, untuk menentukan domain ketersediaan tempat VM akan dibuat secara massal, sertakan kolom
availabilityDomain
dalam isi permintaan.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/bulkInsert { "count": "COUNT", "namePattern": "NAME_PATTERN", "instanceProperties": { "machineType": "MACHINE_TYPE", "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE" } } ], "networkInterfaces": [ { "network": "global/networks/default" } ], "resourcePolicies": [ "POLICY_NAME" ], "scheduling": { "availabilityDomain": DOMAIN_NUMBER } } }
Ganti
DOMAIN_NUMBER
dengan nomor domain ketersediaan tempat VM Anda akan ditempatkan. Nilainya harus antara1
dan jumlah domain yang ditentukan dalam kebijakan penempatan spread. Untuk memverifikasi jumlah domain dalam kebijakan penempatan sebaran, lihat detail kebijakan penempatan.Untuk mengetahui informasi selengkapnya tentang opsi konfigurasi untuk membuat VM secara massal, lihat Membuat VM secara massal.
Menerapkan kebijakan saat membuat template instance
Sebelum membuat template instance yang menentukan kebijakan penempatan spread, pastikan hal-hal berikut:
Setelah membuat template instance yang menentukan kebijakan penempatan spread, Anda dapat menggunakan template tersebut untuk melakukan hal berikut:
Untuk membuat template instance yang menentukan kebijakan penempatan spread, pilih salah satu opsi berikut:
gcloud
Untuk membuat template instance yang menentukan kebijakan penempatan spread, gunakan perintah
gcloud compute instance-templates create
dengan flag--resource-policies
.Misalnya, untuk membuat template instance global yang menentukan kebijakan penempatan spread, jalankan perintah berikut:
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \ --machine-type=MACHINE_TYPE \ --resource-policies=POLICY_NAME
Ganti kode berikut:
Secara opsional, untuk menentukan domain ketersediaan tempat VM akan dibuat, sertakan flag
--availability-domain
.gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \ --availability-domain=DOMAIN_NUMBER \ --machine-type=MACHINE_TYPE \ --resource-policies=POLICY_NAME
Ganti
DOMAIN_NUMBER
dengan nomor domain ketersediaan untuk membuat VM. Nilainya harus antara1
dan jumlah domain yang ditentukan dalam kebijakan penempatan. Untuk memverifikasi jumlah domain dalam kebijakan penempatan sebaran, lihat detail kebijakan penempatan.REST
Untuk membuat template instance yang menentukan kebijakan penempatan spread, buat permintaan
POST
ke salah satu metode berikut:Dalam isi permintaan, tentukan kolom
resourcePolicies
.Misalnya, untuk membuat template instance global yang menentukan kebijakan penempatan spread, buat permintaan
POST
sebagai berikut:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/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" } ], "resourcePolicies": [ "POLICY_NAME" ] } }
Ganti kode berikut:
Secara opsional, untuk menentukan domain ketersediaan tempat VM akan dibuat, sertakan kolom
availabilityDomain
dalam isi permintaan.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/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" } ], "resourcePolicies": [ "POLICY_NAME" ], "scheduling": { "availabilityDomain": DOMAIN_NUMBER } } }
Ganti
DOMAIN_NUMBER
dengan nomor domain ketersediaan untuk membuat VM. Nilainya harus antara1
dan jumlah domain yang ditentukan dalam kebijakan penempatan. Untuk memverifikasi jumlah domain dalam kebijakan penempatan sebaran, lihat detail kebijakan penempatan.Untuk mengetahui informasi selengkapnya tentang opsi konfigurasi untuk membuat template instance, lihat Membuat template instance.
Menerapkan kebijakan ke VM di MIG
Setelah membuat template instance yang menentukan kebijakan penempatan spread, Anda dapat menggunakan template tersebut untuk melakukan hal berikut:
Menerapkan kebijakan saat membuat MIG
Anda hanya dapat membuat VM yang menentukan kebijakan penempatan spread jika VM tersebut berada di region yang sama dengan kebijakan penempatan.
Untuk membuat MIG menggunakan template instance yang menentukan kebijakan penempatan spread, pilih salah satu opsi berikut:
gcloud
Untuk membuat MIG menggunakan template instance yang menentukan kebijakan penempatan spread, gunakan perintah
gcloud compute instance-groups managed create
.Misalnya, untuk membuat MIG zona menggunakan template instance global yang menentukan kebijakan penempatan spread, jalankan perintah berikut:
gcloud compute instance-groups managed create INSTANCE_GROUP_NAME \ --size=SIZE \ --template=INSTANCE_TEMPLATE_NAME \ --zone=ZONE
Ganti kode berikut:
REST
Untuk membuat MIG menggunakan template instance yang menentukan kebijakan penempatan spread, buat permintaan
POST
ke salah satu metode berikut:Misalnya, untuk membuat MIG zona menggunakan template instance global yang menentukan kebijakan penempatan spread, buat permintaan
POST
sebagai berikut:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers { "name": "INSTANCE_GROUP_NAME", "targetSize": SIZE, "versions": [ { "instanceTemplate": "global/instanceTemplates/INSTANCE_TEMPLATE_NAME" } ] }
Ganti kode berikut:
Untuk mengetahui informasi selengkapnya tentang opsi konfigurasi untuk membuat MIG, lihat Skenario dasar untuk membuat MIG.
Menerapkan kebijakan ke MIG yang ada
Anda hanya dapat menerapkan kebijakan penempatan yang ringkas ke MIG yang ada jika MIG tersebut berada di region yang sama dengan kebijakan penempatan atau, untuk MIG zona, di zona dalam region yang sama dengan kebijakan penempatan.
Untuk memperbarui MIG agar menggunakan template instance yang menentukan kebijakan penempatan spread, pilih salah satu opsi berikut:
gcloud
Untuk memperbarui MIG agar menggunakan template instance yang menentukan kebijakan penempatan spread, gunakan perintah
gcloud compute instance-groups managed rolling-action start-update
.Misalnya, untuk memperbarui MIG zona agar menggunakan template instance yang menentukan kebijakan penempatan spread, dan mengganti VM yang ada dari MIG dengan VM baru yang menentukan properti template, jalankan perintah berikut:
gcloud compute instance-groups managed rolling-action start-update INSTANCE_GROUP_NAME \ --version=template=INSTANCE_TEMPLATE_NAME \ --zone=ZONE
Ganti kode berikut:
REST
Untuk memperbarui MIG agar menggunakan template instance yang menentukan kebijakan penempatan spread, dan otomatis menerapkan properti template serta kebijakan penempatan ke VM yang ada di MIG, buat permintaan
PATCH
ke salah satu metode berikut:Misalnya, untuk memperbarui MIG zona agar menggunakan template instance global yang menentukan kebijakan penempatan spread, dan mengganti VM yang ada dari MIG dengan VM baru yang menentukan properti template, buat permintaan
PATCH
berikut:PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/INSTANCE_GROUP_NAME { "instanceTemplate": "global/instanceTemplates/INSTANCE_TEMPLATE_NAME" }
Ganti kode berikut:
Untuk mengetahui informasi selengkapnya tentang opsi konfigurasi untuk mengupdate VM di MIG, baca Memperbarui dan menerapkan konfigurasi baru ke VM di MIG.
Apa langkah selanjutnya?
Kecuali dinyatakan lain, konten di halaman ini dilisensikan berdasarkan Lisensi Creative Commons Attribution 4.0, sedangkan contoh kode dilisensikan berdasarkan Lisensi Apache 2.0. Untuk mengetahui informasi selengkapnya, lihat Kebijakan Situs Google Developers. Java adalah merek dagang terdaftar dari Oracle dan/atau afiliasinya.
Terakhir diperbarui pada 2024-12-22 UTC.
-