Membuat VM secara massal dengan fleksibilitas instance

Dokumen ini menjelaskan cara mengonfigurasi fleksibilitas instance saat Anda membuat virtual machine (VM) secara massal. Fleksibilitas instance memungkinkan Anda menentukan beberapa jenis mesin, mengurutkannya berdasarkan preferensi, dan mengganti setelan platform CPU minimum dan disk untuk setiap pilihan sehingga Compute Engine dapat menyediakan VM berdasarkan ketersediaan kapasitas dan kuota di suatu region.

Untuk mengetahui informasi selengkapnya tentang fleksibilitas instance untuk VM yang dibuat secara massal, lihat Tentang fleksibilitas instance untuk VM yang dibuat secara massal.

Sebelum memulai

  • Untuk VM dan resource terkait yang akan Anda buat, pastikan Anda memiliki kuota yang cukup.
  • Jika Anda ingin membuat Spot VM secara massal, lihat ketersediaan resource sebelum membuat VM. Memeriksa ketersediaan resource membantu mengurangi kemungkinan Anda mengalami error ketersediaan resource saat membuat VM. Untuk mendapatkan petunjuk, lihat artikel Melihat ketersediaan resource Spot VM.
  • 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:

    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 .

Peran yang diperlukan

Agar mendapatkan izin yang Anda perlukan untuk membuat VM secara massal, 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 VM secara massal. Untuk melihat izin yang benar-benar diperlukan, perluas bagian Izin yang diperlukan:

Izin yang diperlukan

Izin berikut diperlukan untuk membuat VM secara massal:

  • compute.instances.create di project
  • Untuk menggunakan image kustom guna membuat VM: compute.images.useReadOnly pada image
  • Untuk menggunakan snapshot guna membuat VM: compute.snapshots.useReadOnly pada snapshot
  • Untuk menggunakan template instance guna membuat VM: compute.instanceTemplates.useReadOnly pada template instance
  • Untuk menentukan subnet bagi VM Anda: compute.subnetworks.use di project atau di subnet yang dipilih
  • Untuk menentukan alamat IP statis untuk VM: compute.addresses.use pada project
  • Untuk menetapkan alamat IP eksternal ke VM saat menggunakan jaringan VPC: compute.subnetworks.useExternalIp di project atau di subnet yang dipilih
  • Untuk menetapkan jaringan lama ke VM: compute.networks.use pada project
  • Untuk menetapkan alamat IP eksternal ke VM saat menggunakan jaringan lama: compute.networks.useExternalIp di project
  • Untuk menetapkan metadata instance VM bagi VM: compute.instances.setMetadata di project
  • Untuk menyetel tag untuk VM: compute.instances.setTags di VM
  • Untuk menetapkan label bagi VM: compute.instances.setLabels di VM
  • Untuk menetapkan akun layanan yang akan digunakan VM: compute.instances.setServiceAccount di VM
  • Untuk membuat disk baru untuk VM: compute.disks.create pada project
  • Untuk memasang disk yang ada dalam mode hanya baca atau baca-tulis: compute.disks.use pada disk
  • Untuk memasang disk yang ada dalam mode hanya baca: compute.disks.useReadOnly pada disk

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

Membuat VM dengan beberapa jenis mesin yang memiliki preferensi yang sama

Jika workload Anda dapat beroperasi pada beberapa jenis mesin yang berbeda, Anda dapat menentukan daftar semua jenis mesin yang kompatibel dalam satu pilihan instance. Contoh berikut menunjukkan cara menentukan beberapa jenis mesin dengan preferensi yang sama.

gcloud

Untuk membuat VM secara massal dengan pemilihan instance tunggal, gunakan perintah gcloud compute instances bulk createdengan flag --instance-selection-machine-types.

gcloud compute instances bulk create \
    --name-pattern=NAME_PATTERN \
    --region=REGION \
    --count=COUNT \
    --instance-selection-machine-types=MACHINE_TYPE_1,MACHINE_TYPE_2

