Dokumen ini menjelaskan cara membuat permintaan perubahan ukuran dalam grup instance terkelola (MIG) dari instance virtual machine (VM) yang telah dipasangi GPU.
Sebelum memulai
- Tinjau cara kerja permintaan perubahan ukuran.
- Untuk memastikan Anda memiliki kuota GPU yang cukup untuk resource yang Anda minta, periksa kuota GPU Anda.
-
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:
Konsol
Saat menggunakan Konsol Google Cloud untuk mengakses API dan layanan Google Cloud, Anda tidak perlu menyiapkan autentikasi.
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
Untuk mendapatkan izin yang Anda perlukan guna membuat permintaan perubahan ukuran di MIG, minta administrator untuk memberi Anda peran IAM Compute Instance Admin (v1) (roles/compute.instanceAdmin.v1
) di project.
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses.
Peran yang telah ditentukan ini berisi izin yang diperlukan untuk membuat permintaan perubahan ukuran di MIG. Untuk melihat izin yang benar-benar diperlukan, perluas bagian Izin yang diperlukan:
Izin yang diperlukan
Izin berikut diperlukan untuk membuat permintaan perubahan ukuran di MIG:
-
Untuk membuat template instance:
compute.instanceTemplates.create
di project -
Untuk membuat MIG zona:
compute.instanceGroupManagers.create
di project -
Untuk membuat permintaan perubahan ukuran dalam MIG:
compute.instanceGroupManagers.update
di project
Anda mung juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaanlainnya.
Menyiapkan MIG untuk permintaan perubahan ukuran
Untuk membuat permintaan perubahan ukuran di MIG, Anda harus mengonfigurasi template instance dan MIG seperti yang dijelaskan di bagian berikut.
Membuat template instance
Jika Anda ingin membuat permintaan perubahan ukuran di MIG, MIG harus menggunakan template instance dengan konfigurasi berikut:
Hentikan VM selama peristiwa pemeliharaan host.
Jangan gunakan reservasi.
Konsol
Untuk membuat template instance yang dikonfigurasi guna membuat permintaan perubahan ukuran dalam MIG, lakukan langkah berikut:
Di konsol Google Cloud, buka halaman Instance templates.
Klik Create instance template.
Di kolom Name, masukkan nama untuk template instance.
Di bagian Lokasi, pilih salah satu opsi berikut:
Untuk membuat template instance global, pilih Global (default).
Untuk membuat template instance regional, pilih Regional, lalu pilih region tempat Anda ingin membuat template instance.
Di bagian Machine configuration, lakukan hal berikut:
Klik tab GPU.
Dalam daftar GPU type, pilih GPU type.
Dalam daftar Number of GPU, pilih jumlah GPU.
Opsional: Jika model GPU Anda mendukung NVIDIA RTX Virtual Workstations (vWS) untuk workload grafis, dan Anda berencana menjalankan beban kerja grafis yang intensif, pilih Enable Virtual Workstation (NVIDIA GRID).
Di bagian Machine type, pilih jenis mesin.
Opsional: Untuk mengubah jenis atau image boot disk nilai default, di bagian Boot disk, klik Change. Lalu, ikuti petunjuk untuk mengubah {i>boot disk<i}.
Luaskan bagian Advanced options, lalu lakukan hal berikut:
Luaskan bagian Management.
Dalam daftar Reservasi, pilih Jangan gunakan.
Klik Create.
gcloud
Untuk membuat template instance yang dikonfigurasi guna membuat permintaan ubah ukuran dalam MIG, gunakan perintah instance-templates create
dengan flag berikut:
Flag
--maintenance-policy
ditetapkan keTERMINATE
.Flag
--reservation-affinity
ditetapkan kenone
.
Misalnya, gunakan perintah berikut:
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
--image-project=IMAGE_PROJECT \
--image-family=IMAGE \
--machine-type=MACHINE_TYPE \
--maintenance-policy=TERMINATE \
--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 informasi selengkapnya tentang project gambar yang didukung, lihat Gambar publik.IMAGE
atauIMAGE_FAMILY
: tentukan salah satu dari opsi berikut:IMAGE
: versi OS image tertentu; misalnya,debian-10-buster-v20200309
.IMAGE_FAMILY
: kelompok image. Tindakan ini menentukan image OS terbaru yang masih digunakan. Misalnya, jika Anda menentukandebian-10
, versi terbaru dalam kelompok image Debian 10 akan digunakan. Untuk mengetahui informasi selengkapnya tentang penggunaan kelompok gambar, lihat Praktik terbaik kelompok gambar.
MACHINE_TYPE
: jenis mesin yang mendukung GPU. Jika Anda menentukan jenis mesin N1, sertakan flag--accelerator
untuk menentukan jumlah dan jenis GPU yang akan dipasang ke VM.
REST
Untuk membuat template instance yang dikonfigurasi guna membuat permintaan pengubahan ukuran di MIG, buat permintaan POST
ke metode instanceTemplates.insert
.
Dalam isi permintaan, lakukan hal berikut:
Tetapkan kolom
scheduling.onHostMaintenance
keTERMINATE
.Tetapkan kolom
reservationAffinity.consumeReservationType
keNO_RESERVATION
.
Misalnya, 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,
"mode": "READ_WRITE",
"type": "PERSISTENT",
"initializeParams": {
"sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE"
}
}
],
"machineType": "MACHINE_TYPE",
"networkInterfaces": [
{
"accessConfigs": [
{
"name": "external-IP",
"type": "ONE_TO_ONE_NAT"
}
],
"network": "global/networks/default"
}
],
"reservationAffinity": {
"consumeReservationType": "NO_RESERVATION"
},
"scheduling": {
"onHostMaintenance": "TERMINATE"
}
}
}
Ganti kode berikut:
PROJECT_ID
: ID project tempat membuat template instance.INSTANCE_TEMPLATE_NAME
: nama template instance yang akan dibuat.IMAGE_PROJECT
: project gambar yang berisi gambar; misalnya,debian-cloud
. Untuk informasi selengkapnya tentang project gambar yang didukung, lihat Gambar publik.IMAGE
atauIMAGE_FAMILY
: tentukan salah satu dari opsi berikut:IMAGE
: versi OS image tertentu; misalnya,debian-10-buster-v20200309
.IMAGE_FAMILY
: kelompok image. Tindakan ini menentukan image OS terbaru yang masih digunakan. Misalnya, jika Anda menentukandebian-10
, versi terbaru dalam kelompok image Debian 10 akan digunakan. Untuk mengetahui informasi selengkapnya tentang penggunaan kelompok gambar, lihat Praktik terbaik kelompok gambar.
MACHINE_TYPE
: jenis mesin yang mendukung GPU. Jika Anda menentukan jenis mesin N1, sertakan kolomguestAccelerators
dalam isi permintaan untuk menentukan jumlah dan jenis GPU yang akan dipasang ke VM.
Untuk mengetahui informasi selengkapnya tentang cara membuat template instance, baca artikel Membuat template instance.
Membuat atau mengupdate MIG
Setelah membuat template instance seperti yang dijelaskan di bagian sebelumnya, gunakan template instance tersebut untuk membuat MIG sebagai berikut atau update MIG. Selain itu, Anda harus melakukan hal berikut guna menyiapkan MIG untuk permintaan perubahan ukuran:
Tetapkan jenis update MIG ke oportunistik (default).
Jika Anda telah mengonfigurasi penskalaan otomatis di MIG, hapus konfigurasi penskalaan otomatis.
Konsol
Untuk membuat MIG zona yang dikonfigurasi guna membuat permintaan perubahan ukuran, lakukan hal berikut:
Di Konsol Google Cloud, buka halaman Instance groups.
Klik Create grup instance.
Halaman Buat grup instance akan terbuka.
Di kolom Name, masukkan nama untuk MIG.
Dalam daftar Instance template, pilih template instance yang Anda buat di bagian sebelumnya. Jika Anda memilih template instance regional, daftar Region akan ditetapkan ke region template instance.
Di bagian Lokasi, lakukan hal berikut:
Pilih Zona tunggal (default).
Pilih Region dan Zone MIG.
Untuk menghapus konfigurasi penskalaan otomatis, lakukan langkah berikut:
Di bagian Autoscaling, klik daftar Autoscaling mode, lalu klik Delete autoscaling configuration.
Pada dialog konfirmasi, klik Delete.
Untuk menonaktifkan perbaikan, di bagian VM instance lifecycle, klik daftar Default action on failure, lalu pilih No action.
Lakukan salah satu hal berikut:
Untuk membuat permintaan perubahan ukuran pada tahap ini, lakukan hal berikut:
Di kolom Number of instances, masukkan jumlah VM yang ingin Anda buat sekaligus.
Centang kotak Gunakan permintaan ubah ukuran untuk membuat VM sekaligus.
Di kolom Request run duration dan daftar Unit, tentukan durasi VM yang dijalankan. Durasi harus antara 1 jam dan 7 hari.
Atau, di kolom Number of instances, masukkan
0
. Nantinya Anda dapat menambahkan VM dalam grup dengan membuat permintaan ubah ukuran.
Klik Create.
gcloud
Untuk membuat MIG zona yang dikonfigurasi guna membuat permintaan perubahan ukuran, gunakan
perintah instance-groups managed create
dengan flag --default-action-on-vm-failure
yang ditetapkan ke do_nothing
.
gcloud compute instance-groups managed create INSTANCE_GROUP_NAME \
--template=INSTANCE_TEMPLATE_NAME \
--size=0 \
--zone=ZONE \
--default-action-on-vm-failure=do_nothing
Ganti kode berikut:
INSTANCE_GROUP_NAME
: nama MIG yang akan dibuat.INSTANCE_TEMPLATE_NAME
: nama template instance yang Anda buat di bagian sebelumnya.ZONE
: zona tempat untuk membuat MIG.
REST
Untuk membuat MIG zona yang dikonfigurasi guna membuat permintaan perubahan ukuran, buat permintaan POST
ke
metode instanceGroupManagers.insert
.
Dalam isi permintaan, sertakan kolom defaultActionOnFailure
yang ditetapkan ke
DO_NOTHING
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers
{
"versions": [
{
"instanceTemplate": "global/instanceTemplates/INSTANCE_TEMPLATE_NAME"
}
],
"name": "INSTANCE_GROUP_NAME",
"targetSize": 0,
"instanceLifecyclePolicy": {
"defaultActionOnFailure": "DO_NOTHING"
}
}
Ganti kode berikut:
PROJECT_ID
: ID project tempat template instance yang Anda buat di bagian sebelumnya berada.ZONE
: zona tempat untuk membuat MIG.INSTANCE_TEMPLATE_NAME
: nama template instance yang Anda buat di bagian sebelumnya.INSTANCE_GROUP_NAME
: nama MIG yang akan dibuat.
Membuat permintaan perubahan ukuran di MIG
Sebelum membuat permintaan perubahan ukuran, pastikan Anda telah menyiapkan MIG seperti yang dijelaskan di bagian sebelumnya.
Setelah Anda membuat permintaan perubahan ukuran dan semua resource yang diminta tersedia, MIG akan membuat jumlah VM yang diminta sekaligus. VM berjalan sampai MIG menghapusnya setelah durasi proses yang ditentukan berakhir, atau sampai Anda menghapusnya.
Konsol
Untuk membuat permintaan pengubahan ukuran di MIG, lakukan langkah berikut:
Di Konsol Google Cloud, buka halaman Instance groups.
Di kolom Name, klik nama MIG untuk membuat permintaan ubah ukuran.
Halaman ringkasan MIG akan terbuka.
Di baris Resize requests, klik
Edit resize requests.Klik
Permintaan pengubahan ukuran baru.Panel New resize requests akan muncul.
Di kolom Name, masukkan nama permintaan ubah ukuran.
Di kolom Jumlah instance tambahan yang diperlukan, masukkan jumlah VM yang akan ditambahkan ke MIG sekaligus.
Di kolom Request run duration dan Unit, tentukan durasi VM yang diminta untuk dijalankan. Durasi harus antara 1 jam dan 7 hari.
Klik Create.
gcloud
Untuk membuat permintaan pengubahan ukuran di MIG, gunakan
perintah beta instance-groups managed resize-requests create
.
gcloud beta compute instance-groups managed resize-requests create INSTANCE_GROUP_NAME \
--resize-request=RESIZE_REQUEST_NAME \
--resize-by=COUNT \
--requested-run-duration=RUN_DURATION \
--zone=ZONE
Ganti kode berikut:
INSTANCE_GROUP_NAME
: nama MIG zona yang ada yang dikonfigurasi untuk membuat permintaan perubahan ukuran di dalamnya.RESIZE_REQUEST_NAME
: nama permintaan perubahan ukuran, yang harus unik dalam MIG yang ditentukan. Jika tidak, pembuatan permintaan ubah ukuran akan gagal.COUNT
: jumlah VM yang akan ditambahkan ke MIG sekaligus.RUN_DURATION
: durasi yang Anda inginkan untuk menjalankan VM yang diminta. Nilai harus diformat sebagai jumlah hari, jam, menit, atau detik, diikuti dengand
,h
,m
, dans
masing-masing. Misalnya, tentukan30m
selama 30 menit atau1d2h3m4s
selama 1 hari, 2 jam, 3 menit, dan 4 detik. Nilainya harus antara 10 menit dan 7 hari.ZONE
: zona tempat MIG berada.
REST
Untuk membuat permintaan perubahan ukuran di MIG, buat permintaan POST
ke
metode beta.instanceGroupManagerResizeRequests.insert
.
POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/INSTANCE_GROUP_NAME/resizeRequests
{
"name": "RESIZE_REQUEST_NAME",
"resizeBy": COUNT,
"requestedRunDuration": {
"seconds": "RUN_DURATION"
}
}
Ganti kode berikut:
PROJECT_ID
: ID project tempat MIG yang ditentukan berada.ZONE
: zona tempat MIG berada.INSTANCE_GROUP_NAME
: nama MIG zona yang ada yang dikonfigurasi untuk membuat permintaan perubahan ukuran di dalamnya.RESIZE_REQUEST_NAME
: nama permintaan perubahan ukuran, yang harus unik dalam MIG yang ditentukan. Jika tidak, pembuatan permintaan perubahan ukuran akan gagal.COUNT
: jumlah VM yang akan ditambahkan sekaligus ke MIG.RUN_DURATION
: durasi, dalam detik, Anda ingin VM yang diminta berjalan. Nilainya harus antara600
, yaitu 600 detik (10 menit), dan604800
, yaitu 604.800 detik (7 hari).
Langkah selanjutnya
Pelajari cara melihat, membatalkan, atau menghapus permintaan perubahan ukuran di MIG.
Pelajari cara melihat info tentang MIG dan VM terkelola.