In diesem Dokument wird beschrieben, wie Sie die Instanzflexibilität konfigurieren, wenn Sie VMs im Bulk erstellen. Mit der Instanzflexibilität können Sie mehrere Maschinentypen angeben, sie nach Priorität einstufen und die Einstellungen für die Mindest-CPU-Plattform und die Festplatte für jede Auswahl überschreiben. So kann Compute Engine VMs basierend auf der Kapazität und der Verfügbarkeit von Kontingenten in einer Region bereitstellen.
Weitere Informationen zur Instanzflexibilität für VMs, die im Bulk erstellt werden, finden Sie unter Informationen zur Instanzflexibilität für VMs, die im Bulk erstellt werden.
Hinweis
- Prüfen Sie für VMs und zugehörige Ressourcen, die Sie erstellen möchten, ob Ihr Kontingent ausreicht.
- Wenn Sie Spot-VMs im Bulk erstellen möchten, sollten Sie die Verfügbarkeit von Ressourcen prüfen, bevor Sie VMs erstellen. Wenn Sie die Verfügbarkeit von Ressourcen prüfen, verringern Sie die Wahrscheinlichkeit, dass beim Erstellen von VMs Fehler bei der Ressourcenverfügbarkeit auftreten. Eine Anleitung finden Sie unter Ressourcenverfügbarkeit von Spot-VMs ansehen.
-
Richten Sie die Authentifizierung ein, falls Sie dies noch nicht getan haben.
Bei der Authentifizierung wird Ihre Identität für den Zugriff auf Cloud de Confiance by S3NS Dienste und APIs überprüft. Zur Ausführung von Code oder Beispielen aus einer lokalen Entwicklungsumgebung können Sie sich so bei Compute Engine authentifizieren:
Wählen Sie den Tab für die geplante Verwendung der Beispiele auf dieser Seite aus:
gcloud
-
Installieren Sie die Google Cloud CLI und melden Sie sich dann mit Ihrer föderierten Identität in der gcloud CLI an. Nach der Anmeldung initialisieren Sie die Google Cloud CLI mit dem folgenden Befehl:
gcloud init
-
- Legen Sie eine Standardregion und -zone fest.
REST
Wenn Sie die REST API-Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung verwenden möchten, verwenden Sie die Anmeldedaten, die Sie der gcloud CLI bereitstellen.
Installieren Sie die Google Cloud CLI und melden Sie sich dann mit Ihrer föderierten Identität in der gcloud CLI an.
Weitere Informationen finden Sie in der Dokumentation zur Cloud de Confiance -Authentifizierung unter Für die Verwendung von REST authentifizieren.
Erforderliche Rollen
Um die erforderlichen Berechtigungen zum Erstellen mehrerer VMs zu erhalten, bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Compute Instance Admin (v1) (roles/compute.instanceAdmin.v1) für das Projekt zuzuweisen.
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Diese vordefinierte Rolle enthält die Berechtigungen, die zum Erstellen von VMs im Bulk erforderlich sind. Maximieren Sie den Abschnitt Erforderliche Berechtigungen, um die genau erforderlichen Berechtigungen anzuzeigen:
Erforderliche Berechtigungen
Die folgenden Berechtigungen sind erforderlich, um VMs im Bulk zu erstellen:
compute.instances.createfür das Projekt-
Zum Erstellen der VM mit einem benutzerdefinierten Image:
compute.images.useReadOnlyfür das Image -
Zum Erstellen der VM mit einem Snapshot:
compute.snapshots.useReadOnlyfür den Snapshot -
Zum Erstellen der VM mit einer Instanzvorlage:
compute.instanceTemplates.useReadOnlyfür die Instanzvorlage -
Zum Angeben eines Subnetzes für Ihre VM:
compute.subnetworks.usefür das Projekt oder für das ausgewählte Subnetz -
Zum Festlegen einer statischen IP-Adresse für die VM:
compute.addresses.usefür das Projekt -
Zum Zuweisen einer externen IP-Adresse zur VM, wenn Sie ein VPC-Netzwerk verwenden:
compute.subnetworks.useExternalIpfür das Projekt oder für das ausgewählte Subnetz -
Zum Zuweisen eines Legacy-Netzwerks zur VM:
compute.networks.usefür das Projekt -
Zum Zuweisen einer externen IP-Adresse zur VM, wenn Sie ein Legacy-Netzwerk verwenden:
compute.networks.useExternalIpfür das Projekt -
Zum Festlegen von Metadaten der VM-Instanz für die VM:
compute.instances.setMetadatafür das Projekt -
Zum Festlegen von Tags für die VM:
compute.instances.setTagsfür die VM -
Zum Festlegen von Labels für die VM:
compute.instances.setLabelsfür die VM -
Zum Festlegen eines Dienstkontos für die VM:
compute.instances.setServiceAccountfür die VM -
Zum Erstellen eines neuen Laufwerks für die VM:
compute.disks.createfür das Projekt -
Zum Anhängen eines vorhandenen Laufwerks im Lese- oder Lese-/Schreibmodus:
compute.disks.usefür das Laufwerk -
Zum Anhängen eines vorhandenen Laufwerks im Lesemodus:
compute.disks.useReadOnlyfür das Laufwerk
Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.
VMs mit mehreren Maschinentypen mit gleicher Präferenz erstellen
Wenn Ihre Arbeitslast auf mehreren verschiedenen Maschinentypen ausgeführt werden kann, können Sie in einer einzelnen Instanzauswahl eine Liste aller kompatiblen Maschinentypen angeben. Die folgenden Beispiele zeigen, wie Sie mehrere Maschinentypen mit gleicher Priorität angeben können.
gcloud
Wenn Sie VMs im Bulk mit einer einzelnen Instanzauswahl erstellen möchten, verwenden Sie den Befehl gcloud compute instances bulk create mit dem 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
Ersetzen Sie Folgendes:
COUNT: die Anzahl der zu erstellenden VMs.NAME_PATTERN: das Namensmuster für die VMsMACHINE_TYPE_1,MACHINE_TYPE_2: die für die VMs zu verwendenden MaschinentypenREGION: die Region, in der die VMs erstellt werden sollen
Beispiel
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
Stellen Sie in der Compute Engine API eine POST-Anfrage an die Methode regionInstances.bulkInsert.
Geben Sie im Anfragetext instanceFlexibilityPolicy mit einem instanceSelections-Eintrag an, in dem die Maschinentypen aufgeführt sind.
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"
]
}
}
}
}
Ersetzen Sie Folgendes:
COUNT: die Anzahl der zu erstellenden VMs.NAME_PATTERN: das Namensmuster für die VMsMACHINE_TYPE_1,MACHINE_TYPE_2: die für die VMs zu verwendenden MaschinentypenIMAGE_PROJECT: Das Projekt, das das Image enthält.IMAGE: Der Name des zu verwendenden Images oder der Image-Familie.PROJECT_ID: Ihre Projekt-ID.REGION: die Region, in der die VMs erstellt werden sollen
Beispiel
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"
]
}
}
}
}
VMs mit mehreren Maschinentypen erstellen, die nach Präferenz sortiert sind
Wenn Compute Engine Maschinentypen in einer bestimmten Reihenfolge auswählen soll, können Sie mehrere Instanzauswahlen konfigurieren. Jede Instanzauswahl enthält eine Liste von Maschinentypen und einen Rang. Der Rang ist eine Ganzzahl, die die Priorität für die Maschinentypen definiert. Ein niedrigerer Rang bedeutet eine höhere Präferenz. Compute Engine versucht, VMs mit Maschinentypen mit einer höheren Priorität (niedrigerer Rang) zu erstellen. Wenn diese Maschinentypen nicht verfügbar sind, verwendet Compute Engine Maschinentypen mit einer niedrigeren Priorität (höherer Rang).
Die folgenden Beispiele zeigen, wie Sie mehrere Instanzauswahlen mit Rängen angeben.
gcloud
Wenn Sie VMs im Bulk mit mehreren Instanzauswahlen erstellen möchten, verwenden Sie den Befehl gcloud compute instances bulk create und geben Sie das Flag --instance-selection mehrmals an.
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"
Ersetzen Sie Folgendes:
COUNT: die Anzahl der zu erstellenden VMs.NAME_PATTERN: das Namensmuster für die VMsINSTANCE_SELECTION_1: Der Name für die erste Instanzauswahl.INSTANCE_SELECTION_2: der Name für die Auswahl der zweiten InstanzMACHINE_TYPE_1,MACHINE_TYPE_2: die Maschinentypen für die erste InstanzauswahlMACHINE_TYPE_3,MACHINE_TYPE_4: die Maschinentypen für die zweite InstanzauswahlREGION: die Region, in der die VMs erstellt werden sollen
Beispiel
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
Stellen Sie in der Compute Engine API eine POST-Anfrage an die Methode regionInstances.bulkInsert.
Geben Sie im Anfragetext instanceFlexibilityPolicy an und legen Sie mehrere Einträge in instanceSelections fest, jeweils mit einer Liste von Maschinentypen und einem 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
}
}
}
}
Ersetzen Sie Folgendes:
COUNT: die Anzahl der zu erstellenden VMs.NAME_PATTERN: das Namensmuster für die VMsINSTANCE_SELECTION_1: Der Name für die erste Instanzauswahl.INSTANCE_SELECTION_2: der Name für die Auswahl der zweiten InstanzMACHINE_TYPE_1,MACHINE_TYPE_2: die Maschinentypen für die erste InstanzauswahlMACHINE_TYPE_3,MACHINE_TYPE_4: die Maschinentypen für die zweite InstanzauswahlIMAGE_PROJECT: Das Projekt, das das Image enthält.IMAGE: Der Name des zu verwendenden Images oder der Image-Familie.PROJECT_ID: Ihre Projekt-ID.REGION: die Region, in der die VMs erstellt werden sollen
Beispiel
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
}
}
}
}
VMs mit mehreren Maschinentypen, Mindest-CPU-Plattform und Laufwerküberschreibungen erstellen
Zusätzlich zur Angabe von Maschinentypen und Rängen können Sie die Mindest-CPU-Plattform überschreiben und die Laufwerkdefinitionen in instanceProperties für jede Instanzauswahl überschreiben oder ergänzen. Wenn in instanceProperties beispielsweise ein Persistent Disk angegeben ist und Sie eine N4-Maschinenserie auswählen, müssen Sie das Bootlaufwerk mit einem unterstützten Google Cloud Hyperdisk-Typ überschreiben.
Weitere Informationen zu unterstützten Laufwerkstypen und dazu, wie Compute Engine Überschreibungen anwendet, finden Sie in den folgenden Ressourcen:
- Unterstützung von Maschinenserien für Persistent Disks
- Unterstützung von Maschinenserien für Hyperdisk
- Überschreibungen von Instanzattributen in Instanzauswahlen
Wählen Sie eine der folgenden Optionen aus, um VMs im Bulk mit mehreren Maschinentypen, Mindest-CPU-Plattformen und Festplattenüberschreibungen zu erstellen:
gcloud
Wenn Sie VMs im Bulk mit mehreren Maschinentypen, einer kleinstmöglichen CPU-Plattform und Überschreibungen für Laufwerke erstellen möchten, verwenden Sie den Befehl gcloud compute instances bulk create mit dem Flag --instance-flexibility-policy. Wenn Sie das Standard-Bootlaufwerk aus instanceProperties überschreiben möchten, fügen Sie auch das Flag --boot-disk-device-name ein und geben Sie bei der Instanzauswahl dieselbe deviceName an:
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"}}]}}}'
Alternativ können Sie die Richtlinie für die Instanzflexibilität mit einer YAML- oder JSON-Datei konfigurieren. Verwenden Sie dazu das --flags-file-Flag anstelle des --instance-flexibility-policy-Flags:
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
Ersetzen Sie Folgendes:
COUNT: die Anzahl der zu erstellenden VMs.NAME_PATTERN: das Namensmuster für die VMsREGION: die Region, in der die VMs erstellt werden sollenBOOT_DISK_DEVICE_NAME: der Gerätename für das Standard-Bootlaufwerk ininstancePropertiesINSTANCE_SELECTION_1,INSTANCE_SELECTION_2: die Namen der InstanzauswahlenRANK_1,RANK_2: optionale Zahlen, die Ihre bevorzugte Reihenfolge für die Auswahl der einzelnen Instanzen darstellen. Ein niedrigerer Wert bedeutet eine höhere Präferenz.MACHINE_TYPE_1,MACHINE_TYPE_2: die Maschinentypen für die erste InstanzauswahlMACHINE_TYPE_3: der Maschinentyp für die zweite InstanzauswahlMIN_CPU_PLATFORM_1,MIN_CPU_PLATFORM_2: optionale Mindest-CPU-Plattformen für die VMs in jeder InstanzauswahlBOOT_DISK_DEVICE_NAME_1,BOOT_DISK_DEVICE_NAME_2: die Gerätenamen für die Bootlaufwerke in jeder Instanzauswahl. Wenn Sie das Standard-Bootlaufwerk überschreiben möchten, geben Sie denselben Namen wieBOOT_DISK_DEVICE_NAMEan.DISK_TYPE_1,DISK_TYPE_2: die Laufwerkstypen für die Laufwerküberschreibungen, z. B.pd-ssdoderhyperdisk-balancedDISK_SIZE_1,DISK_SIZE_2: Die Laufwerkgrößen für die Laufwerküberschreibungen.IMAGE_PROJECT_1,IMAGE_PROJECT_2: die Projekte, die die Images für die Laufwerküberschreibungen enthaltenIMAGE_1,IMAGE_2: Die Namen der Images oder Image-Familien für die Laufwerküberschreibungen.FILE_NAME.yaml: Der Name der YAML- oder JSON-Datei, die die--instance-flexibility-policy-Konfiguration enthält.
Beispiel
Im folgenden Beispiel werden 10 VMs mit zwei Instanzauswahlen erstellt, die eine Mindest-CPU-Plattform angeben, das Standard-Bootlaufwerk überschreiben und zusätzliche Laufwerke anhängen:
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}}]}}}'
Alternativ können Sie mit dem Flag --flags-file dieselbe Richtlinie für die Instanzflexibilität in einer YAML-Datei angeben:
--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
Stellen Sie in der Compute Engine API eine POST-Anfrage an die Methode regionInstances.bulkInsert.
Fügen Sie in jeden instanceSelections-Eintrag von instanceFlexibilityPolicy das Feld minCpuPlatform ein, um instanceProperties.minCpuPlatform zu überschreiben, und das Feld disks, um instanceProperties.disks zu überschreiben oder zu ergänzen:
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"
}
}
]
}
}
}
}
Ersetzen Sie Folgendes:
COUNT: die Anzahl der zu erstellenden VMs.NAME_PATTERN: das Namensmuster für die VMsINSTANCE_SELECTION_1: Der Name für die erste Instanzauswahl.INSTANCE_SELECTION_2: der Name für die Auswahl der zweiten InstanzMACHINE_TYPE_1,MACHINE_TYPE_2: die Maschinentypen für die erste InstanzauswahlMACHINE_TYPE_3: der Maschinentyp für die zweite InstanzauswahlMIN_CPU_PLATFORM_1,MIN_CPU_PLATFORM_2: optionale Mindest-CPU-Plattformen für die VMs in jeder InstanzauswahlIMAGE_PROJECT: Das Projekt, das das Standard-Boot-Image ininstancePropertiesenthält.IMAGE: Der Name des Standard-Boot-Images oder der Standard-Image-Familie ininstanceProperties.IMAGE_PROJECT_1,IMAGE_PROJECT_2,IMAGE_PROJECT_3: die Projekte, die die Bilder für die Laufwerküberschreibungen enthaltenIMAGE_1,IMAGE_2,IMAGE_3: die Namen der Images für die LaufwerküberschreibungenPROJECT_ID: Ihre Projekt-ID.REGION: die Region, in der die VMs erstellt werden sollen
Beispiel
Im folgenden Beispiel werden 10 VMs mit zwei Instanzauswahlen erstellt, die eine Mindest-CPU-Plattform angeben, das Standard-Bootlaufwerk überschreiben und zusätzliche Laufwerke anhängen:
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
}
}
]
}
}
}
}