Ganti kode berikut:

  • COUNT: jumlah VM yang akan dibuat
  • NAME_PATTERN: pola nama untuk VM
  • MACHINE_TYPE_1, MACHINE_TYPE_2: jenis mesin yang akan digunakan untuk VM
  • REGION: region tempat VM dibuat

Contoh

gcloud compute instances bulk create \
    --name-pattern=test-bulk-# \
    --region=us-central1 \
    --count=10 \
    --instance-selection-machine-types=c3-standard-8,n2-standard-8,c2-standard-8

REST

Di Compute Engine API, buat permintaan POST ke metode regionInstances.bulkInsert. Dalam isi permintaan, sertakan instanceFlexibilityPolicy dengan satu entri instanceSelections yang mencantumkan jenis mesin.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instances/bulkInsert
{
  "count": COUNT,
  "namePattern": "NAME_PATTERN",
  "instanceProperties": {
    "disks": [
      {
        "boot": true,
        "initializeParams": {
          "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE"
        }
      }
    ],
    "networkInterfaces": [{}]
  },
  "instanceFlexibilityPolicy": {
    "instanceSelections": {
      "selection-1": {
        "machineTypes": [
          "MACHINE_TYPE_1",
          "MACHINE_TYPE_2"
        ]
      }
    }
  }
}

Ganti kode berikut:

  • COUNT: jumlah VM yang akan dibuat
  • NAME_PATTERN: pola nama untuk VM
  • MACHINE_TYPE_1, MACHINE_TYPE_2: jenis mesin yang akan digunakan untuk VM
  • IMAGE_PROJECT: project yang berisi image
  • IMAGE: nama image atau kelompok image yang akan digunakan
  • PROJECT_ID: project ID Anda
  • REGION: region tempat VM dibuat

Contoh

POST https://compute.googleapis.com/compute/v1/projects/my-project/regions/us-central1/instances/bulkInsert
{
  "count": 10,
  "namePattern": "test-bulk-#",
  "instanceProperties": {
    "disks": [
      {
        "boot": true,
        "initializeParams": {
          "sourceImage": "projects/debian-cloud/global/images/debian-12"
        }
      }
    ],
    "networkInterfaces": [{}]
  },
  "instanceFlexibilityPolicy": {
    "instanceSelections": {
      "selection-1": {
        "machineTypes": [
          "c3-standard-8",
          "n2-standard-8",
          "c2-standard-8"
        ]
      }
    }
  }
}

Membuat VM dengan beberapa jenis mesin yang diberi peringkat berdasarkan preferensi

Jika Anda ingin Compute Engine memilih jenis mesin dalam urutan tertentu, Anda dapat mengonfigurasi beberapa pilihan instance. Setiap pilihan instance mencakup daftar jenis mesin dan peringkat, yang merupakan bilangan bulat yang menentukan preferensi untuk jenis mesin. Peringkat yang lebih rendah menunjukkan preferensi yang lebih tinggi. Compute Engine mencoba membuat VM menggunakan jenis mesin dengan preferensi yang lebih tinggi (peringkat lebih rendah). Jika jenis mesin tersebut tidak tersedia, Compute Engine akan menggunakan jenis mesin dengan preferensi yang lebih rendah (peringkat lebih tinggi).

Contoh berikut menunjukkan cara menentukan beberapa pilihan instance dengan peringkat.

gcloud

Untuk membuat VM secara massal dengan beberapa pilihan instance, gunakan perintah gcloud compute instances bulk create dan tentukan flag --instance-selection beberapa kali.

gcloud compute instances bulk create \
    --name-pattern=NAME_PATTERN \
    --region=REGION \
    --count=COUNT \
    --instance-selection "name=INSTANCE_SELECTION_1,rank=0,machine-type=MACHINE_TYPE_1,machine-type=MACHINE_TYPE_2" \
    --instance-selection "name=INSTANCE_SELECTION_2,rank=1,machine-type=MACHINE_TYPE_3,machine-type=MACHINE_TYPE_4"

