Dokumen ini menjelaskan cara mengurangi latensi jaringan di antara instance virtual machine (VM) Anda dengan membuat dan menerapkan kebijakan penempatan yang ringkas pada instance tersebut.
Kebijakan penempatan yang ringkas menentukan bahwa VM Anda harus ditempatkan secara fisik lebih dekat satu sama lain. Hal ini dapat membantu meningkatkan performa dan mengurangi latensi jaringan di antara VM Anda ketika, misalnya, Anda menjalankan komputasi berperforma tinggi (HPC), machine learning (ML), atau workload server database.
Anda dapat menerapkan kebijakan penempatan rapat saat melakukan hal berikut:
- Membuat atau mengupdate VM.
- Membuat reservasi satu project.
- Membuat VM secara massal.
- Membuat template instance. Selanjutnya, template instance akan menerapkan
kebijakan penempatan ringkas saat Anda menggunakannya untuk melakukan hal berikut:
- Buat VM.
- Membuat atau mengupdate grup instance terkelola (MIG).
- Membuat reservasi satu project.
Sebelum memulai
-
Siapkan autentikasi, jika Anda belum melakukannya.
Autentikasi adalah proses verifikasi identitas Anda untuk akses ke layanan dan API Google Cloud.
Untuk menjalankan kode atau contoh dari lingkungan pengembangan lokal, Anda dapat melakukan autentikasi ke Compute Engine sebagai berikut.
Pilih tab untuk melihat bagaimana Anda berencana menggunakan contoh di halaman ini:
gcloud
-
Instal Google Cloud CLI, lalu initialize dengan menjalankan perintah berikut:
gcloud init
- Menetapkan region dan zona default.
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, lalu initialize dengan menjalankan perintah berikut:
gcloud init
-
Peran yang diperlukan
Agar mendapatkan izin yang Anda perlukan untuk membuat dan menerapkan kebijakan penempatan yang ringkas ke VM,
minta administrator untuk memberi Anda
peran IAM Compute Instance Admin (v1) (roles/compute.instanceAdmin.v1
) di VM atau project.
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses.
Peran bawaan ini berisi izin yang diperlukan untuk membuat dan menerapkan kebijakan penempatan yang ringkas ke VM. Untuk melihat izin yang benar-benar diperlukan, perluas bagian Izin yang diperlukan:
Izin yang diperlukan
Izin berikut diperlukan untuk membuat dan menerapkan kebijakan penempatan yang ringkas ke VM:
-
Untuk membuat kebijakan penempatan:
compute.resourcePolicies.create
di project -
Untuk menerapkan kebijakan penempatan ke VM yang ada:
compute.instances.addResourcePolicies
di project -
Untuk melihat detail VM:
compute.instances.get
di project
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Pembatasan
Selain pembatasan umum untuk kebijakan penempatan, kebijakan penempatan ringkas memiliki pembatasan berikut:
Untuk kebijakan penempatan yang ringkas, Anda dapat menggunakan
max-distance
(Pratinjau) untuk mengontrol jarak penempatan VM dengan lebih baik. Tabel berikut menguraikan jumlah VM yang didukung dan kebijakan pemeliharaan host untuk setiap nilaimax-distance
:max-distance
nilaiDeskripsi Jumlah maksimum VM Kebijakan pemeliharaan host yang didukung Tidak ditentukan Berdasarkan ketersediaan, VM ditempatkan sedekat mungkin satu sama lain. 1.500 Memigrasikan dan Menghentikan 3
VM ditempatkan di cluster yang berdekatan untuk latensi rendah. 1.500 Memigrasikan dan Menghentikan 2
VM ditempatkan di rak yang berdekatan dan mengalami latensi jaringan yang lebih rendah daripada VM yang ditempatkan di cluster yang berdekatan. 150 Hentikan 1
VM ditempatkan di rak yang sama dan meminimalkan latensi jaringan sebanyak mungkin. 22 Hentikan Anda hanya dapat menerapkan kebijakan penempatan yang ringkas ke seri mesin A2, A3, C2, C3, C2D, C3D, G2, H3, N2, dan N2D. Jika menggunakan
max-distance
saat membuat kebijakan penempatan yang ringkas, Anda tidak dapat menerapkan kebijakan ke seri mesin A3, G2, N2, dan N2D.Anda tidak dapat menerapkan kebijakan penempatan rapat ke VM yang menentukan node tenant tunggal.
Jika Anda ingin membuat kebijakan penempatan yang ringkas untuk reservasi, lihat persyaratan tambahan untuk reservasi.
Membuat kebijakan penempatan rapat.
Untuk membuat kebijakan penempatan yang ringkas, gunakan salah satu metode berikut:
Direkomendasikan: Tanpa jumlah tetap.
Anda dapat menerapkan kebijakan penempatan ringkas yang tidak menentukan jumlah VM yang tetap ke VM dengan jumlah yang tidak ditentukan. Hal ini membuat kebijakan penempatan yang ringkas akan efektif, berapa pun jumlah VM yang Anda terapkan.
Dengan jumlah tetap.
Anda dapat menerapkan kebijakan penempatan ringkas yang menentukan jumlah VM yang tetap hanya ke jumlah VM yang tepat. Hal ini membuat kebijakan penempatan yang ringkas hanya berlaku jika diterapkan ke jumlah VM yang ditentukan.
Tanpa jumlah tetap
Anda dapat membuat kebijakan penempatan yang ringkas menggunakan gcloud CLI dan REST.
gcloud
Untuk membuat kebijakan penempatan yang ringkas, gunakan
perintah gcloud compute resource-policies create group-placement
dengan tanda --collocation=collocated
.
gcloud compute resource-policies create group-placement POLICY_NAME \
--collocation=collocated \
--region=REGION
Ganti kode berikut:
POLICY_NAME
: nama kebijakan yang akan dibuat.REGION
: region tempat membuat kebijakan. Jika Anda ingin menerapkan kebijakan penempatan rapat ke VM yang ada, buat kebijakan di region yang berisi zona tempat VM berada.
Secara opsional, untuk kontrol yang lebih baik terhadap seberapa jauh jarak penempatan VM
saat Anda memiliki persyaratan latensi jaringan yang ketat, Anda dapat membuat
kebijakan penempatan yang ringkas menggunakan
perintah gcloud beta compute resource-policies create group-placement
dengan flag --collocation=collocated
dan --max-distance
.
gcloud beta compute resource-policies create group-placement POLICY_NAME \
--collocation=collocated \
--max-distance=MAX_DISTANCE \
--region=REGION
Ganti MAX_DISTANCE
dengan konfigurasi jarak maksimum
untuk VM Anda. Nilainya harus antara 1
, yang menentukan penempatan VM di rak yang sama untuk mendapatkan latensi jaringan serendah mungkin, dan 3
, yang menentukan penempatan VM di cluster yang berdekatan. Bergantung pada jenis dan zona mesin
yang ditentukan di VM tempat Anda menerapkan kebijakan penempatan rapat, kondisi berikut akan berlaku:
Jika suatu zona memiliki kapasitas yang tersedia, kebijakan penempatan yang ringkas dengan nilai
maxDistance
yang lebih tinggi (seperti3
) dapat menyebabkan VM Anda ditempatkan lebih dekat satu sama lain.Jika suatu zona tidak memiliki kapasitas, kebijakan penempatan yang ringkas dengan nilai
maxDistance
yang lebih rendah (seperti1
) kemungkinan besar akan menyebabkan penerapan kebijakan ke satu atau beberapa VM Anda gagal.
REST
Untuk membuat kebijakan penempatan yang ringkas, buat permintaan POST
ke
metode resourcePolicies.insert
.
Dalam isi permintaan, sertakan kolom collocation
dan tetapkan ke
COLLOCATED
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies
{
"name": "POLICY_NAME",
"groupPlacementPolicy": {
"collocation": "COLLOCATED"
}
}
Ganti kode berikut:
PROJECT_ID
: ID project tempat Anda ingin membuat kebijakan penempatan.REGION
: region tempat membuat kebijakan penempatan. Jika Anda ingin menerapkan kebijakan penempatan rapat ke VM yang ada, buat kebijakan di region yang berisi zona tempat VM berada.POLICY_NAME
: nama kebijakan penempatan rapat yang akan dibuat.
Secara opsional, untuk kontrol yang lebih baik terhadap jarak penempatan VM saat Anda memiliki persyaratan latensi jaringan yang ketat, Anda dapat membuat kebijakan penempatan ringkas dengan membuat permintaan POST
ke metode beta.resourcePolicies.insert
.
Dalam isi permintaan, sertakan kolom collocation
yang ditetapkan ke
COLLOCATED
, dan kolom maxDistance
.
POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/resourcePolicies
{
"name": "POLICY_NAME",
"groupPlacementPolicy": {
"collocation": "COLLOCATED",
"maxDistance": "MAX_DISTANCE"
}
}
Ganti MAX_DISTANCE
dengan konfigurasi jarak maksimum
untuk VM Anda. Nilainya harus antara 1
, yang menentukan penempatan VM di rak yang sama untuk mendapatkan latensi jaringan serendah mungkin, dan 3
, yang menentukan penempatan VM di cluster yang berdekatan. Bergantung pada jenis dan zona mesin
yang ditentukan di VM tempat Anda menerapkan kebijakan penempatan rapat, kondisi berikut akan berlaku:
Jika suatu zona memiliki kapasitas yang tersedia, kebijakan penempatan yang ringkas dengan nilai
maxDistance
yang lebih tinggi (seperti3
) dapat menyebabkan VM Anda ditempatkan lebih dekat satu sama lain.Jika suatu zona tidak memiliki kapasitas, kebijakan penempatan yang ringkas dengan nilai
maxDistance
yang lebih rendah (seperti1
) kemungkinan besar akan menyebabkan penerapan kebijakan ke satu atau beberapa VM Anda gagal.
Dengan jumlah tetap
Anda dapat membuat kebijakan penempatan ringkas yang menentukan jumlah VM yang tetap menggunakan gcloud CLI dan REST.
gcloud
Untuk membuat kebijakan penempatan ringkas yang menentukan jumlah VM
tetap, gunakan
perintah gcloud compute resource-policies create group-placement
dengan flag --collocation=collocated
dan --vm-count
.
gcloud compute resource-policies create group-placement POLICY_NAME \
--collocation=collocated \
--region=REGION \
--vm-count=VM_COUNT
Ganti kode berikut:
POLICY_NAME
: nama kebijakan yang akan dibuat.REGION
: region tempat membuat kebijakan. Jika Anda ingin menerapkan kebijakan penempatan rapat ke VM yang ada, buat kebijakan di region yang berisi zona tempat VM berada.VM_COUNT
: jumlah pasti VM yang dapat Anda terapkan dengan kebijakan penempatan yang ringkas. Nilainya harus antara1
dan jumlah maksimum VM yang dapat Anda terapkan kebijakan penempatan ringkas.
Secara opsional, untuk kontrol yang lebih baik terhadap seberapa jauh jarak penempatan VM
saat Anda memiliki persyaratan latensi jaringan yang ketat, Anda dapat membuat
kebijakan penempatan yang ringkas menggunakan
perintah gcloud beta compute resource-policies create group-placement
dengan flag --collocation=collocated
, --max-distance
, dan
--vm-count
.
gcloud beta compute resource-policies create group-placement POLICY_NAME \
--collocation=collocated \
--max-distance=MAX_DISTANCE \
--region=REGION \
--vm-count=VM_COUNT
Ganti MAX_DISTANCE
dengan konfigurasi jarak maksimum
untuk VM Anda. Nilainya harus antara 1
, yang menentukan penempatan VM di rak yang sama untuk mendapatkan latensi jaringan serendah mungkin, dan 3
, yang menentukan penempatan VM di cluster yang berdekatan. Bergantung pada jenis dan zona mesin
yang ditentukan di VM tempat Anda menerapkan kebijakan penempatan rapat, kondisi berikut akan berlaku:
Jika suatu zona memiliki kapasitas yang tersedia, kebijakan penempatan yang ringkas dengan nilai
maxDistance
yang lebih tinggi (seperti3
) dapat menyebabkan VM Anda ditempatkan lebih dekat satu sama lain.Jika suatu zona tidak memiliki kapasitas, kebijakan penempatan yang ringkas dengan nilai
maxDistance
yang lebih rendah (seperti1
) kemungkinan besar akan menyebabkan penerapan kebijakan ke satu atau beberapa VM Anda gagal.
REST
Untuk membuat kebijakan penempatan ringkas yang menentukan jumlah
VM tetap, buat permintaan POST
ke
metode resourcePolicies.insert
.
Dalam isi permintaan, sertakan kolom collocation
yang ditetapkan ke
COLLOCATED
, dan kolom vmCount
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies
{
"name": "POLICY_NAME",
"groupPlacementPolicy": {
"collocation": "COLLOCATED",
"vmCount": "VM_COUNT"
}
}
Ganti kode berikut:
PROJECT_ID
: ID project tempat Anda ingin membuat kebijakan penempatan.REGION
: region tempat membuat kebijakan penempatan. Jika Anda ingin menerapkan kebijakan penempatan rapat ke VM yang ada, buat kebijakan di region yang berisi zona tempat VM berada.POLICY_NAME
: nama kebijakan penempatan rapat yang akan dibuat.VM_COUNT
: jumlah pasti VM yang dapat Anda terapkan dengan kebijakan penempatan yang ringkas. Nilainya harus antara1
dan jumlah maksimum VM yang dapat Anda terapkan kebijakan penempatan ringkas.
Secara opsional, untuk kontrol yang lebih baik terhadap jarak penempatan VM saat Anda memiliki persyaratan latensi jaringan yang ketat, Anda dapat membuat kebijakan penempatan ringkas dengan membuat permintaan POST
ke metode beta.resourcePolicies.insert
.
Dalam isi permintaan, sertakan kolom collocation
yang ditetapkan ke
COLLOCATED
, kolom maxDistance
, dan kolom vmCount
.
POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/resourcePolicies
{
"name": "POLICY_NAME",
"groupPlacementPolicy": {
"collocation": "COLLOCATED",
"maxDistance": "MAX_DISTANCE",
"vmCount": "VM_COUNT"
}
}
Ganti MAX_DISTANCE
dengan konfigurasi jarak maksimum
untuk VM Anda. Nilainya harus antara 1
, yang menentukan penempatan VM di rak yang sama untuk mendapatkan latensi jaringan serendah mungkin, dan 3
, yang menentukan penempatan VM di cluster yang berdekatan. Bergantung pada jenis dan zona mesin
yang ditentukan di VM tempat Anda menerapkan kebijakan penempatan rapat, kondisi berikut akan berlaku:
Jika suatu zona memiliki kapasitas yang tersedia, kebijakan penempatan yang ringkas dengan nilai
maxDistance
yang lebih tinggi (seperti3
) dapat menyebabkan VM Anda ditempatkan lebih dekat satu sama lain.Jika suatu zona tidak memiliki kapasitas, kebijakan penempatan yang ringkas dengan nilai
maxDistance
yang lebih rendah (seperti1
) kemungkinan besar akan menyebabkan penerapan kebijakan ke satu atau beberapa VM Anda gagal.
Terapkan kebijakan penempatan rapat
Anda dapat menerapkan kebijakan penempatan yang ringkas ke VM yang ada, atau saat membuat VM, template instance, MIG, atau reservasi VM.
Untuk membuat resource Compute Engine yang menentukan kebijakan penempatan yang ringkas, pilih salah satu metode berikut:
- Terapkan kebijakan penempatan rapat ke VM yang sudah ada.
- Buat VM yang menentukan kebijakan penempatan yang ringkas.
- Membuat VM secara massal yang menentukan kebijakan penempatan yang ringkas.
- Buat template instance yang menentukan kebijakan penempatan yang ringkas.
- Terapkan kebijakan penempatan yang ringkas ke VM di MIG.
Jika Anda ingin menentukan kebijakan penempatan yang ringkas saat membuat pemesanan project tunggal dengan menentukan properti secara langsung, lihat Membuat pemesanan untuk project tunggal.
Setelah kebijakan penempatan rapat diterapkan ke VM, Anda dapat memverifikasi lokasi fisik VM sehubungan dengan VM lain yang menentukan kebijakan yang sama.
Menerapkan kebijakan penempatan yang ringkas ke VM yang ada
Anda dapat menerapkan kebijakan penempatan yang ringkas ke VM yang ada menggunakan gcloud CLI dan REST.
Sebelum menerapkan kebijakan penempatan rapat ke VM yang sudah ada, pastikan hal berikut:
VM dan kebijakan penempatan yang ringkas terletak di project yang sama.
VM ini berada di dalam region tempat kebijakan penempatan yang ringkas berada.
VM menentukan kebijakan pemeliharaan host dan seri mesin yang didukung.
Jika tidak, kebijakan penempatan rapat ke VM yang ada akan gagal diterapkan.
gcloud
Untuk menerapkan kebijakan penempatan yang ringkas ke VM yang ada, gunakan perintah gcloud compute instances add-resource-policies
dengan flag --resource-policies
.
gcloud compute instances add-resource-policies VM_NAME \
--resource-policies=POLICY_NAME \
--zone=ZONE
Ganti kode berikut:
VM_NAME
: nama VM yang ada.POLICY_NAME
: nama kebijakan penempatan ringkas yang ada.ZONE
: zona tempat VM berada.
REST
Untuk menerapkan kebijakan penempatan yang ringkas ke VM yang ada, buat permintaan POST
ke
metode instances.addResourcePolicies
dengan kolom resourcePolicies
.
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:
PROJECT_ID
: ID project tempat kebijakan penempatan ringkas dan VM berada.ZONE
: zona tempat VM berada, yang harus berada di region tempat kebijakan penempatan yang ringkas berada.VM_NAME
: nama VM yang ada.REGION
: region tempat kebijakan penempatan yang ringkas berada.POLICY_NAME
: nama kebijakan penempatan ringkas yang ada.
Membuat VM yang menentukan kebijakan penempatan yang ringkas
Anda dapat membuat VM yang menentukan kebijakan penempatan ringkas yang sudah ada menggunakan gcloud CLI dan REST.
gcloud
Untuk membuat VM yang menentukan kebijakan penempatan yang ringkas, gunakan
perintah gcloud compute instances create
dengan flag --resource-policies
.
Misalnya, untuk membuat VM yang menentukan jenis mesin c2d-standard-2
,
jalankan perintah berikut:
gcloud compute instances create VM_NAME \
--machine-type=c2d-standard-2 \
--maintenance-policy=MAINTENANCE_POLICY \
--resource-policies=POLICY_NAME \
--zone=ZONE
Ganti kode berikut:
VM_NAME
: nama VM yang akan dibuat.MAINTENANCE_POLICY
: kebijakan pemeliharaan host VM. Jika kebijakan penempatan ringkas yang Anda tentukan menggunakan nilaimax-distance
berupa1
atau2
, Anda hanya dapat menentukanTERMINATE
. Jika tidak, Anda dapat menentukanMIGRATE
atauTERMINATE
.POLICY_NAME
: nama kebijakan penempatan ringkas yang ada.ZONE
: zona tempat untuk membuat VM. Anda hanya dapat membuat VM di zona yang berada dalam region kebijakan penempatan ringkas yang Anda tentukan.
REST
Untuk membuat VM yang menentukan kebijakan penempatan yang ringkas, buat permintaan POST
ke
metode instances.insert
dengan kolom resourcePolicies
.
Misalnya, untuk membuat VM yang menentukan jenis mesin c2d-standard-2
,
buat permintaan POST
berikut:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
{
"machineType": "zones/ZONE/machineTypes/c2d-standard-2",
"name": "VM_NAME",
"resourcePolicies": [
"projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME"
],
"scheduling": {
"onHostMaintenance": "MAINTENANCE_POLICY"
}
}
Ganti kode berikut:
PROJECT_ID
: ID project tempat kebijakan penempatan ringkas berada.ZONE
: zona tempat untuk membuat VM dan lokasi jenis mesin. Anda hanya dapat membuat VM di zona yang berada dalam region kebijakan penempatan ringkas yang Anda tentukan.VM_NAME
: nama VM yang akan dibuat.REGION
: region tempat kebijakan penempatan yang ringkas berada.POLICY_NAME
: nama kebijakan penempatan ringkas yang ada.MAINTENANCE_POLICY
: kebijakan pemeliharaan host VM. Jika kebijakan penempatan ringkas yang Anda tentukan menggunakan nilaimax-distance
berupa1
atau2
, Anda hanya dapat menentukanTERMINATE
. Jika tidak, Anda dapat menentukanMIGRATE
atauTERMINATE
.
Untuk mengetahui informasi selengkapnya tentang opsi konfigurasi dan peran IAM dalam membuat VM, baca Membuat dan memulai instance VM.
Membuat VM secara massal yang menentukan kebijakan penempatan yang ringkas
Anda dapat membuat VM secara massal yang menentukan kebijakan penempatan ringkas yang sudah ada menggunakan gcloud CLI dan REST.
gcloud
Untuk membuat VM secara massal yang menentukan kebijakan penempatan yang ringkas, gunakan
perintah gcloud compute instances bulk create
dengan flag --resource-policies
.
Misalnya, untuk membuat VM secara massal yang semuanya menentukan jenis mesin c2d-standard-2
dan kebijakan penempatan ringkas yang sama, jalankan perintah
berikut:
gcloud compute instances bulk create \
--async \
--count=COUNT \
--machine-type=c2d-standard-2 \
--maintenance-policy=MAINTENANCE_POLICY \
--name-pattern=NAME_PATTERN \
--resource-policies=POLICY_NAME \
--zone=ZONE
Ganti kode berikut:
COUNT
: jumlah VM yang akan dibuat.MAINTENANCE_POLICY
: kebijakan pemeliharaan host VM. Jika kebijakan penempatan ringkas yang Anda tentukan menggunakan nilaimax-distance
berupa1
atau2
, Anda hanya dapat menentukanTERMINATE
. Jika tidak, Anda dapat menentukanMIGRATE
atauTERMINATE
.NAME_PATTERN
: pola nama untuk VM yang akan dibuat. Gunakan karakter hash (#
) untuk menggantinya dengan urutan angka. Misalnya, menentukanvm-#
akan membuat VM dengan namavm-1
,vm-2
, dan sebagainya, hingga jumlah VM yang ditentukan dalamCOUNT
.POLICY_NAME
: nama kebijakan penempatan ringkas yang ada.ZONE
: zona tempat untuk membuat VM secara massal. Anda hanya dapat membuat VM di zona yang berada dalam region kebijakan penempatan ringkas yang Anda tentukan.
REST
Untuk membuat VM secara massal yang menentukan kebijakan penempatan ringkas, buat permintaan POST
ke
metode instances.bulkInsert
dengan kolom resourcePolicies
.
Misalnya, untuk membuat VM secara massal yang semuanya menentukan jenis mesin c2d-standard-2
dan kebijakan penempatan ringkas yang sama, buat permintaan POST
berikut:
POST https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/bulkInsert
{
"count": "COUNT",
"machineType": "zones/ZONE/machineTypes/c2d-standard-2",
"namePattern": "NAME_PATTERN",
"instanceProperties": {
"resourcePolicies": [
"projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME"
],
"scheduling": {
"onHostMaintenance": "MAINTENANCE_POLICY"
}
}
}
Ganti kode berikut:
PROJECT_ID
: ID project tempat kebijakan penempatan ringkas berada.ZONE
: zona tempat membuat VM secara massal dan tempat jenis mesin berada. Anda hanya dapat membuat VM di zona yang berada dalam region kebijakan penempatan ringkas yang Anda tentukan.COUNT
: jumlah VM yang akan dibuat.NAME_PATTERN
: pola nama untuk VM yang akan dibuat. Gunakan karakter hash (#
) untuk menggantinya dengan urutan angka. Misalnya, menentukanvm-#
akan membuat VM dengan namavm-1
,vm-2
, dan sebagainya, hingga jumlah VM yang ditentukan dalamCOUNT
.REGION
: region tempat kebijakan penempatan yang ringkas berada.POLICY_NAME
: nama kebijakan penempatan ringkas yang ada.MAINTENANCE_POLICY
: kebijakan pemeliharaan host VM. Jika kebijakan penempatan ringkas yang Anda tentukan menggunakan nilaimax-distance
berupa1
atau2
, Anda hanya dapat menentukanTERMINATE
. Jika tidak, Anda dapat menentukanMIGRATE
atauTERMINATE
.
Untuk mengetahui informasi selengkapnya tentang opsi konfigurasi atau peran IAM untuk membuat VM secara massal, lihat Membuat VM secara massal.
Membuat template instance yang menentukan kebijakan penempatan yang ringkas
Anda dapat membuat template instance yang menentukan kebijakan penempatan ringkas yang sudah ada menggunakan gcloud CLI dan REST.
Setelah membuat template instance, Anda dapat menggunakannya untuk melakukan hal berikut:
gcloud
Untuk membuat template instance yang menentukan kebijakan penempatan yang ringkas,
gunakan
perintah gcloud compute instance-templates create
dengan flag --resource-policies
.
Misalnya, untuk membuat template instance global yang menentukan
jenis mesin c2d-standard-2
dan kebijakan penempatan ringkas yang ada, jalankan
perintah berikut:
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
--machine-type=c2d-standard-2 \
--maintenance-policy=MAINTENANCE_POLICY \
--resource-policies=POLICY_NAME
Ganti kode berikut:
INSTANCE_TEMPLATE_NAME
: nama template instance.MAINTENANCE_POLICY
: kebijakan pemeliharaan host VM. Jika kebijakan penempatan ringkas yang Anda tentukan menggunakan nilaimax-distance
berupa1
atau2
, Anda hanya dapat menentukanTERMINATE
. Jika tidak, Anda dapat menentukanMIGRATE
atauTERMINATE
.POLICY_NAME
: nama kebijakan penempatan ringkas yang ada.
REST
Untuk membuat template instance yang menentukan kebijakan penempatan yang ringkas,
buat permintaan POST
ke
metode instanceTemplates.insert
.
Dalam isi permintaan, tentukan kolom resourcePolicies
.
Misalnya, untuk membuat template instance global yang menentukan
jenis mesin c2d-standard-2
dan kebijakan penempatan ringkas yang ada, buat
permintaan POST
berikut:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/instanceTemplates
{
"name": "INSTANCE_TEMPLATE_NAME",
"machineType": "zones/ZONE/machineTypes/c2d-standard-2",
"properties": {
"resourcePolicies": {
"POLICY_NAME"
},
"scheduling": {
"onHostMaintenance": "MAINTENANCE_POLICY"
}
}
}
Ganti kode berikut:
PROJECT_ID
: ID project tempat kebijakan penempatan ringkas yang ingin Anda terapkan ke template instance berada.ZONE
: zona tempat jenis mesin berada.INSTANCE_TEMPLATE_NAME
: nama template instance.POLICY_NAME
: nama kebijakan penempatan ringkas yang ada.MAINTENANCE_POLICY
: kebijakan pemeliharaan host VM. Jika kebijakan penempatan ringkas yang Anda tentukan menggunakan nilaimax-distance
berupa1
atau2
, Anda hanya dapat menentukanTERMINATE
. Jika tidak, Anda dapat menentukanMIGRATE
atauTERMINATE
.
Untuk mengetahui informasi selengkapnya tentang opsi konfigurasi dalam membuat template instance, baca Membuat template instance.
Menerapkan kebijakan penempatan yang ringkas ke VM di MIG
Setelah membuat template instance yang menentukan kebijakan penempatan ringkas, Anda dapat menggunakan template tersebut untuk melakukan hal berikut:
Jika Anda ingin menerapkan kebijakan penempatan yang ringkas ke MIG, sebaiknya buat atau terapkan kebijakan tersebut ke MIG regional dengan bentuk distribusi zona tunggal mana pun. Dengan cara ini, setiap kali MIG regional perlu menyebarkan skala dengan membuat VM, MIG akan memilih zona untuk membuat VM berdasarkan pemesanan, kuota, dan persyaratan hardware Anda.
Membuat MIG yang menentukan kebijakan penempatan yang ringkas
Anda dapat membuat MIG menggunakan template instance yang menentukan kebijakan penempatan ringkas menggunakan gcloud CLI dan REST.
gcloud
Untuk membuat MIG menggunakan template instance yang menentukan kebijakan penempatan
ringkas, gunakan
perintah gcloud compute instance-groups managed create
dengan flag --template
.
Misalnya, untuk membuat MIG regional dengan bentuk distribusi any-single-zone, jalankan perintah berikut:
gcloud compute instance-groups managed create MIG_NAME \
--region=REGION \
--size=SIZE \
--target-distribution-shape=any-single-zone \
--template=INSTANCE_TEMPLATE_NAME
Ganti kode berikut:
MIG_NAME
: nama MIG yang akan dibuat.REGION
: region tempat membuat MIG, yang harus sesuai dengan region tempat kebijakan penempatan yang ringkas berada.SIZE
: ukuran MIG.INSTANCE_TEMPLATE_NAME
: nama template instance yang ada dan menentukan kebijakan penempatan yang ringkas.
REST
Untuk membuat MIG menggunakan template instance yang menentukan kebijakan penempatan
ringkas, buat permintaan POST
ke
instanceGroupManagers.insert
atau
regionInstanceGroupManagers.insert
dengan kolom instanceTemplate
yang ditetapkan ke nama template
yang ada.
Misalnya, untuk membuat MIG regional dengan properti VM default dan
bentuk distribusi any-zona, buat permintaan POST
berikut:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers
{
"name": "MIG_NAME",
"instanceTemplate": "global/instanceTemplates/INSTANCE_TEMPLATE_NAME",
"distributionPolicy": {
"targetShape": "ANY_SINGLE_ZONE"
},
"targetSize": SIZE
}
Ganti kode berikut:
PROJECT_ID
: ID project tempat kebijakan penempatan yang ringkas dan template instance yang menentukan kebijakan penempatan berada.REGION
: region tempat membuat MIG, yang harus sesuai dengan region tempat kebijakan penempatan yang ringkas berada.MIG_NAME
: nama MIG yang akan dibuat.INSTANCE_TEMPLATE_NAME
: nama template instance yang ada dan menentukan kebijakan penempatan yang ringkas.SIZE
: ukuran MIG.
Untuk mengetahui informasi selengkapnya tentang opsi konfigurasi dan peran IAM untuk membuat MIG, lihat Skenario dasar untuk membuat MIG.
Menerapkan kebijakan penempatan yang ringkas ke MIG yang ada
Anda dapat menerapkan kebijakan penempatan yang ringkas ke MIG yang ada menggunakan template instance yang menentukan kebijakan penempatan yang sama menggunakan gcloud CLI dan REST.
gcloud
Untuk mengupdate MIG agar dapat menggunakan template instance yang menentukan kebijakan penempatan
yang ringkas, gunakan
perintah gcloud compute instance-groups managed rolling-action start-update
dengan flag --version=template
.
Misalnya, untuk memperbarui MIG regional agar menggunakan template instance yang menentukan kebijakan penempatan ringkas 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 MIG_NAME \
--region=REGION \
--type=proactive \
--version=template=INSTANCE_TEMPLATE_NAME
Ganti kode berikut:
MIG_NAME
: nama MIG yang ada.REGION
: region tempat MIG berada. Anda hanya dapat menerapkan kebijakan penempatan rapat ke MIG yang berada di region yang sama.INSTANCE_TEMPLATE_NAME
: nama template instance yang ada dan menentukan kebijakan penempatan yang ringkas.
REST
Untuk memperbarui MIG agar menggunakan template instance yang menentukan kebijakan
penempatan ringkas, dan otomatis menerapkan properti template serta
kebijakan penempatan ke VM yang ada di MIG, buat PATCH
ke
instanceGroupManagers.insert
atau
regionInstanceGroupManagers.insert
dengan kolom instanceTemplate
.
Misalnya, untuk memperbarui MIG regional agar menggunakan template instance yang menentukan kebijakan penempatan ringkas dan mengganti VM yang ada dari MIG dengan VM baru yang menentukan properti template, buat permintaan berikut PATCH
:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME
{
"instanceTemplate": "global/instanceTemplates/INSTANCE_TEMPLATE_NAME",
"updatePolicy": {
"type": "PROACTIVE"
}
}
Ganti kode berikut:
PROJECT_ID
: ID project tempat MIG, kebijakan penempatan ringkas, dan template instance yang menentukan kebijakan penempatan berada.REGION
: region tempat MIG berada. Anda hanya dapat menerapkan kebijakan penempatan rapat ke MIG yang berada di region yang sama.MIG_NAME
: nama MIG yang ada.INSTANCE_TEMPLATE_NAME
: nama template instance yang ada dan menentukan kebijakan penempatan yang ringkas.
Untuk mengetahui informasi selengkapnya tentang opsi konfigurasi dan peran IAM untuk mengupdate VM di MIG, baca Mengupdate dan menerapkan konfigurasi baru ke VM di MIG.
Memverifikasi lokasi fisik VM
Setelah menerapkan kebijakan penempatan yang ringkas ke VM, Anda dapat melihat pengaruh kebijakan penempatan yang ringkas terhadap lokasi fisiknya sehubungan dengan VM lain yang menentukan kebijakan yang sama. Hal ini membantu Anda menentukan apakah kebijakan penempatan yang ringkas telah diterapkan dengan benar ke VM dan memetakan VM mana yang paling dekat satu sama lain.
Anda dapat memverifikasi lokasi fisik VM yang menentukan kebijakan penempatan menggunakan gcloud CLI dan REST.
gcloud
Untuk melihat lokasi fisik VM yang menentukan kebijakan penempatan
yang ringkas, gunakan
perintah gcloud compute instances describe
dengan flag --format
.
gcloud compute instances describe VM_NAME \
--format="table[box,title=VM-Position](resourcePolicies.scope():sort=1,resourceStatus.physicalHost:label=location)" \
--zone=ZONE
Ganti kode berikut:
VM_NAME
: nama VM yang ada.ZONE
: zona tempat VM berada.
Outputnya mirip dengan hal berikut ini:
VM-Position
RESOURCE_POLICIES: us-central1/resourcePolicies/example-policy']
PHYSICAL_HOST: /CCCCCCC/BBBBBB/AAAA
Nilai untuk kolom PHYSICAL_HOST
disusun oleh tiga bagian. Setiap
bagian ini mewakili cluster, rak, dan host tempat VM berada.
Saat membandingkan posisi dua VM yang menentukan kebijakan penempatan ringkas yang sama, semakin banyak bagian dalam kolom PHYSICAL_HOST
yang dibagikan VM, semakin dekat lokasinya satu sama lain. Misalnya, jika dua VM menentukan salah satu dari contoh nilai berikut untuk kolom PHYSICAL_HOST
:
/CCCCCCC/xxxxxx/xxxx
: dua VM ditempatkan di cluster yang sama, yang sama dengan nilaimax-distance
2
. VM yang ditempatkan di cluster yang sama mengalami latensi jaringan yang rendah./CCCCCCC/BBBBBB/xxxx
: dua VM ditempatkan di rak yang sama, yang sama dengan nilaimax-distance
1
. VM yang ditempatkan di rak yang sama memiliki latensi jaringan yang lebih rendah daripada VM yang ditempatkan di cluster yang sama./CCCCCCC/BBBBBB/AAAA
: kedua VM berbagi host yang sama. VM yang ditempatkan di host yang sama akan meminimalkan latensi jaringan serendah mungkin.
REST
Untuk melihat lokasi fisik VM yang menentukan kebijakan penempatan
yang ringkas, buat permintaan GET
ke
metode instances.get
.
GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME
Ganti kode berikut:
PROJECT_ID
: ID project tempat VM berada.ZONE
: zona tempat VM berada.VM_NAME
: nama VM yang ada, yang menentukan kebijakan penempatan.
Outputnya mirip dengan hal berikut ini:
{
...
"resourcePolicies": [
"https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1/resourcePolicies/example-policy"
],
"resourceStatus": {
"physicalHost": "/xxxxxxxx/xxxxxx/xxxxx"
},
...
}
Nilai untuk kolom physicalHost
disusun oleh tiga bagian. Setiap
bagian ini mewakili cluster, rak, dan host tempat VM berada.
Saat membandingkan posisi dua VM yang menentukan kebijakan penempatan ringkas yang sama, semakin banyak bagian dalam kolom physicalHost
yang dibagikan VM, semakin dekat lokasinya satu sama lain. Misalnya, jika dua VM menentukan salah satu dari contoh nilai berikut untuk kolom physicalHost
:
/CCCCCCC/xxxxxx/xxxx
: dua VM ditempatkan di cluster yang sama, yang sama dengan nilaimax-distance
2
. VM yang ditempatkan di cluster yang sama mengalami latensi jaringan yang rendah./CCCCCCC/BBBBBB/xxxx
: dua VM ditempatkan di rak yang sama, yang sama dengan nilaimax-distance
1
. VM yang ditempatkan di rak yang sama memiliki latensi jaringan yang lebih rendah daripada VM yang ditempatkan di cluster yang sama./CCCCCCC/BBBBBB/AAAA
: kedua VM berbagi host yang sama. VM yang ditempatkan di host yang sama akan meminimalkan latensi jaringan serendah mungkin.
Apa langkah selanjutnya?
Pelajari cara melihat kebijakan penempatan.
Pelajari cara mengganti, menghapus, atau menghapus kebijakan penempatan.
Pelajari cara melakukan hal berikut dengan VM yang menentukan kebijakan penempatan: