Membuat permintaan pengubahan ukuran di MIG


Dokumen ini menjelaskan cara membuat permintaan pengubahan ukuran dalam grup instance terkelola (MIG) dari instance virtual machine (VM) yang memiliki GPU terpasang.

Membuat permintaan pengubahan ukuran di MIG membantu Anda mendapatkan resource yang sangat diminati, seperti GPU, dan mengoptimalkan biaya dengan membuat jumlah VM yang tepat sekaligus.

Sebelum memulai

  • Tinjau cara kerja permintaan pengubahan ukuran.
  • Untuk memastikan Anda memiliki kuota GPU yang cukup untuk resource yang Anda minta, periksa kuota GPU Anda.
  • 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:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    1. Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init
    2. Set a default region and zone.
    3. 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 diperlukan 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 ke project, folder, dan organisasi.

Peran bawaan ini berisi izin yang diperlukan untuk membuat permintaan pengubahan ukuran di MIG. Untuk melihat izin yang benar-benar diperlukan, luaskan bagian Izin yang diperlukan:

Izin yang diperlukan

Izin berikut diperlukan untuk membuat permintaan perubahan ukuran di MIG:

  • Untuk membuat template instance: compute.instanceTemplates.create pada project
  • Untuk membuat MIG zona: compute.instanceGroupManagers.create pada project
  • Untuk membuat permintaan pengubahan ukuran di MIG: compute.instanceGroupManagers.update pada project

Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.

Menyiapkan MIG untuk permintaan pengubahan ukuran

Untuk membuat permintaan pengubahan 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:

Untuk membuat template instance yang dikonfigurasi untuk membuat permintaan perubahan ukuran di MIG, pilih salah satu opsi berikut:

Konsol

  1. Di konsol Google Cloud, buka halaman Instance templates.

    Buka halaman Template instance

  2. Klik Create instance template.

  3. Di kolom Name, masukkan nama untuk template instance.

  4. Di bagian Lokasi, pilih salah satu opsi berikut:

    • Untuk membuat template instance global, pilih Global, jika belum dipilih.

    • Untuk membuat template instance regional, pilih Regional, lalu pilih region tempat template instance akan dibuat.

  5. Di bagian Machine configuration, lakukan hal berikut:

    1. Klik tab GPU.

    2. Dalam daftar GPU type, pilih jenis GPU.

    3. Dalam daftar Number of GPU, pilih jumlah GPU.

    4. Opsional: Jika model GPU Anda mendukung NVIDIA RTX Virtual Workstations (vWS) untuk workload grafis, dan Anda berencana menjalankan workload yang intensif grafis, pilih Aktifkan Workstation Virtual (NVIDIA GRID).

    5. Di bagian Machine type, pilih jenis mesin.

  6. Opsional: Untuk mengubah jenis atau image boot disk nilai default, di bagian Boot disk, klik Change. Kemudian, ikuti petunjuk untuk mengubah disk booting.

  7. Luaskan bagian Advanced options, lalu lakukan hal berikut:

    1. Luaskan bagian Management.

    2. Dalam daftar Reservations, pilih Don't use.

  8. Klik Create.

gcloud

Untuk membuat template instance yang dikonfigurasi untuk membuat permintaan pengubahan ukuran di MIG, gunakan perintah instance-templates create dengan flag berikut:

  • Flag --maintenance-policy ditetapkan ke TERMINATE.

  • Flag --reservation-affinity ditetapkan ke none.

Misalnya, gunakan perintah berikut untuk 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 \
    --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 image yang berisi image; misalnya, debian-cloud. Untuk informasi selengkapnya tentang project image yang didukung, lihat Image publik.

  • IMAGE_FAMILY: kelompok image. Tindakan ini menentukan image OS terbaru yang masih digunakan. Misalnya, jika Anda menentukan debian-12, versi terbaru dalam kelompok image Debian 12 akan digunakan. Untuk mengetahui informasi selengkapnya tentang penggunaan kelompok image, lihat Praktik terbaik kelompok image.

    Jika Anda ingin menggunakan versi image OS tertentu, seperti debian-12-buster-v20240701, ganti flag --image-family dengan flag --image.

  • REGION: region tempat membuat template instance.

  • MACHINE_TYPE: jenis mesin yang mendukung GPU. Jika Anda menentukan jenis mesin N1, sertakan flag --accelerator untuk menentukan jumlah dan jenis GPU yang akan dilampirkan ke VM Anda.