Ganti kode berikut:

  • COUNT: jumlah VM yang akan dibuat
  • NAME_PATTERN: pola nama untuk VM
  • INSTANCE_SELECTION_1: nama untuk pilihan instance pertama
  • INSTANCE_SELECTION_2: nama untuk pilihan instance kedua
  • MACHINE_TYPE_1, MACHINE_TYPE_2: jenis mesin untuk pilihan instance pertama
  • MACHINE_TYPE_3, MACHINE_TYPE_4: jenis mesin untuk pilihan instance kedua
  • REGION: region tempat VM dibuat

Contoh

gcloud compute instances bulk create \
    --name-pattern=test-bulk-# \
    --region=us-central1 \
    --count=10 \
    --instance-selection "name=most-preferred,rank=0,machine-type=c3-standard-16,machine-type=n2-standard-16,machine-type=c2-standard-16" \
    --instance-selection "name=least-preferred,rank=1,machine-type=c3-standard-8,machine-type=n2-standard-8,machine-type=c2-standard-8"

REST

Di Compute Engine API, buat permintaan POST ke metode regionInstances.bulkInsert. Dalam isi permintaan, sertakan instanceFlexibilityPolicy dan tentukan beberapa entri di instanceSelections, yang masing-masing memiliki daftar jenis mesin dan rank.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instances/bulkInsert
{
  "count": COUNT,
  "namePattern": "NAME_PATTERN",
  "instanceProperties": {
    "disks": [
      {
        "boot": true,
        "initializeParams": {
          "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE"
        }
      }
    ],
    "networkInterfaces": [{}]
  },
  "instanceFlexibilityPolicy": {
    "instanceSelections": {
      "INSTANCE_SELECTION_1": {
        "machineTypes": [
          "MACHINE_TYPE_1",
          "MACHINE_TYPE_2"
        ],
        "rank": 1
      },
      "INSTANCE_SELECTION_2": {
        "machineTypes": [
          "MACHINE_TYPE_3",
          "MACHINE_TYPE_4"
        ],
        "rank": 2
      }
    }
  }
}

Ganti kode berikut:

  • COUNT: jumlah VM yang akan dibuat
  • NAME_PATTERN: pola penamaan untuk VM
  • INSTANCE_SELECTION_1: nama untuk pilihan instance pertama
  • INSTANCE_SELECTION_2: nama untuk pilihan instance kedua
  • MACHINE_TYPE_1, MACHINE_TYPE_2: jenis mesin untuk pilihan instance pertama
  • MACHINE_TYPE_3, MACHINE_TYPE_4: jenis mesin untuk pilihan instance kedua
  • IMAGE_PROJECT: project yang berisi image
  • IMAGE: nama image atau kelompok image yang akan digunakan
  • PROJECT_ID: project ID Anda
  • REGION: region tempat VM dibuat

Contoh

POST https://compute.googleapis.com/compute/v1/projects/my-project/regions/us-central1/instances/bulkInsert
{
  "count": 10,
  "namePattern": "test-bulk-#",
  "instanceProperties": {
    "disks": [
      {
        "boot": true,
        "initializeParams": {
          "sourceImage": "projects/debian-cloud/global/images/debian-12"
        }
      }
    ],
    "networkInterfaces": [{}]
  },
  "instanceFlexibilityPolicy": {
    "instanceSelections": {
      "most-preferred": {
        "machineTypes": [
          "c3-standard-16",
          "c2-standard-16"
        ],
        "rank": 1
      },
      "least-preferred": {
        "machineTypes": [
          "n2-standard-16",
          "c3-standard-8",
          "n2-standard-8",
          "c2-standard-8"
        ],
        "rank": 2
      }
    }
  }
}

Membuat VM dengan beberapa jenis mesin, platform CPU minimum, dan penggantian disk

Selain menentukan jenis dan peringkat mesin, Anda dapat mengganti platform CPU minimum dan mengganti atau menambahkan definisi disk di instanceProperties untuk setiap pilihan instance. Misalnya, jika instanceProperties menentukan Persistent Disk dan Anda memilih seri mesin N4, Anda harus mengganti boot disk dengan jenis Google Cloud Hyperdisk yang didukung.

