Tentang fleksibilitas instance untuk VM yang dibuat secara massal

Saat membuat virtual machine (VM) secara massal di suatu region menggunakan Compute Engine, jika aplikasi Anda tidak dibatasi untuk satu jenis mesin, Anda dapat meningkatkan rasio keberhasilan penyediaan jumlah VM yang diperlukan dengan mengonfigurasi fleksibilitas instance. Fleksibilitas instance memungkinkan Anda menentukan satu atau beberapa jenis mesin yang sesuai untuk workload Anda. Kemudian, Compute Engine menyediakan VM menggunakan salah satu jenis mesin ini, berdasarkan kapasitas dan ketersediaan kuota.

Fleksibilitas instance membantu Anda memaksimalkan ketersediaan resource selama lonjakan permintaan, meningkatkan performa harga, dan mengadopsi hardware terbaru dengan aman. Untuk mengetahui informasi selengkapnya, lihat Mengoptimalkan penyediaan komputasi.

Dokumen ini menjelaskan cara kerja fleksibilitas instance untuk VM yang dibuat secara massal, termasuk penggantian properti instance untuk platform CPU minimum dan disk, serta batasan. Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi fleksibilitas instance, lihat Membuat VM secara massal dengan fleksibilitas instance.

Menggunakan fleksibilitas instance

Untuk mengonfigurasi fleksibilitas instance, Anda mencantumkan jenis mesin yang sesuai dengan menentukan satu atau beberapa pilihan instance dalam permintaan penyisipan massal regional. Misalnya, dalam permintaan REST, Anda menyertakan objek instanceFlexibilityPolicy, yang di dalamnya Anda menentukan satu atau beberapa objek instanceSelections, yang masing-masing berisi daftar jenis mesin.

Anda juga dapat menentukan jenis mesin yang berjalan di platform CPU yang berbeda, memiliki arsitektur yang berbeda (seperti x86 dan Arm), atau memiliki persyaratan disk yang berbeda. Untuk menggunakan jenis mesin dengan persyaratan hardware yang berbeda, gunakan pemilihan instance untuk mengganti properti yang sesuai dari properti instance permintaan (instanceProperties). Untuk mengetahui informasi selengkapnya, lihat Penggantian properti instance dalam pemilihan instance.

Saat menerima permintaan, Compute Engine akan memvalidasi jenis mesin dan kompatibilitas zonanya terlebih dahulu, dengan mengecualikan entri yang tidak valid. Jika ada minimal satu konfigurasi yang valid, operasi akan dilanjutkan.

Kemudian, Compute Engine akan mencoba menyediakan VM berdasarkan hardware, kuota, dan reservasi yang tersedia. Jika Anda mengonfigurasi peringkat untuk pilihan instance, pilihan dengan peringkat yang lebih rendah akan diprioritaskan. Dalam setiap peringkat, Compute Engine mempertimbangkan panduan Spot VM dan reservasi yang tidak digunakan untuk memilih jenis mesin dengan probabilitas preemption yang lebih rendah.

Penggantian properti instance dalam pilihan instance

Saat membuat pilihan instance, Anda dapat menentukan properti instance tambahan, seperti platform CPU minimum (minCpuPlatform) dan disk (disks), untuk mengganti atau menambahkan properti yang Anda tentukan dalam properti instance permintaan (instanceProperties). Saat Compute Engine memilih jenis mesin dari pilihan instance untuk membuat VM, Compute Engine akan menggunakan properti instance yang Anda tentukan dalam pilihan tersebut. Jika Anda tidak menentukan penggantian apa pun untuk pemilihan instance, Compute Engine akan menggunakan properti yang sesuai dari instanceProperties untuk VM yang dibuat dari pemilihan tersebut.

Mengganti properti instance di tingkat pemilihan instance memberi Anda lebih banyak kontrol dan fleksibilitas saat menggunakan konfigurasi hardware yang berbeda dalam satu permintaan penyisipan massal.

Penggantian platform CPU minimum

Anda dapat menentukan platform CPU minimum (minCpuPlatform) untuk VM yang dibuat Compute Engine dari jenis mesin dalam pemilihan instance. Penggantian ini memungkinkan Anda menggabungkan berbagai jenis mesin dan menerapkan platform CPU minimum secara selektif. Setiap jenis mesin dalam pemilihan instance harus mendukung platform CPU minimum yang efektif, baik yang ditentukan dalam pemilihan atau diwarisi dari instanceProperties.

