Membuat MIG yang menambahkan VM GPU sekaligus

Dokumen ini menjelaskan cara membuat grup instance terkelola (MIG) untuk menambahkan instance virtual machine (VM) GPU sekaligus.

MIG menggunakan mode massal dari kebijakan ukuran targetnya untuk menambahkan VM sekaligus. DWS juga menggunakan model penyediaan flex-start untuk meningkatkan ketersediaan resource. Untuk mengetahui informasi selengkapnya tentang model penyediaan mulai fleksibel, lihat Tentang model penyediaan.

Metode lain untuk menambahkan VM GPU sekaligus di MIG adalah dengan membuat permintaan pengubahan ukuran. Untuk menentukan apakah mode massal atau permintaan pengubahan ukuran lebih cocok untuk beban kerja Anda, lihat Perbandingan mode massal dan permintaan pengubahan ukuran.

Jika workload Anda tidak mengharuskan MIG membuat VM sekaligus, tetapi Anda tetap ingin meningkatkan ketersediaan resource, gunakan model penyediaan mulai fleksibel seperti yang dijelaskan dalam Membuat MIG dengan VM Mulai fleksibel.

Sebelum memulai

  • Untuk memastikan Anda memiliki kuota GPU yang cukup untuk resource yang Anda minta, periksa kuota GPU Anda.
  • Untuk memahami penggunaan kuota, baca artikel VM GPU dan kuota alokasi preemptible.
  • Siapkan autentikasi jika Anda belum melakukannya. Autentikasi memverifikasi identitas Anda untuk mengakses layanan Google Cloud dan API. Untuk menjalankan kode atau sampel dari lingkungan pengembangan lokal, Anda dapat melakukan autentikasi ke Compute Engine dengan memilih salah satu opsi berikut:

    Pilih tab untuk melihat bagaimana Anda berencana menggunakan contoh di halaman ini:

    Konsol

    Saat menggunakan konsol Google Cloud untuk mengakses layanan Google Cloud dan API, Anda tidak perlu menyiapkan autentikasi.

    gcloud

    1. Instal Google Cloud CLI. Setelah penginstalan, inisialisasi Google Cloud CLI dengan menjalankan perintah berikut:

      gcloud init

      Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.

  • Tetapkan 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.

      Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.

    Untuk mengetahui informasi selengkapnya, lihat Melakukan autentikasi untuk menggunakan REST dalam dokumentasi autentikasi Google Cloud .

Batasan

Batasan berikut berlaku:

Membuat MIG dan menambahkan VM GPU sekaligus

Untuk membuat semua VM GPU sekaligus, lakukan hal berikut:

  1. Buat template instance, yang diperlukan untuk membuat MIG. Kemudian, MIG menggunakan template ini untuk membuat setiap VM dalam grup. Dalam template, tentukan konfigurasi untuk model penyediaan flex-start.

    Untuk mengetahui informasi selengkapnya tentang template instance, lihat Tentang template instance.

  2. Buat MIG untuk penyediaan VM secara massal. Selama pembuatan MIG, aktifkan kemampuan penyediaan massal di MIG dengan menetapkan mode kebijakan ukuran target ke BULK. Dalam mode BULK, MIG berupaya membuat semua VM sekaligus untuk memenuhi ukuran target yang Anda tetapkan.

Membuat template instance

Buat template instance yang menentukan seri mesin GPU. Kemudian, gunakan template untuk membuat MIG.

Catatan: Jika Anda ingin menjalankan workload data science atau machine learning, pertimbangkan untuk menggunakan image Deep Learning VM saat membuat template instance. Deep Learning VM Image adalah kumpulan image VM dalam bentuk paket yang dilengkapi dengan framework machine learning dan alat penting. Untuk mengetahui informasi selengkapnya tentang image ini, lihat Memilih image dalam dokumentasi Deep Learning VM Images.

Konsol

  1. Buka halaman Template instance.

    Buka Instance templates

  2. Klik Buat template instance . Halaman Create an instance template akan terbuka.

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

  4. 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. Di bagian Machine type, pilih jenis mesin.

  5. Di bagian Model penyediaan, lakukan tindakan berikut:

    1. Dalam daftar VM provisioning model, pilih Flex-start.

    2. Untuk menyetel durasi berjalan VM yang dibuat melalui template instance, di kolom Enter number of hours, masukkan jumlah jam. Nilai harus antara satu jam (1) dan tujuh hari (168).

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

  7. Klik Create.