REST

Untuk membuat template instance yang dikonfigurasi untuk membuat permintaan pengubahan ukuran di MIG, buat permintaan POST ke salah satu metode berikut:

Dalam isi permintaan, lakukan hal berikut:

  • Sertakan kolom scheduling.onHostMaintenance, dan tetapkan ke TERMINATE.

  • Sertakan kolom reservationAffinity.consumeReservationType, dan tetapkan ke NO_RESERVATION.

Misalnya, untuk membuat template instance regional, buat permintaan POST 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": "NO_RESERVATION"
    },
    "scheduling": {
      "onHostMaintenance": "TERMINATE"
    }
  }
}

Ganti kode berikut:

  • PROJECT_ID: ID project tempat membuat template instance.

  • REGION: region tempat membuat template instance.

  • INSTANCE_TEMPLATE_NAME: nama template instance yang akan dibuat.

  • 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 menentukan family/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 yang mendukung GPU. Jika Anda menentukan jenis mesin N1, sertakan kolom guestAccelerators dalam isi permintaan untuk menentukan jumlah dan jenis GPU yang akan dilampirkan ke VM Anda.

Untuk mengetahui informasi selengkapnya tentang cara membuat template instance, lihat Membuat template instance.

Membuat atau memperbarui MIG

Setelah membuat template instance seperti yang dijelaskan di bagian sebelumnya, gunakan template instance tersebut untuk membuat MIG sebagai berikut, atau memperbarui MIG. Selain itu, Anda harus melakukan hal berikut untuk menyiapkan MIG untuk permintaan pengubahan ukuran:

Untuk membuat MIG yang kompatibel dengan permintaan perubahan ukuran, pilih salah satu opsi berikut:

Konsol

  1. Di Konsol Google Cloud, buka halaman Instance groups.

    Buka Instance groups

  2. Klik Create instance group.

    Halaman Create instance group akan terbuka.

  3. Di kolom Nama, masukkan nama untuk MIG.

  4. 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.

  5. Di bagian Lokasi, tentukan apakah Anda ingin membuat MIG zona atau regional sebagai berikut:

    1. Untuk membuat MIG zona, pilih Single zone. Atau, untuk membuat MIG regional, pilih Beberapa zona.

    2. Pilih Region dan Zones MIG.

    3. Jika Anda membuat MIG regional, lakukan hal berikut:

      1. Di kolom Target distribution shape, pilih Any single zone. Anda dapat memilih opsi ini hanya setelah menghapus konfigurasi penskalaan otomatis di langkah-langkah selanjutnya.

      2. Setelah Anda memilih opsi zona tunggal apa pun, di dialog yang muncul, klik Nonaktifkan redistribusi instance.

  6. Hapus konfigurasi penskalaan otomatis sebagai berikut:

    1. Di bagian Autoscaling, klik daftar Autoscaling mode, lalu klik Delete autoscaling configuration.

    2. Pada dialog konfirmasi, klik Delete.

  7. Nonaktifkan perbaikan sebagai berikut:

    1. Di bagian VM instance lifecycle, klik daftar Default action on failure.

    2. Pilih Tidak ada tindakan.

  8. Lakukan salah satu hal berikut:

    • Untuk membuat permintaan pengubahan ukuran pada tahap ini, lakukan hal berikut:

      1. Di kolom Number of instances, masukkan jumlah VM yang ingin Anda buat sekaligus.

        Kolom jumlah instance di halaman Create instance group.

      2. Centang kotak Use resize request to create VMs all at once.

      3. Di kolom Requested run duration dan daftar Unit, tentukan durasi operasi VM. Durasi harus antara 1 jam dan 7 hari.

    • Jika tidak, di kolom Jumlah instance, masukkan 0. Anda dapat menambahkan VM di grup nanti dengan membuat permintaan perubahan ukuran.

  9. Klik Create.

