Membuat MIG dengan VM GPU


Dokumen ini menjelaskan cara membuat grup instance terkelola (MIG) dengan VM GPU. Panduan ini menjelaskan cara menambahkan VM GPU sekaligus dalam grup menggunakan permintaan perubahan ukuran.

Menggunakan permintaan perubahan ukuran akan meningkatkan kemampuan akses VM GPU dalam MIG. Dalam permintaan, tentukan jumlah VM GPU dan durasinya yang Anda inginkan untuk menjalankan VM tersebut. Dynamic Workload Scheduler (DWS), mekanisme penjadwal pokok, menjadwalkan permintaan perubahan ukuran yang dibuat di Compute Engine berdasarkan durasi yang diminta dan ketersediaan resource. Saat resource tersedia, MIG akan otomatis membuat VM.

Jika tugas Anda yang berjalan di VM ini selesai lebih awal dari durasi yang diminta, Anda dapat menghapus VM tersebut. Jika tidak, MIG akan otomatis menghapus VM saat durasi berakhir.

Anda juga dapat membaca skenario dasar lainnya untuk membuat MIG.

Sebelum memulai

  • Periksa kuota GPU Anda guna memastikan Anda memiliki kuota GPU yang cukup untuk resource yang diminta.
  • 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

    1. Instal Google Cloud CLI, lalu initialize dengan menjalankan perintah berikut:

      gcloud init
    2. 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

Batasan

Tinjau batasan untuk membuat permintaan perubahan ukuran di MIG.

Buat MIG dan tambahkan VM GPU sekaligus

Untuk membuat MIG dan menambahkan VM GPU sekaligus dalam grup, lakukan langkah berikut:

  1. Buat template instance, yang diperlukan untuk membuat MIG. MIG membuat setiap VM dalam grup berdasarkan template instance. Dalam template, tentukan konfigurasi untuk VM GPU dan konfigurasi tambahan yang diperlukan untuk menggunakan permintaan perubahan ukuran.

    Untuk mengetahui informasi selengkapnya tentang template instance, baca artikel Tentang template instance.

  2. Buat MIG dan permintaan perubahan ukuran untuk menambahkan VM GPU sekaligus.

Membuat template instance

Buat template instance seperti yang dijelaskan di bagian ini, lalu gunakan template tersebut untuk membuat MIG.

Konsol

  1. Buka halaman Template instance.

    Buka Instance templates

  2. Klik Create instance template.

  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 GPU type.
    3. Dalam daftar Number of GPU, pilih jumlah GPU.
    4. Dalam daftar Machine type, pilih jenis mesin.
  5. Luaskan bagian Advanced options, lalu lakukan hal berikut:

    1. Luaskan bagian Management.
    2. Dalam daftar Reservasi, pilih Jangan gunakan.
  6. Klik Create.

gcloud

Buat template instance menggunakan perintah instance-templates create.

Perintah berikut akan membuat template instance global.

gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
    --machine-type=MACHINE_TYPE \
    --maintenance-policy=TERMINATE \
    --reservation-affinity=none

Ganti kode berikut:

  • INSTANCE_TEMPLATE_NAME: nama 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 dipasang ke VM.

REST

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

Permintaan berikut membuat template instance global.

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/debian-cloud/global/images/family/debian-10"
        }
      }
    ],
    "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 Anda ingin membuat MIG.
  • INSTANCE_TEMPLATE_NAME: nama template instance.
  • MACHINE_TYPE: jenis mesin yang mendukung GPU. Jika Anda menentukan jenis mesin N1, sertakan kolom guestAccelerators untuk menentukan jumlah dan jenis GPU yang akan dipasang ke VM.

Buat MIG dan tambahkan VM GPU sekaligus

Buat MIG seperti yang dijelaskan di bagian ini. Untuk menggunakan permintaan perubahan ukuran di MIG, Anda tidak boleh mengonfigurasi penskalaan otomatis dan harus menonaktifkan perbaikan.

Konsol

  1. Buka halaman Instance groups.

    Buka Instance groups

  2. Klik Create grup instance.

  3. Masukkan kolom berikut:

    1. Nama: Masukkan nama untuk grup.
    2. Instance template: Pilih template instance yang Anda konfigurasi di bagian sebelumnya.
    3. Di bagian Lokasi:
      1. Pilih Single zone.
      2. Di daftar Region dan Zone, pilih lokasi Anda ingin membuat grup.

    Kolom Number of instances akan diaktifkan untuk diedit setelah Anda menghapus konfigurasi penskalaan otomatis pada langkah berikutnya.

  4. Hapus konfigurasi penskalaan otomatis sebagai berikut:

    1. Di bagian Autoscaling, klik daftar Autoscaling mode, lalu klik Delete autoscaling configuration.
    2. Di dialog Delete autoscaling configuration?, klik Delete.
  5. Nonaktifkan reparasi di MIG sebagai berikut:

    Di bagian VM instance lifecycle, tetapkan kolom Default action on failure ke No action.

  6. Tentukan jumlah VM GPU dan durasi pengoperasian untuk membuat permintaan perubahan ukuran:

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

      Jumlah kolom instance di halaman Buat grup instance.

    2. Centang kotak Gunakan permintaan ubah ukuran untuk membuat VM sekaligus. Kolom untuk memasukkan durasi lari akan muncul.

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

  7. Klik Create.

gcloud

  1. Buat MIG zona menggunakan perintah instance-groups managed create.

    gcloud compute instance-groups managed create INSTANCE_GROUP_NAME \
       --template=INSTANCE_TEMPLATE_NAME \
       --size=0 \
       --zone=ZONE \
       --default-action-on-vm-failure=do_nothing
    
  2. Di MIG, buat permintaan ubah ukuran menggunakan perintah instance-groups managed resize-requests create beta. Tentukan jumlah VM GPU yang Anda inginkan dan durasinya yang Anda inginkan untuk menjalankan VM tersebut.

    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.
  • INSTANCE_TEMPLATE_NAME: nama template instance untuk VM GPU.
  • ZONE: salah satu zona yang tersedia untuk Compute Engine.
  • RESIZE_REQUEST_NAME: nama permintaan perubahan ukuran.
  • COUNT: jumlah VM yang akan ditambahkan sekaligus dalam grup.
  • RUN_DURATION: durasi yang Anda inginkan untuk menjalankan VM yang diminta. Nilai harus diformat sebagai jumlah hari, jam, menit, atau detik, diikuti dengan d, h, m, dan s masing-masing. 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.

REST

  1. Buat MIG zona dengan membuat permintaan POST ke metode instanceGroupManagers.insert.

    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"
     }
    }
    
  2. Di MIG, buat permintaan perubahan ukuran dengan membuat permintaan POST ke metode instanceGroupManagerResizeRequests.insert beta. Dalam isi permintaan, tentukan jumlah VM GPU yang ingin Anda buat sekaligus, serta durasi yang Anda inginkan untuk menjalankan VM tersebut.

    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 Anda ingin membuat MIG.
  • INSTANCE_GROUP_NAME: nama MIG.
  • INSTANCE_TEMPLATE_NAME: nama template instance untuk VM GPU.
  • ZONE: salah satu zona yang tersedia untuk Compute Engine.
  • RESIZE_REQUEST_NAME: nama permintaan perubahan ukuran.
  • COUNT: jumlah VM yang akan ditambahkan sekaligus dalam grup.
  • RUN_DURATION: durasi, dalam detik, Anda ingin VM yang diminta berjalan sebelum MIG menghapusnya secara otomatis. Nilainya harus antara 600, yaitu 600 detik (10 menit), dan 604800, yaitu 604.800 detik (7 hari).

Permintaan perubahan ukuran yang Anda buat tetap dalam status ACCEPTED hingga MIG membuat semua VM GPU yang diminta. Setelah semua VM GPU dibuat dalam grup, status permintaan akan berubah menjadi SUCCEEDED.

Langkah selanjutnya