gcloud

Buat template instance menggunakan perintah instance-templates create:

gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
    --image-project=IMAGE_PROJECT \
    --image-family=IMAGE_FAMILY \
    --instance-termination-action=DELETE \
    --instance-template-region=REGION \
    --machine-type=MACHINE_TYPE \
    --maintenance-policy=TERMINATE \
    --max-run-duration=RUN_DURATION \
    --provisioning-model=FLEX_START \
    --reservation-affinity=none

Ganti kode berikut:

  • INSTANCE_TEMPLATE_NAME: nama template instance.

  • IMAGE_PROJECT: project gambar yang berisi gambar—misalnya, debian-cloud. Untuk mengetahui informasi selengkapnya tentang project gambar yang didukung, lihat Gambar publik.

  • IMAGE_FAMILY: kelompok image. 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 cara menggunakan kelompok image, lihat Praktik terbaik kelompok image.

  • REGION: region tempat membuat template instance.

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

  • RUN_DURATION: durasi yang Anda inginkan untuk menjalankan VM yang diminta. Anda harus memformat nilai sebagai jumlah hari, jam, menit, atau detik yang diikuti dengan d, h, m, atau s. Misalnya, tentukan 30m selama 30 menit atau 1d2h3m4s selama satu hari, dua jam, tiga menit, dan empat detik. Nilainya harus antara 10 menit dan tujuh hari.

REST

Buat template instance dengan membuat permintaan POST ke metode instanceTemplates.insert:

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceTemplates

{
  "name": "INSTANCE_TEMPLATE_NAME",
  "properties": {
    "disks": [
      {
        "boot": true,
        "initializeParams": {
          "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE
        }
      }
    ],
    "machineType": "MACHINE_TYPE",
    "networkInterfaces": [
      {
        "network": "global/networks/default"
      }
    ],
    "reservationAffinity": {
      "consumeReservationType": "NO_RESERVATION"
    },
    "scheduling": {
      "instanceTerminationAction": "DELETE",
      "maxRunDuration": {
        "seconds": RUN_DURATION
      },
      "onHostMaintenance": "TERMINATE",
      "provisioningModel": "FLEX_START"
    }
  }
}

Ganti kode berikut:

  • PROJECT_ID: ID project tempat Anda ingin membuat template instance.

  • REGION: region tempat membuat template instance.

  • INSTANCE_TEMPLATE_NAME: nama template instance.

  • IMAGE_PROJECT: project gambar yang berisi gambar—misalnya, debian-cloud. Untuk mengetahui informasi selengkapnya tentang project gambar yang didukung, lihat Gambar publik.

  • IMAGE: tentukan salah satu dari berikut ini:

    • Versi tertentu dari OS image—misalnya, debian-12-bookworm-v20240617.

    • Kelompok image, yang harus diformat sebagai family/IMAGE_FAMILY. 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 cara menggunakan kelompok image, lihat Praktik terbaik kelompok image.

  • MACHINE_TYPE: jenis mesin GPU. Jika Anda menentukan jenis mesin N1, sertakan kolom guestAccelerators untuk menentukan jumlah dan jenis GPU yang akan dipasang ke VM Anda.

  • RUN_DURATION: durasi, dalam detik, yang Anda inginkan agar VM yang diminta berjalan sebelum MIG menghapusnya secara otomatis. Nilai harus antara 600, yaitu 600 detik (10 menit), dan 604800, yaitu 604.800 detik (tujuh hari).

Setelah membuat template instance, Anda dapat melihatnya untuk melihat ID-nya dan meninjau properti instance-nya.

Membuat MIG dan menambahkan VM GPU sekaligus

Buat MIG seperti yang dijelaskan di bagian ini. Saat mengaktifkan penyediaan massal di MIG, Anda harus menonaktifkan perbaikan.

