Saat Anda membuat virtual machine (VM) secara massal di suatu region menggunakan Compute Engine, jika aplikasi Anda tidak dibatasi ke 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. Compute Engine kemudian menyediakan VM menggunakan satu atau beberapa jenis mesin ini, berdasarkan kapasitas dan ketersediaan kuota. Satu permintaan penyisipan massal dapat membuat VM dari beberapa jenis mesin yang berbeda.
Fleksibilitas instance membantu Anda memaksimalkan ketersediaan resource selama lonjakan permintaan, meningkatkan harga-performa, 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
pilihan instance untuk mengganti properti yang sesuai dari properti instance permintaan (instanceProperties). Untuk mengetahui informasi selengkapnya, lihat Penggantian properti instance dalam pilihan instance.
Saat menerima permintaan, Compute Engine akan memvalidasi jenis mesin dan kompatibilitas zonanya terlebih dahulu, dengan mengecualikan entri yang tidak valid. Jika setidaknya ada satu konfigurasi yang valid, operasi akan dilanjutkan.
Compute Engine kemudian 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 reservasi yang tidak digunakan dan panduan Spot VM 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 untuk pilihan instance, Compute Engine akan menggunakan properti yang sesuai dari instanceProperties untuk VM yang dibuat dari pilihan tersebut.
Mengganti properti instance di tingkat pilihan 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 a
platform CPU minimum
(minCpuPlatform) untuk VM yang dibuat Compute Engine dari
jenis mesin dalam pilihan instance. Penggantian ini memungkinkan Anda menggabungkan berbagai jenis mesin dan menerapkan platform CPU minimum secara selektif. Setiap jenis mesin dalam pilihan instance harus mendukung platform CPU minimum yang efektif, baik yang ditentukan dalam pilihan maupun yang diwarisi dari instanceProperties.
Atau, Anda dapat menetapkan kolom minCpuPlatform ke AUTOMATIC. Setelan ini mengganti 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 mendukung satu seri 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 kurang dari 96 vCPU 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:
- Pilihan N2: Tetapkan kolom
minCpuPlatformkeIntel Ice Lake. - Pilihan N4: Biarkan kolom
minCpuPlatformtidak ditetapkan, atau tetapkan keAUTOMATIC.
Anda dapat menetapkan preferensi yang sama untuk kedua jenis mesin dengan menetapkan peringkat yang sama ke kedua pilihan instance.
Penggantian disk
Anda dapat menentukan konfigurasi disk kustom dalam pilihan instance untuk mengganti boot disk atau disk tambahan yang ditentukan di instanceProperties, atau untuk melampirkan disk tambahan. Penggantian ini memungkinkan Anda menggabungkan jenis mesin yang memiliki arsitektur berbeda atau mendukung jenis disk yang berbeda. Penggantian ini juga memungkinkan Anda menentukan image atau disk boot yang diperlukan untuk setiap jenis mesin.
Misalnya, Anda dapat menggunakan pilihan instance terpisah untuk mengganti disk untuk 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 boot 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 boot disk 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 ke 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 pilihan instance:
Untuk mengetahui petunjuk 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 pilihan instance penggantian, 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 instanceProperties dasar 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": [{}]
}
Konfigurasi instanceFlexibilityPolicy berikut dalam permintaan yang sama mengganti konfigurasi instanceProperties dasar dengan menentukan platform CPU minimum dan konfigurasi disk 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 VMn4-standard-4, pilihan ini menggantiboot-diskuntuk menggunakan diskhyperdisk-balanced, bukan diskpd-balanceddasar. - Preferensi kedua (
second-preference): Untuk VMc4a-standard-4(Arm), pilihan ini menggantiboot-diskuntuk menggunakan image boot yang kompatibel dengan Arm (debian-12-arm64) pada diskhyperdisk-balanced, dan melampirkan diskhyperdisk-balanced100 GB tambahan bernamadata-disk. - Preferensi ketiga (
third-preference): Untuk VMn2-standard-4, pilihan ini menetapkanminCpuPlatformkeIntel Ice Lakedan menggantiboot-diskuntuk menggunakan diskpd-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 di region. Compute Engine memilih zona untuk menyediakan 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 VM minimum yang diperlukan (minCount) dalam permintaan bulkInsert, API akan mencoba membuat setidaknya jumlah VM tersebut. Jika Compute Engine tidak dapat menyediakan jumlah VM minimum 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 kemampuan untuk diperoleh, bukan peringkat, sebagai berikut:
- Compute Engine memprioritaskan penyediaan jumlah VM 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 yang lebih tinggi atau enam VM dengan preferensi yang lebih rendah, Compute Engine akan menyediakan enam VM dengan preferensi yang lebih rendah. - Jika Compute Engine dapat menyediakan jumlah VM maksimum yang sama hingga
countdengan 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 pilihan instance dengan preferensi yang lebih tinggi atau preferensi yang lebih rendah, Compute Engine akan menyediakan enam VM dari pilihan dengan preferensi yang lebih tinggi.
Untuk mengetahui informasi selengkapnya, lihat minCount properti di
bulkInsert.
Skenario validasi dan error penyisipan massal
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 berikutnya, kombinasi jenis mesin dan zona tertentu yang dipilih untuk penyediaan ternyata tidak valid, seluruh permintaan penyisipan massal akan gagal dengan 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
bulkInsertregional; Anda tidak dapat menggunakannya dengan permintaan zona. - Fleksibilitas instance tidak mendukung VM Flex-start 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
minCpuPlatformataudisksdalam pilihan instance, batasan berikut juga berlaku:- Saat mengonfigurasi
minCpuPlatformataudisksuntuk pilihan instance, Anda juga harus menyertakan kolommachineTypes. Jika Anda menghapus kolommachineTypes, operasi akan gagal dengan error. - Anda hanya dapat mengganti disk SSD Lokal untuk
jenis mesin yang memungkinkan Anda memilih jumlah disk SSD Lokal.
Anda tidak dapat mengganti disk SSD Lokal untuk
-lssdvarian jenis mesin, yang otomatis melampirkan disk SSD Lokal.
- Saat mengonfigurasi
Langkah berikutnya
- Pelajari cara Membuat VM secara massal dengan fleksibilitas instance.
- Pelajari dimensi fleksibilitas, kasus penggunaan, dan praktik terbaik di Mengoptimalkan penyediaan komputasi.