Untuk mengetahui informasi selengkapnya tentang jenis disk yang didukung dan cara Compute Engine menerapkan penggantian, lihat referensi berikut:

Untuk membuat VM secara massal dengan beberapa jenis mesin, platform CPU minimum, dan penggantian disk, pilih salah satu opsi berikut:

gcloud

Untuk membuat VM secara massal dengan beberapa jenis mesin, platform CPU minimum, dan penggantian disk, gunakan perintah gcloud compute instances bulk createdengan flag --instance-flexibility-policy. Untuk mengganti boot disk default dari instanceProperties, sertakan juga flag --boot-disk-device-name dan tentukan deviceName yang sama dalam pemilihan instance:

gcloud compute instances bulk create \
    --name-pattern=NAME_PATTERN \
    --region=REGION \
    --count=COUNT \
    --boot-disk-device-name=BOOT_DISK_DEVICE_NAME \
    --instance-flexibility-policy='{"instanceSelections":
        {"INSTANCE_SELECTION_1":{"rank":RANK_1,"machineTypes":["MACHINE_TYPE_1","MACHINE_TYPE_2"],"minCpuPlatform":"MIN_CPU_PLATFORM_1","disks":[{"deviceName":"BOOT_DISK_DEVICE_NAME_1","boot":true,"initializeParams":{"diskType":"DISK_TYPE_1","diskSizeGb":DISK_SIZE_1,"sourceImage":"projects/IMAGE_PROJECT_1/global/images/IMAGE_1"}}]},
        "INSTANCE_SELECTION_2":{"rank":RANK_2,"machineTypes":["MACHINE_TYPE_3"],"minCpuPlatform":"MIN_CPU_PLATFORM_2","disks":[{"deviceName":"BOOT_DISK_DEVICE_NAME_2","boot":true,"initializeParams":{"diskType":"DISK_TYPE_2","diskSizeGb":DISK_SIZE_2,"sourceImage":"projects/IMAGE_PROJECT_2/global/images/IMAGE_2"}}]}}}'

Atau, untuk mengonfigurasi kebijakan fleksibilitas instance menggunakan file YAML atau JSON, gunakan flag --flags-file, bukan flag --instance-flexibility-policy:

gcloud compute instances bulk create \
    --name-pattern=NAME_PATTERN \
    --region=REGION \
    --count=COUNT \
    --boot-disk-device-name=BOOT_DISK_DEVICE_NAME \
    --flags-file=FILE_NAME.yaml

Ganti kode berikut:

  • COUNT: jumlah VM yang akan dibuat
  • NAME_PATTERN: pola nama untuk VM
  • REGION: region tempat VM dibuat
  • BOOT_DISK_DEVICE_NAME: nama perangkat untuk boot disk default di instanceProperties
  • INSTANCE_SELECTION_1, INSTANCE_SELECTION_2: nama pilihan instance
  • RANK_1, RANK_2: angka opsional yang menunjukkan urutan preferensi Anda untuk setiap pilihan instance; nilai yang lebih rendah menunjukkan preferensi yang lebih tinggi
  • MACHINE_TYPE_1, MACHINE_TYPE_2: jenis mesin untuk pilihan instance pertama
  • MACHINE_TYPE_3: jenis mesin untuk pilihan instance kedua
  • MIN_CPU_PLATFORM_1, MIN_CPU_PLATFORM_2: platform CPU minimum opsional untuk VM di setiap pilihan instance
  • BOOT_DISK_DEVICE_NAME_1, BOOT_DISK_DEVICE_NAME_2: nama perangkat untuk boot disk di setiap pilihan instance; untuk mengganti boot disk default, tentukan nama yang sama dengan BOOT_DISK_DEVICE_NAME
  • DISK_TYPE_1, DISK_TYPE_2: jenis disk untuk penggantian disk, seperti pd-ssd atau hyperdisk-balanced
  • DISK_SIZE_1, DISK_SIZE_2: ukuran disk untuk penggantian disk
  • IMAGE_PROJECT_1, IMAGE_PROJECT_2: project yang berisi image untuk penggantian disk
  • IMAGE_1, IMAGE_2: nama image atau kelompok image untuk penggantian disk
  • FILE_NAME.yaml: nama file YAML atau JSON yang berisi konfigurasi --instance-flexibility-policy