Atau, Anda dapat menetapkan kolom minCpuPlatform ke AUTOMATIC. Setelan ini menggantikan nilai minCpuPlatform di instanceProperties dan memungkinkan Compute Engine menggunakan platform CPU yang kompatibel untuk jenis mesin dalam pilihan instance.

Untuk menggabungkan jenis mesin yang hanya satu serinya mendukung platform CPU tertentu, tempatkan jenis mesin tersebut dalam pilihan instance terpisah. Misalnya, jenis mesin N4 mendukung platform Intel Emerald Rapids, sedangkan jenis mesin N2 dengan vCPU kurang dari 96 mendukung Intel Ice Lake dan Intel Cascade Lake. Untuk menggabungkan N4 dan N2 dalam permintaan penyisipan massal dan mewajibkan N2 berjalan di Intel Ice Lake, konfigurasikan dua pilihan instance sebagai berikut:

  • Pemilihan N2: Tetapkan kolom minCpuPlatform ke Intel Ice Lake.
  • Pilihan N4: Biarkan kolom minCpuPlatform tidak disetel, atau tetapkan ke AUTOMATIC.

Anda dapat menetapkan preferensi yang sama untuk kedua jenis mesin dengan menetapkan peringkat yang sama untuk kedua pilihan instance.

Penggantian disk

Anda dapat menentukan konfigurasi disk kustom dalam pemilihan instance untuk mengganti boot disk atau disk tambahan yang ditentukan dalam instanceProperties, atau untuk melampirkan disk tambahan. Penggantian ini memungkinkan Anda menggabungkan jenis mesin yang memiliki arsitektur berbeda atau mendukung jenis disk yang berbeda. Anda juga dapat menentukan image atau disk boot yang diperlukan untuk setiap jenis mesin.

Misalnya, Anda dapat menggunakan pilihan instance terpisah untuk mengganti disk dengan persyaratan yang berbeda:

  • Arsitektur yang berbeda: Anda dapat menggabungkan jenis mesin C4 (arsitektur x86) dan C4A (arsitektur Arm). Karena jenis mesin x86 dan Arm memerlukan image booting yang berbeda, Anda dapat mengganti boot disk untuk menentukan image yang kompatibel untuk setiap arsitektur.
  • Jenis disk yang berbeda: Anda dapat menggabungkan jenis mesin N2 dan N4. Karena N2 hanya mendukung Persistent Disk untuk disk booting dan N4 hanya mendukung Google Cloud Hyperdisk, Anda dapat mengganti konfigurasi disk untuk menentukan jenis disk yang didukung untuk setiap seri mesin.

Dalam kedua skenario tersebut, Anda dapat menetapkan preferensi yang sama untuk kedua jenis mesin dengan menetapkan peringkat yang sama pada pilihan instance.

Jika disk dalam pilihan instance memiliki deviceName yang cocok dengan disk di instanceProperties, Compute Engine akan mengganti konfigurasi disk tersebut. Jika deviceName tidak cocok dengan disk apa pun di instanceProperties, Compute Engine akan melampirkannya sebagai disk tambahan. Anda harus memastikan bahwa konfigurasi disk yang efektif kompatibel dengan semua jenis mesin dalam pilihan instance.

Diagram berikut menunjukkan cara Compute Engine menggabungkan konfigurasi disk dari instanceProperties dan pemilihan instance:

Diagram yang menunjukkan bahwa disk dalam pilihan instance menggantikan disk dengan nama perangkat yang cocok dalam properti instance dan dilampirkan sebagai disk tambahan jika nama perangkat tidak cocok.

Untuk mengetahui petunjuk tentang cara menentukan platform CPU minimum dan penggantian disk saat Anda membuat VM secara massal, lihat Membuat VM dengan beberapa jenis mesin, platform CPU minimum, dan penggantian disk.

Untuk mengetahui informasi selengkapnya tentang batasan saat Anda menggunakan penggantian pemilihan instance, lihat bagian Batasan dalam dokumen ini.

Contoh: Penggantian platform CPU minimum dan disk

Anda dapat menggunakan penggantian dalam kebijakan fleksibilitas instance untuk menyediakan VM di seluruh seri mesin yang memerlukan platform CPU, image boot, atau jenis disk yang berbeda.

Pertimbangkan permintaan penyisipan massal dengan konfigurasi dasar instanceProperties berikut yang menentukan boot disk pd-balanced default:

"instanceProperties": {
  "disks": [
    {
      "autoDelete": true,
      "deviceName": "boot-disk",
      "boot": true,
      "initializeParams": {
        "sourceImage": "projects/debian-cloud/global/images/family/debian-12",
        "diskSizeGb": "10",
        "diskType": "pd-balanced"
      }
    }
  ],
  "networkInterfaces": [{}]
}

instanceFlexibilityPolicy konfigurasi berikut dalam permintaan yang sama menggantikan konfigurasi instanceProperties dasar dengan menentukan konfigurasi disk dan platform CPU minimum di tiga pilihan instance:

"instanceFlexibilityPolicy": {
  "instanceSelections": {
    "first-preference": {
      "rank": 1,
      "machineTypes": ["n4-standard-4"],
      "disks": [
        {
          "autoDelete": true,
          "deviceName": "boot-disk",
          "boot": true,
          "initializeParams": {
            "sourceImage": "projects/debian-cloud/global/images/family/debian-12",
            "diskSizeGb": "10",
            "diskType": "hyperdisk-balanced"
          }
        }
      ]
    },
    "second-preference": {
      "rank": 2,
      "machineTypes": ["c4a-standard-4"],
      "disks": [
        {
          "autoDelete": true,
          "deviceName": "boot-disk",
          "boot": true,
          "initializeParams": {
            "sourceImage": "projects/debian-cloud/global/images/family/debian-12-arm64",
            "diskSizeGb": "10",
            "diskType": "hyperdisk-balanced"
          }
        },
        {
          "autoDelete": true,
          "deviceName": "data-disk",
          "boot": false,
          "initializeParams": {
            "diskSizeGb": "100",
            "diskType": "hyperdisk-balanced"
          }
        }
      ]
    },
    "third-preference": {
      "rank": 3,
      "machineTypes": ["n2-standard-4"],
      "minCpuPlatform": "Intel Ice Lake",
      "disks": [
        {
          "autoDelete": true,
          "deviceName": "boot-disk",
          "boot": true,
          "initializeParams": {
            "sourceImage": "projects/debian-cloud/global/images/family/debian-12",
            "diskSizeGb": "10",
            "diskType": "pd-ssd"
          }
        }
      ]
    }
  }
}

Dalam contoh ini, Compute Engine menerapkan penggantian berikut bergantung pada pilihan instance yang digunakan untuk membuat VM:

  • Preferensi pertama (first-preference): Untuk VM n4-standard-4, pilihan ini menggantikan boot-disk untuk menggunakan disk hyperdisk-balanced, bukan disk pd-balanced dasar.
  • Preferensi kedua (second-preference): Untuk VM c4a-standard-4 (Arm), pilihan ini menggantikan boot-disk untuk menggunakan image booting yang kompatibel dengan Arm (debian-12-arm64) pada disk hyperdisk-balanced, dan melampirkan disk hyperdisk-balanced 100 GB tambahan bernama data-disk.
  • Preferensi ketiga (third-preference): Untuk VM n2-standard-4, pilihan ini menetapkan minCpuPlatform ke Intel Ice Lake dan menggantikan boot-disk untuk menggunakan disk pd-ssd.

Pemilihan zona saat bentuk distribusi target ditentukan

Saat menggunakan fleksibilitas instance dengan permintaan bulkInsert regional, Anda dapat menentukan bentuk distribusi target untuk mengontrol cara VM didistribusikan di seluruh zona dalam region. Compute Engine memilih zona untuk penyediaan VM berdasarkan bentuk ini, sebagai berikut:

  • ANY_SINGLE_ZONE: Compute Engine memilih satu zona yang memiliki kapasitas paling besar untuk jenis mesin dengan preferensi yang lebih tinggi.
  • BALANCED: Compute Engine mendistribusikan VM secara merata di seluruh zona dengan resource yang tersedia. Dalam setiap zona, Compute Engine memprioritaskan jenis mesin dengan preferensi yang lebih tinggi.
  • ANY: Compute Engine memilih zona dengan resource yang tersedia. Jika peringkat dikonfigurasi, Compute Engine akan memprioritaskan zona untuk menyediakan VM dengan jenis mesin yang memiliki preferensi lebih tinggi.

Untuk mengetahui informasi selengkapnya, lihat Membuat VM secara massal di suatu region.

Penyediaan VM minimum dan fleksibilitas instance

Jika Anda menentukan nilai untuk jumlah minimum VM yang diperlukan (minCount) dalam permintaan bulkInsert, API akan mencoba membuat setidaknya sebanyak itu VM. Jika Compute Engine tidak dapat menyediakan jumlah minimum VM yang diperlukan (minCount), seluruh operasi akan gagal, dan Compute Engine tidak akan membuat VM apa pun. Saat Anda menggunakan minCount dengan fleksibilitas instance, Compute Engine memprioritaskan penyediaan VM berdasarkan ketersediaan daripada peringkat, sebagai berikut:

  • Compute Engine memprioritaskan penyediaan VM dalam jumlah maksimum hingga count, meskipun ini berarti menggunakan mesin dengan preferensi yang lebih rendah. Misalnya, jika permintaan Anda menentukan minimum satu VM yang diperlukan (minCount=1) dan maksimum 10 VM (count=10), dan jika Compute Engine memiliki kapasitas untuk menyediakan satu VM dengan preferensi lebih tinggi atau enam VM dengan preferensi lebih rendah, maka Compute Engine akan menyediakan enam VM dengan preferensi lebih rendah.
  • Jika Compute Engine dapat menyediakan jumlah maksimum VM yang sama hingga count dengan menggunakan pilihan instance yang berbeda, Compute Engine akan memprioritaskan pilihan dengan preferensi yang lebih tinggi. Misalnya, jika permintaan Anda menentukan minimum satu VM yang diperlukan (minCount=1) dan maksimum 10 VM (count=10), dan jika Compute Engine dapat menyediakan enam VM dengan menggunakan pemilihan instance dengan preferensi yang lebih tinggi atau lebih rendah, maka Compute Engine akan menyediakan enam VM dari pilihan dengan preferensi yang lebih tinggi.

Untuk mengetahui informasi selengkapnya, lihat properti minCount di bulkInsert.

Validasi penyisipan massal dan skenario error

Compute Engine melakukan validasi awal jenis mesin dan kompatibilitas zonanya, dengan mengecualikan entri yang tidak valid dari pertimbangan. Jika setidaknya satu konfigurasi yang valid tetap ada setelah pemeriksaan awal ini, Compute Engine akan melanjutkan pembuatan VM.

Namun, beberapa validasi konfigurasi Anda hanya dapat terjadi setelah Compute Engine memilih zona dan jenis mesin yang akan digunakan untuk penyediaan, berdasarkan kebijakan fleksibilitas instance dan kapasitas yang tersedia. Jika, selama tahap validasi selanjutnya ini, kombinasi jenis mesin dan zona tertentu yang dipilih untuk penyediaan ternyata tidak valid, seluruh permintaan penyisipan massal akan gagal karena error validasi. Kegagalan ini dapat terjadi meskipun konfigurasi lain dalam instanceFlexibilityPolicy awalnya valid.

Batasan

Batasan berikut berlaku saat Anda menggunakan fleksibilitas instance untuk pembuatan VM massal:

  • Anda hanya dapat menentukan fleksibilitas instance untuk permintaan bulkInsert regional; Anda tidak dapat menggunakannya dengan permintaan zona.
  • Fleksibilitas instance tidak mendukung VM mulai fleksibel dan pemesanan untuk masa mendatang.
  • Anda tidak dapat menggunakan fleksibilitas instance dengan fitur AI Hypercomputer, atau dengan GPU A3 Ultra, A4, dan yang lebih baru.
  • Anda dapat menentukan maksimum 10 jenis mesin yang berbeda di maksimum 10 pilihan instance yang berbeda.
  • Saat Anda mengganti minCpuPlatform atau disks dalam pemilihan instance, batasan berikut juga berlaku:

Langkah berikutnya