Konsol

  1. 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. Sebelum memilih template instance, Anda harus menonaktifkan perbaikan dan menetapkan lokasi sebagai berikut:

    1. Untuk menonaktifkan perbaikan, lakukan hal berikut:
      1. Di bagian VM instance lifecycle, hapus centang pada kotak Allow repair of VMs in an alternate zone.
      2. Dalam daftar Default action on failure, pilih No action.
    2. Untuk menetapkan bagian Lokasi, lakukan hal berikut:
      • Untuk membuat MIG zona, pilih Single zone.
      • Untuk membuat MIG regional, pilih Multiple zones. Di bagian Bentuk distribusi target, pilih Satu zona. Pada dialog yang muncul, pilih Nonaktifkan pendistribusian ulang instance.
  5. Kembali ke kolom template instance. Dalam daftar Instance template, pilih template instance yang Anda buat di bagian sebelumnya.

  6. Di kolom Number of instances, tentukan jumlah instance yang ingin Anda buat sekaligus.

  7. Centang kotak Obtain VMs all at once with bulk target size policy.

  8. Klik Create.

gcloud

Untuk membuat MIG dengan kemampuan penyediaan massal, gunakan perintah instance-groups managed create.

  • Untuk membuat MIG zona, jalankan perintah berikut:

    gcloud compute instance-groups managed create INSTANCE_GROUP_NAME \
        --default-action-on-vm-failure=do-nothing \
        --size=SIZE \
        --target-size-policy-mode=bulk \
        --template=INSTANCE_TEMPLATE_URL \
        --zone=ZONE \
    
  • Untuk membuat MIG regional, jalankan perintah berikut:

    gcloud compute instance-groups managed create INSTANCE_GROUP_NAME \
        --default-action-on-vm-failure=do-nothing \
        --size=SIZE \
        --target-size-policy-mode=bulk \
        --template=INSTANCE_TEMPLATE_URL \
        --zones=LIST_OF_ZONES \
    

Ganti kode berikut:

  • INSTANCE_GROUP_NAME: nama MIG.
  • SIZE: jumlah VM di MIG.
  • INSTANCE_TEMPLATE_URL: URL template instance yang ingin Anda gunakan untuk membuat instance di MIG. URL dapat berisi ID atau nama template instance. Tentukan salah satu nilai berikut:
    • Untuk template instance regional: projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID
    • Untuk template instance global: INSTANCE_TEMPLATE_ID
  • ZONE: zona tempat MIG membuat VM.
  • LIST_OF_ZONES: daftar zona yang dipisahkan koma tempat MIG regional membuat VM. Contoh, us-central1-a, us-central1-b, us-central1-c.

REST

Untuk membuat MIG yang mengaktifkan pembuatan massal, buat permintaan POST sebagai berikut. Di isi permintaan, tetapkan kolom targetSizePolicy.mode ke bulk.

Jika template instance yang Anda gunakan menentukan model penyediaan flex-start, Anda harus menonaktifkan perbaikan di MIG dengan menyertakan kolom "instanceLifecyclePolicy": {"defaultActionOnFailure": "DO_NOTHING"} dalam permintaan berikut.

  • Untuk membuat MIG zona, buat permintaan POST ke metode instanceGroupManagers.insert.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers
    
    {
      "name": "INSTANCE_GROUP_NAME",
      "targetSize": SIZE,
      "targetSizePolicy": {
        "mode": "bulk"
      },
      "instanceLifecyclePolicy": {
          "defaultActionOnFailure": "DO_NOTHING"
      },
      "versions": [
        {
          "instanceTemplate": "INSTANCE_TEMPLATE_URL"
        }
      ]
    }
    
  • Untuk membuat MIG regional, buat permintaan POST ke metode regionInstanceGroupManagers.insert.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers
    
    {
      "name": "INSTANCE_GROUP_NAME",
      "targetSize": SIZE,
      "targetSizePolicy": {
        "mode": "bulk"
      },
      "instanceLifecyclePolicy": {
          "defaultActionOnFailure": "DO_NOTHING"
      },
      "versions": [
        {
          "instanceTemplate": "INSTANCE_TEMPLATE_URL"
        }
      ]
    }
    

Ganti kode berikut:

  • PROJECT_ID:project ID.
  • ZONE:zona tempat MIG membuat VM.
  • REGION:region tempat MIG membuat VM.
  • INSTANCE_GROUP_NAME:nama MIG.
  • SIZE:jumlah VM di MIG.
  • INSTANCE_TEMPLATE_URL: URL template instance yang ingin Anda gunakan untuk membuat instance di MIG. URL dapat berisi ID atau nama template instance. Tentukan salah satu nilai berikut:
    • Untuk template instance regional: projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID
    • Untuk template instance global: INSTANCE_TEMPLATE_ID

Langkah berikutnya