Contoh

Contoh berikut membuat 10 VM menggunakan dua pilihan instance yang menentukan platform CPU minimum, mengganti boot disk default, dan melampirkan disk tambahan:

gcloud compute instances bulk create \
    --name-pattern=test-bulk-# \
    --region=us-central1 \
    --count=10 \
    --boot-disk-device-name=boot-disk \
    --instance-flexibility-policy='{"instanceSelections":
        {"selection-1":{"machineTypes":["n2-standard-8","c2-standard-8"],"minCpuPlatform":"Intel Cascade Lake","disks":[{"type":"PERSISTENT","deviceName":"boot-disk","boot":true,"initializeParams":{"diskType":"pd-ssd","diskSizeGb":50,"sourceImage":"projects/debian-cloud/global/images/family/debian-12"}},{"type":"SCRATCH","initializeParams":{"diskType":"local-ssd"}}]},
        "selection-2":{"machineTypes":["c4a-standard-8"],"disks":[{"type":"PERSISTENT","deviceName":"boot-disk","boot":true,"initializeParams":{"diskType":"hyperdisk-balanced","diskSizeGb":50,"sourceImage":"projects/debian-cloud/global/images/family/debian-12-arm64"}},{"type":"PERSISTENT","deviceName":"data-disk","initializeParams":{"diskType":"hyperdisk-balanced","diskSizeGb":128}}]}}}'

Atau, jika menggunakan tanda --flags-file, Anda dapat menentukan kebijakan fleksibilitas instance yang sama dalam file YAML:

--instance-flexibility-policy:
  instanceSelections:
    selection-1:
      machineTypes:
        - n2-standard-8
        - c2-standard-8
      minCpuPlatform: Intel Cascade Lake
      disks:
        - type: PERSISTENT
          deviceName: boot-disk
          boot: true
          initializeParams:
            diskType: pd-ssd
            diskSizeGb: 50
            sourceImage: projects/debian-cloud/global/images/family/debian-12
        - type: SCRATCH
          initializeParams:
            diskType: local-ssd
    selection-2:
      machineTypes:
        - c4a-standard-8
      disks:
        - type: PERSISTENT
          deviceName: boot-disk
          boot: true
          initializeParams:
            diskType: hyperdisk-balanced
            diskSizeGb: 50
            sourceImage: projects/debian-cloud/global/images/family/debian-12-arm64
        - type: PERSISTENT
          deviceName: data-disk
          initializeParams:
            diskType: hyperdisk-balanced
            diskSizeGb: 128

REST

Di Compute Engine API, buat permintaan POST ke metode regionInstances.bulkInsert. Di setiap entri instanceSelections dari instanceFlexibilityPolicy, sertakan kolom minCpuPlatform untuk mengganti instanceProperties.minCpuPlatform, dan sertakan kolom disks untuk mengganti atau menambahkan ke instanceProperties.disks:

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instances/bulkInsert
{
  "count": COUNT,
  "namePattern": "NAME_PATTERN",
  "instanceProperties": {
    "disks": [
      {
        "boot": true,
        "deviceName": "boot-disk",
        "initializeParams": {
          "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE"
        }
      }
    ],
    "networkInterfaces": [{}]
  },
  "instanceFlexibilityPolicy": {
    "instanceSelections": {
      "INSTANCE_SELECTION_1": {
        "machineTypes": [
          "MACHINE_TYPE_1",
          "MACHINE_TYPE_2"
        ],
        "minCpuPlatform": "MIN_CPU_PLATFORM_1",
        "disks": [
          {
            "type": "PERSISTENT",
            "deviceName": "boot-disk",
            "initializeParams": {
              "diskType": "pd-ssd",
              "diskSizeGb": 50,
              "sourceImage": "projects/IMAGE_PROJECT_1/global/images/IMAGE_1"
            },
            "boot": true
          },
          {
            "type": "SCRATCH",
            "initializeParams": {
              "diskType": "local-ssd"
            }
          }
        ]
      },
      "INSTANCE_SELECTION_2": {
        "machineTypes": [
          "MACHINE_TYPE_3"
        ],
        "minCpuPlatform": "MIN_CPU_PLATFORM_2",
        "disks": [
          {
            "type": "PERSISTENT",
            "deviceName": "boot-disk",
            "initializeParams": {
              "diskType": "hyperdisk-balanced",
              "diskSizeGb": 50,
              "sourceImage": "projects/IMAGE_PROJECT_2/global/images/IMAGE_2"
            },
            "boot": true
          },
          {
            "type": "PERSISTENT",
            "deviceName": "data-disk",
            "initializeParams": {
              "diskType": "hyperdisk-balanced",
              "diskSizeGb": 128,
              "sourceImage": "projects/IMAGE_PROJECT_3/global/images/IMAGE_3"
            }
          }
        ]
      }
    }
  }
}