gcloud

Gunakan perintah instance-groups managed create dengan flag --default-action-on-vm-failure yang ditetapkan ke do_nothing. Jika membuat MIG regional, Anda juga harus menyertakan flag --target-distribution-shape yang ditetapkan ke any-single-zone, dan flag --instance-redistribution-type yang ditetapkan ke none.

  • Untuk membuat MIG zona, jalankan perintah berikut:

    gcloud compute instance-groups managed create INSTANCE_GROUP_URL \
      --template=INSTANCE_TEMPLATE_NAME \
      --size=0 \
      --zone=ZONE \
      --default-action-on-vm-failure=do_nothing
    
  • Untuk membuat MIG regional, jalankan perintah berikut:

    gcloud compute instance-groups managed create INSTANCE_GROUP_NAME \
        --template=INSTANCE_TEMPLATE_URL \
        --size=0 \
        --region=REGION \
        --target-distribution-shape=any-single-zone \
        --instance-redistribution-type=none \
        --default-action-on-vm-failure=do_nothing
    

Ganti kode berikut:

  • INSTANCE_GROUP_NAME: nama MIG yang akan dibuat.

  • INSTANCE_TEMPLATE_URL: URL sebagian dari template instance yang Anda buat di bagian sebelumnya. Jika ingin menggunakan template instance regional untuk membuat MIG, Anda hanya dapat membuat MIG dalam region template. Tentukan salah satu nilai berikut:

    • Untuk template instance regional: projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_NAME

    • Untuk template instance global: INSTANCE_TEMPLATE_NAME

  • ZONE: zona tempat membuat MIG.

  • REGION: region tempat membuat MIG.

REST

  • Untuk membuat MIG zona, kirim permintaan POST menggunakan metode instanceGroupManagers.insert sebagai berikut:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers
    
    {
      "versions": [
        {
          "instanceTemplate": "INSTANCE_TEMPLATE_URL"
        }
      ],
      "name": "INSTANCE_GROUP_NAME",
      "targetSize": 0,
      "instanceLifecyclePolicy": {
        "defaultActionOnFailure": "DO_NOTHING"
      }
    }
    
  • Untuk membuat MIG regional, kirim permintaan POST menggunakan metode regionInstanceGroupManagers.insert seperti berikut:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers
    
    {
      "versions": [
        {
          "instanceTemplate": "INSTANCE_TEMPLATE_URL"
        }
      ],
      "name": "INSTANCE_GROUP_NAME",
      "targetSize": 0,
      "distributionPolicy": {
        "targetShape": "ANY_SINGLE_ZONE"
      },
      "updatePolicy": {
        "instanceRedistributionType": "NONE"
      },
      "instanceLifecyclePolicy": {
        "defaultActionOnFailure": "DO_NOTHING"
      }
    }
    

Ganti kode berikut:

  • PROJECT_ID: ID project tempat template instance yang Anda buat di bagian sebelumnya berada.

  • INSTANCE_TEMPLATE_URL: URL sebagian dari template instance yang Anda buat di bagian sebelumnya. Jika ingin menggunakan template instance regional untuk membuat MIG, Anda hanya dapat membuat MIG dalam region template. Tentukan salah satu nilai berikut:

    • Untuk template instance regional: regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_NAME

    • Untuk template instance global: global/instanceTemplates/INSTANCE_TEMPLATE_NAME

  • ZONE: zona tempat membuat MIG.

  • REGION: region tempat membuat MIG.

  • INSTANCE_GROUP_NAME: nama MIG yang akan dibuat.

Membuat permintaan pengubahan ukuran di MIG

