Auf dieser Seite wird beschrieben, wie Sie die nichtflüchtigen Laufwerke anpassen, die zum Starten jeder VM-Instanz (virtuelle Maschine) verwendet werden, auf der ein Job ausgeführt wird.
Insbesondere können Sie die Größe, den Typ und/oder das VM-Betriebssystem-Image für ein Bootlaufwerk anpassen. Wenn Sie nur das VM-Betriebssystem-Image anpassen möchten, lesen Sie stattdessen den Hilfeartikel VM-Betriebssystem-Image für einen Job angeben.
Weitere Informationen zu Bootlaufwerken und zu den Zeitpunkten, zu denen sie konfiguriert werden sollten, finden Sie unter VM-Betriebssystemumgebung – Übersicht.
Hinweise
- Wenn Sie Batch noch nicht verwendet haben, lesen Sie den Hilfeartikel Batch-Dateien erstellen und ausführen und aktivieren Sie Batch, indem Sie die Voraussetzungen für Projekte und Nutzer erfüllen.
-
Um die Berechtigungen zu erhalten, die Sie zum Erstellen eines Jobs benötigen, bitten Sie Ihren Administrator, Ihnen folgenden IAM-Rollen:
-
Batch-Job-Editor (
roles/batch.jobsEditor
) für das Projekt -
Dienstkontonutzer (
roles/iam.serviceAccountUser
) für das Dienstkonto des Jobs, das standardmäßig das Compute Engine-Standarddienstkonto ist
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.
-
Batch-Job-Editor (
Job erstellen und ausführen, der ein benutzerdefiniertes Bootlaufwerk verwendet
Wählen Sie ein benutzerdefiniertes Bootlaufwerk aus, wenn Sie einen Job erstellen der folgenden Methoden verwenden:
Verwenden Sie eine Compute Engine-Instanzvorlage, die ein bereits vorhandenes benutzerdefiniertes Bootlaufwerk angibt. Wenn Sie beim Erstellen dieses Jobs eine VM-Instanzvorlage oder ein vorhandenes benutzerdefiniertes Bootlaufwerk verwenden möchten, führen Sie die folgenden Schritte aus:
Erstellen oder identifizieren Sie ein benutzerdefiniertes Bootlaufwerk.
Informationen zu den Anforderungen an das Bootlaufwerk für Batch finden Sie in diesem Dokument und siehe VM-Betriebssystem-Umgebung – Übersicht. Anweisungen zum Erstellen eines Bootlaufwerks finden Sie unter Benutzerdefiniertes Bootlaufwerk erstellen in der Compute Engine-Dokumentation.
Erstellen oder identifizieren Sie eine VM-Instanzvorlage, die dieses benutzerdefinierte Bootlaufwerk enthält.
Eine Anleitung zum Erstellen einer VM-Instanzvorlage finden Sie in der Compute Engine-Dokumentation unter Instanzvorlagen erstellen.
Erstellen und ausführen Sie einen Job, der diese VM-Instanzvorlage enthält.
Anweisungen zum Erstellen und Ausführen des Jobs finden Sie unter Jobressourcen mithilfe einer VM-Instanzvorlage definieren
Verwenden Sie das Feld „Bootlaufwerk“, um ein neues benutzerdefiniertes Bootlaufwerk anzugeben. Wie in der folgenden Anleitung erläutert, können Sie Definieren Sie ein neues benutzerdefiniertes Bootlaufwerk Bootlaufwerk (
bootDisk
) wenn Sie einen Job mit der Methode gcloud CLI oder Batch API verwenden.Insbesondere können Sie das Bootlaufwerk anpassen, indem Sie die Unterfelder des VM-Betriebssystem-Images (
image
), des nichtflüchtigen Speichertyps (type
) und/oder der Größe (sizeGb
). Batch legt einen Standardwert für alle diese untergeordneten Felder fest, die Sie weglassen.
gcloud
Erstellen Sie eine JSON-Datei, die die Konfigurationsdetails Ihres Jobs enthält. Fügen Sie den Parameter Feld und Unterfelder
bootDisk
:Um beispielsweise einen einfachen Skriptjob zu erstellen, der einen neuen benutzerdefinierten Bootmodus verwendet, Laufwerk erstellen Sie eine JSON-Datei mit folgendem Inhalt:
{ "taskGroups": [ { "taskSpec": { "runnables": [ { "script": { "text": "echo Hello world from task ${BATCH_TASK_INDEX}." } } ] }, "taskCount": 3, "parallelism": 1 } ], "allocationPolicy": { "instances": [ { "policy": { "bootDisk": { "image": "VM_OS_IMAGE_URI", "type": "BOOT_DISK_TYPE", "sizeGb": BOOT_DISK_SIZE } } } ] }, "logsPolicy": { "destination": "CLOUD_LOGGING" } }
Ersetzen Sie Folgendes:
VM_OS_IMAGE_URI
: ein relativer Ressourcenname des VM-Betriebssystem-Images. Verwenden Sie eine der folgenden Optionen:Geben Sie ein Batch-Betriebssystempräfix an. Um die neuesten eines bestimmten Batch-Betriebssystems verwenden, folgendes Format:
BATCH_OS_PREFIX
Ersetzen Sie
BATCH_OS_PREFIX
durch einen der Batch-VM-Betriebssystem-Image-Präfixe: fürbatch-debian
ist z. B. das Präfix für das Batch-Debian-Betriebssystem.Geben Sie eine Image-Familie an. Wenn Sie das neueste Image aus einer bestimmten Image-Familie verwenden möchten, verwenden Sie das folgende Format:
projects/IMAGE_PROJECT_ID/global/images/family/IMAGE_FAMILY
Ersetzen Sie Folgendes:
IMAGE_PROJECT_ID
: die Projekt-ID des Projekts, das das Image enthält. Wenn beispielsweise Batch-Images, geben Siebatch-custom-image
an.IMAGE_FAMILY
ist die Image-Familie, die enthält ein oder mehrere spezifische Bilder und stellt den Typ und Hauptversion des Betriebssystems. Wenn Sie beispielsweise alle VM-Betriebssystem-Image-Familien aus Batch aufrufen möchten, rufen Sie eine Liste der VM-Betriebssystem-Images auf.
Geben Sie eine Image-Version an. Wenn Sie eine bestimmte Version eines VM-Betriebssystem-Images verwenden möchten, verwenden Sie das folgende Format:
projects/IMAGE_PROJECT_ID/global/images/IMAGE_NAME
Ersetzen Sie Folgendes:
IMAGE_PROJECT_ID
: die Projekt-ID des Projekts, das das Image enthält. Geben Sie beispielsweise für alle Batch-Bilderbatch-custom-image
an.IMAGE_NAME
: Der Image-Name, der eine bestimmte Version eines VM-Betriebssystem-Images darstellt. Um beispielsweise alle VM-Betriebssystem-Image-Versionen Batch: Liste der VM-Betriebssystem-Images ansehen
BOOT_DISK_TYPE
: Der Laufwerkstyp des Bootlaufwerks:pd-standard
,pd-balanced
,pd-ssd
oderpd-extreme
. Der Standard-Laufwerkstyp für Bootlaufwerke istpd-balanced
.BOOT_DISK_SIZE
: die Größe des das neue nichtflüchtige Bootlaufwerk in GB. Dieser Wert muss allen Anforderungen an die Größe des Bootlaufwerks entsprechen.
Führen Sie folgenden Befehl aus, um den Job zu erstellen:
gcloud batch jobs submit
-Befehl:gcloud batch jobs submit JOB_NAME \ --location LOCATION \ --config JSON_CONFIGURATION_FILE
Ersetzen Sie Folgendes:
JOB_NAME
: Der Name für diesen Job.LOCATION
: die location für diesen Job an.JSON_CONFIGURATION_FILE
: der Pfad zum JSON-Datei mit den Konfigurationsdetails des Jobs.
API
Verwenden Sie zum Erstellen eines Jobs mit der Batch API die Methode
jobs.create
-Methode
und geben Sie die Konfigurationsdetails des Jobs an.
Geben Sie das VM-Betriebssystem-Image für den Job an, indem Sie das Feld bootDisk
und die untergeordneten Felder einfügen.
Wenn Sie beispielsweise einen einfachen Script-Job mit einem neuen benutzerdefinierten Bootlaufwerk erstellen möchten, stellen Sie die folgende POST
-Anfrage:
POST https://batch.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/jobs?job_id=JOB_NAME
{
"taskGroups": [
{
"taskSpec": {
"runnables": [
{
"script": {
"text": "echo Hello world from task ${BATCH_TASK_INDEX}."
}
}
]
},
"taskCount": 3,
"parallelism": 1
}
],
"allocationPolicy": {
"instances": [
{
"policy": {
"bootDisk": {
"image": "VM_OS_IMAGE_URI",
"type": "BOOT_DISK_TYPE",
"sizeGb": BOOT_DISK_SIZE
}
}
}
]
},
"logsPolicy": {
"destination": "CLOUD_LOGGING"
}
}
Ersetzen Sie Folgendes:
VM_OS_IMAGE_URI
: ein relativer Ressourcenname des VM-Betriebssystem-Images. Verwenden Sie eine der folgenden Optionen:Geben Sie ein Batch-Betriebssystempräfix an. Wenn Sie das neueste Image eines bestimmten Batch-Betriebssystems verwenden möchten, verwenden Sie das folgende Format:
BATCH_OS_PREFIX
Ersetzen Sie
BATCH_OS_PREFIX
durch eines der Präfixe für Batch-VM-Betriebssystem-Images.batch-debian
ist beispielsweise das Präfix für das Batch-Debian-Betriebssystem.Geben Sie eine Image-Familie an. Um das neueste Image eines bestimmten Image-Familie verwenden, verwenden Sie das folgende Format:
projects/IMAGE_PROJECT_ID/global/images/family/IMAGE_FAMILY
Ersetzen Sie Folgendes:
IMAGE_PROJECT_ID
: die Projekt-ID des Projekts, das das Image enthält. Geben Sie beispielsweise für alle Batch-Bilderbatch-custom-image
an.IMAGE_FAMILY
: die Image-Familie, die ein oder mehrere bestimmte Images enthält und den Typ und die Hauptversion des Betriebssystems darstellt. Wenn Sie beispielsweise alle VM-Betriebssystem-Image-Familien aus Batch aufrufen möchten, rufen Sie eine Liste der VM-Betriebssystem-Images auf.
Geben Sie eine Image-Version an. Wenn Sie eine bestimmte Version eines VM-Betriebssystem-Images verwenden möchten, verwenden Sie das folgende Format:
projects/IMAGE_PROJECT_ID/global/images/IMAGE_NAME
Ersetzen Sie Folgendes:
IMAGE_PROJECT_ID
: die Projekt-ID des Projekts, das das Image enthält. Geben Sie beispielsweise für alle Batch-Bilderbatch-custom-image
an.IMAGE_NAME
ist der Image-Name, mit dem eine bestimmte Version eines VM-Betriebssystem-Images darstellt. Um beispielsweise alle VM-Betriebssystem-Image-Versionen Batch: Liste der VM-Betriebssystem-Images ansehen
BOOT_DISK_TYPE
: Der Laufwerkstyp des Bootlaufwerks:pd-standard
,pd-balanced
,pd-ssd
oderpd-extreme
. Der Standardlaufwerkstyp für Bootlaufwerke istpd-balanced
.BOOT_DISK_SIZE
: die Größe des neuen nichtflüchtigen Bootlaufwerks in GB. Dieser Wert muss den alle Anforderungen an die Größe des Bootlaufwerks erfüllen.
Nächste Schritte
- Wenn beim Erstellen oder Ausführen eines Jobs Probleme auftreten, lesen Sie den Hilfeartikel Fehlerbehebung.
- Informationen zu Bootlaufwerken und VM-Betriebssystem-Images
- Weitere Informationen zum Erstellen von Jobs
- Weitere Informationen