Ganti kode berikut:

  • COUNT: jumlah VM yang akan dibuat
  • NAME_PATTERN: pola penamaan untuk VM
  • INSTANCE_SELECTION_1: nama untuk pilihan instance pertama
  • INSTANCE_SELECTION_2: nama untuk pilihan instance kedua
  • MACHINE_TYPE_1, MACHINE_TYPE_2: jenis mesin untuk pilihan instance pertama
  • MACHINE_TYPE_3: jenis mesin untuk pilihan instance kedua
  • MIN_CPU_PLATFORM_1, MIN_CPU_PLATFORM_2: platform CPU minimum opsional untuk VM di setiap pilihan instance
  • IMAGE_PROJECT: project yang berisi image booting default di instanceProperties
  • IMAGE: nama image boot default atau kelompok image di instanceProperties
  • IMAGE_PROJECT_1, IMAGE_PROJECT_2, IMAGE_PROJECT_3: project yang berisi image untuk penggantian disk
  • IMAGE_1, IMAGE_2, IMAGE_3: nama image untuk penggantian disk
  • PROJECT_ID: project ID Anda
  • REGION: region tempat VM dibuat

Contoh

Contoh berikut membuat 10 VM menggunakan dua pilihan instance yang menentukan platform CPU minimum, mengganti boot disk default, dan melampirkan disk tambahan:

POST https://compute.googleapis.com/compute/v1/projects/my-project/regions/us-central1/instances/bulkInsert
{
  "count": 10,
  "namePattern": "test-bulk-#",
  "instanceProperties": {
    "disks": [
      {
        "boot": true,
        "deviceName": "boot-disk",
        "initializeParams": {
          "sourceImage": "projects/debian-cloud/global/images/family/debian-12"
        }
      }
    ],
    "networkInterfaces": [{}]
  },
  "instanceFlexibilityPolicy": {
    "instanceSelections": {
      "selection-1": {
        "machineTypes": [
          "n2-standard-8",
          "c2-standard-8"
        ],
        "minCpuPlatform": "Intel Cascade Lake",
        "disks": [
          {
            "type": "PERSISTENT",
            "deviceName": "boot-disk",
            "initializeParams": {
              "diskType": "pd-ssd",
              "diskSizeGb": 50,
              "sourceImage": "projects/debian-cloud/global/images/family/debian-12"
            },
            "boot": true
          },
          {
            "type": "SCRATCH",
            "initializeParams": {
              "diskType": "local-ssd"
            }
          }
        ]
      },
      "selection-2": {
        "machineTypes": [
          "c4a-standard-8"
        ],
        "disks": [
          {
            "type": "PERSISTENT",
            "deviceName": "boot-disk",
            "initializeParams": {
              "diskType": "hyperdisk-balanced",
              "diskSizeGb": 50,
              "sourceImage": "projects/debian-cloud/global/images/family/debian-12-arm64"
            },
            "boot": true
          },
          {
            "type": "PERSISTENT",
            "deviceName": "data-disk",
            "initializeParams": {
              "diskType": "hyperdisk-balanced",
              "diskSizeGb": 128
            }
          }
        ]
      }
    }
  }
}