Sebelum membuat permintaan pengubahan ukuran, pastikan Anda telah menyiapkan MIG seperti yang dijelaskan di bagian sebelumnya.

Setelah Anda membuat permintaan pengubahan ukuran, permintaan tersebut akan disetujui, dan semua resource yang diminta akan tersedia, MIG akan membuat jumlah VM yang diminta sekaligus. VM akan berjalan hingga MIG menghapusnya setelah durasi jalan yang ditentukan berakhir, atau hingga Anda menghapusnya.

Untuk membuat permintaan pengubahan ukuran di MIG, pilih salah satu opsi berikut:

Konsol

  1. Di Konsol Google Cloud, buka halaman Instance groups.

    Buka Instance groups

  2. Di kolom Name, klik nama MIG tempat Anda akan membuat permintaan perubahan ukuran.

    Halaman ringkasan MIG akan terbuka.

  3. Di baris Permintaan pengubahan ukuran, klik Edit permintaan pengubahan ukuran.

  4. Klik Permintaan pengubahan ukuran baru.

    Panel Permintaan perubahan ukuran baru akan muncul.

  5. Di kolom Name, masukkan nama permintaan pengubahan ukuran.

  6. Di kolom Number of additional instances needed, masukkan jumlah VM yang akan ditambahkan ke MIG sekaligus.

  7. Di kolom Requested run duration dan Unit, tentukan durasi yang Anda inginkan untuk dijalankan VM yang diminta. Durasi harus antara 1 jam dan 7 hari.

  8. Klik Create.

gcloud

  • Untuk membuat permintaan pengubahan ukuran di MIG zona, gunakan perintah instance-groups managed resize-requests create.

    gcloud 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
    
  • Untuk membuat permintaan pengubahan ukuran di MIG regional, 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 \
        --region=REGION
    

Ganti kode berikut:

  • INSTANCE_GROUP_NAME: nama MIG yang dikonfigurasi untuk membuat permintaan pengubahan ukuran di dalamnya.

  • RESIZE_REQUEST_NAME: nama permintaan pengubahan ukuran, yang harus unik dalam MIG yang ditentukan. Jika tidak, pembuatan permintaan pengubahan 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 yang diikuti dengan d, h, m, dan s. Misalnya, tentukan 30m selama 30 menit atau 1d2h3m4s selama 1 hari, 2 jam, 3 menit, dan 4 detik. Nilainya harus antara 10 menit dan 7 hari.

  • ZONE: zona tempat MIG berada.

  • REGION: region tempat MIG berada.

REST

  • Untuk membuat permintaan pengubahan ukuran di MIG zona, kirim permintaan POST menggunakan metode instanceGroupManagerResizeRequests.insert.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/INSTANCE_GROUP_NAME/resizeRequests
    
  • Untuk membuat permintaan pengubahan ukuran di MIG regional, kirim permintaan POST menggunakan metode beta.regionInstanceGroupManagerResizeRequests.insert.

    POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME/resizeRequests
    

Dalam isi permintaan, sertakan hal berikut:

{
  "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.

  • REGION: region tempat MIG berada.

  • INSTANCE_GROUP_NAME: nama MIG yang dikonfigurasi untuk membuat permintaan pengubahan ukuran di dalamnya.

  • RESIZE_REQUEST_NAME: nama permintaan pengubahan ukuran, yang harus unik dalam MIG yang ditentukan. Jika tidak, pembuatan permintaan pengubahan ukuran akan gagal.

  • COUNT: jumlah VM yang akan ditambahkan sekaligus ke MIG.

  • RUN_DURATION: durasi, dalam detik, yang Anda inginkan untuk VM yang diminta dijalankan. Nilainya harus antara 600, yaitu 600 detik (10 menit), dan 604800, yaitu 604.800 detik (7 hari).

Setelah membuat permintaan pengubahan ukuran, Anda dapat melihat statusnya atau memecahkan masalahnya dengan melihat detail permintaan pengubahan ukuran.

Langkah selanjutnya