In diesem Dokument wird beschrieben, wie Sie die Instanz-Flexibilität konfigurieren, wenn Sie virtuelle Maschinen (VMs) im Bulk erstellen. Mit der Instanz-Flexibilität können Sie mehrere Maschinentypen angeben, sie nach Präferenz sortieren und die Einstellungen für die kleinstmögliche CPU-Plattform und das Laufwerk für jede Auswahl überschreiben, sodass Compute Engine VMs basierend auf der Kapazität und der Kontingentverfügbarkeit in einer Region bereitstellen kann.
Weitere Informationen zur Instanzflexibilität für im Bulk erstellte VMs finden Sie unter Informationen zur Instanzflexibilität für im Bulk erstellte VMs.
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, prüfen Sie die Verfügbarkeit von Ressourcen, bevor Sie VMs erstellen. Wenn Sie die Verfügbarkeit von Ressourcen prüfen, verringert sich 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 Google Cloud Dienste und APIs überprüft. Zum Ausführen von Code oder Beispielen aus einer lokalen Entwicklungsumgebung können Sie sich so bei der Compute Engine authentifizieren:
Wählen Sie den Tab für die gewünschte Verwendung der Beispiele auf dieser Seite aus:
gcloud
-
Installieren Sie die Google Cloud CLI. Initialisieren Sie die Google Cloud CLI nach der Installation mit dem folgenden Befehl:
gcloud initWenn Sie einen externen Identitätsanbieter (IdP) verwenden, müssen Sie sich zuerst mit Ihrer föderierten Identität in der gcloud CLI anmelden.
-
- 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.
Wenn Sie einen externen Identitätsanbieter (IdP) verwenden, müssen Sie sich zuerst mit Ihrer föderierten Identität in der gcloud CLI anmelden.
Weitere Informationen finden Sie in der Dokumentation zur Google Cloud -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 eine Liste aller kompatiblen Maschinentypen in einer einzigen Instanzauswahl angeben. In den folgenden Beispielen wird gezeigt, wie Sie mehrere Maschinentypen mit gleicher Präferenz angeben können.
gcloud
Wenn Sie mehrere VMs 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 Maschinentypen, die für die VMs verwendet werden sollenREGION: 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=c4-standard-8,c3-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, der die Maschinentypen auflistet.
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 Maschinentypen, die für die VMs verwendet werden sollenIMAGE_PROJECT: das Projekt, das das Image enthältIMAGE: der Name des Images oder der Image-Familie, die verwendet werden sollPROJECT_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": [
"c4-standard-8",
"c3-standard-8"
]
}
}
}
}
VMs mit mehreren Maschinentypen erstellen, die nach Präferenz sortiert sind
Wenn Sie möchten, dass Compute Engine Maschinentypen in einer bestimmten Reihenfolge auswählt, können Sie mehrere Instanzauswahlen konfigurieren. Jede Instanzauswahl enthält eine Liste von Maschinentypen und einen Rang, der eine Ganzzahl ist, die die Präferenz für die Maschinentypen definiert. Ein niedrigerer Rang bedeutet eine höhere Präferenz. Die Compute Engine versucht, VMs mit Maschinentypen mit einer höheren Präferenz (niedrigerer Rang) zu erstellen. Wenn diese Maschinentypen nicht verfügbar sind, verwendet Compute Engine Maschinentypen mit einer niedrigeren Präferenz (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 InstanzauswahlINSTANCE_SELECTION_2: der Name für die zweite InstanzauswahlMACHINE_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=c4-standard-16" \
--instance-selection "name=least-preferred,rank=1,machine-type=c3-standard-16"
REST
Stellen Sie in der Compute Engine API eine POST-Anfrage an die Methode regionInstances.bulkInsert.
Fügen Sie im Anfragetext instanceFlexibilityPolicy ein und geben Sie mehrere Einträge in instanceSelections an, 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 InstanzauswahlINSTANCE_SELECTION_2: der Name für die zweite InstanzauswahlMACHINE_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ältIMAGE: der Name des Images oder der Image-Familie, die verwendet werden sollPROJECT_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": [
"c4-standard-16"
],
"rank": 1
},
"least-preferred": {
"machineTypes": [
"c3-standard-16"
],
"rank": 2
}
}
}
}
VMs mit mehreren Maschinentypen, kleinstmöglicher CPU-Plattform und Laufwerksüberschreibungen erstellen
Zusätzlich zur Angabe von Maschinentypen und Rängen können Sie die kleinstmögliche CPU-Plattform überschreiben und die Laufwerksdefinitionen in instanceProperties für jede Instanzauswahl überschreiben oder ergänzen.
Wenn beispielsweise instanceProperties eine Persistent Disk angibt 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 Persistent Disks für Maschinenreihen * Unterstützung von Hyperdisk für Maschinenreihen * Überschreibungen von Instanzattributen in InstanzauswahlenWählen Sie eine der folgenden Optionen aus, um VMs im Bulk mit mehreren Maschinentypen, einer kleinstmöglichen CPU-Plattform und Laufwerksüberschreibungen zu erstellen:
gcloud
Wenn Sie VMs im Bulk mit mehreren Maschinentypen, einer kleinstmöglichen CPU-Plattform und Laufwerksüberschreibungen erstellen möchten, verwenden Sie den Befehl gcloud compute instances bulk create mit dem Flag --instance-flexibility-policy. Wenn Sie das Standard-Bootlaufwerk von instanceProperties überschreiben möchten, fügen Sie auch das Flag --boot-disk-device-name hinzu und geben Sie in 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 Instanz-Flexibilität mit einer YAML- oder JSON-Datei konfigurieren. Verwenden Sie dazu das Flag --flags-file anstelle des Flags --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
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 sollen.BOOT_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 Präferenzreihenfolge für jede Instanzauswahl darstellen; ein niedrigerer Wert gibt eine höhere Präferenz anMACHINE_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 kleinstmögliche 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 Laufwerksüberschreibungen, z. B.pd-ssdoderhyperdisk-balancedDISK_SIZE_1,DISK_SIZE_2: die Laufwerksgrößen für die LaufwerksüberschreibungenIMAGE_PROJECT_1,IMAGE_PROJECT_2: die Projekte, die die Images für die Laufwerksüberschreibungen enthaltenIMAGE_1,IMAGE_2: die Namen der Images oder Image-Familien für die LaufwerksüberschreibungenFILE_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 kleinstmögliche CPU-Plattform angeben, das Standard-Bootlaufwerk überschreiben und zusätzliche Laufwerke anhängen:
sh
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.
Geben Sie im Anfragetext instanceFlexibilityPolicy und in jedem instanceSelections-Eintrag das Feld minCpuPlatform an, 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
}
}
]
}
}
}
}
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 InstanzauswahlINSTANCE_SELECTION_2: der Name für die zweite InstanzauswahlMACHINE_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 kleinstmögliche CPU-Plattformen für die VMs in jeder InstanzauswahlIMAGE_PROJECT: das Projekt, das das Standard-Boot-Image ininstancePropertiesenthältIMAGE: der Name des Standard-Boot-Images oder der Image-Familie ininstancePropertiesIMAGE_PROJECT_1,IMAGE_PROJECT_2: die Projekte, die die Images für die Laufwerksüberschreibungen enthaltenIMAGE_1,IMAGE_2: die Namen der Images für die Laufwerksü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 kleinstmögliche 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
}
}
]
}
}
}
}