Übersicht über die Betriebssystemumgebung für die VMs eines Jobs

In diesem Dokument werden die Konzepte für die Betriebssystemumgebung (die Bootlaufwerke und das Betriebssystem-Image) für die Compute Engine-VM-Instanzen erläutert, auf denen Batchjobs ausgeführt werden.

Zum Ausführen eines Jobs werden die Anweisungen auf dem Bootlaufwerk jeder seiner VMs ausgeführt. Jedes Bootlaufwerk enthält einen Bootloader, ein Dateisystem und ein Betriebssystem. Sie können optional die VM-Betriebssystemumgebung für einen Job konfigurieren. Führen Sie dazu einen der folgenden Schritte aus:

  • Wenn Sie nur die Software auf den Bootlaufwerken konfigurieren möchten, geben Sie das VM-Betriebssystem-Image des Jobs an.
  • Um Attribute des Bootlaufwerks zu konfigurieren, einschließlich des VM-Betriebssystem-Images, der Laufwerksgröße und/oder des Laufwerkstyps, passen Sie die Bootlaufwerke des Jobs an.

In den folgenden Abschnitten wird beschrieben, wann die Betriebssystemumgebung, die standardmäßige Betriebssystemumgebung, die Optionen für VM-Betriebssystem-Images und das Bootlaufwerk konfiguriert werden sollten.

Wann sollte die Betriebssystemumgebung konfiguriert werden?

In diesem Abschnitt erfahren Sie, ob Sie das VM-Betriebssystem-Image und/oder die Bootlaufwerke konfigurieren müssen, wenn Sie einen Job erstellen oder die Standardkonfiguration verwenden.

Konfigurieren Sie das VM-Betriebssystem-Image für einen Job in den folgenden Fällen:

  • Die Richtlinieneinschränkung für vertrauenswürdige Images (compute.trustedImageProjects) hindert Sie daran, einen Job mit dem Standard-VM-Betriebssystem-Image zu erstellen.

    Weitere Informationen zur Richtlinieneinschränkung für vertrauenswürdige Images finden Sie unter Zugriff auf VM-Betriebssystem-Images für Batch steuern.

  • Wenn Sie das Standard-VM-Betriebssystem-Image nicht für Ihren Job verwenden möchten oder können. Wenn die von Ihnen für einen Job definierten Runnables beispielsweise eine Anwendung erfordern, die vom Standard-Image nicht unterstützt wird, können Sie möglicherweise ein anderes öffentliches VM-Betriebssystem-Image angeben. Wenn Sie eine Anwendung vorinstallieren möchten, die für Ihren Job erforderlich ist, um die Laufzeit zu reduzieren, können Sie auch ein benutzerdefiniertes Image erstellen und angeben.

Konfigurieren Sie das Bootlaufwerk für einen Job in den folgenden Fällen:

  • Ob das Standard-Bootlaufwerk für Ihren Job nicht verwendet werden soll oder nicht. Wenn beispielsweise die Runnables oder das VM-Betriebssystem-Image, das Sie für einen Job definiert haben, zusätzlichen Speicherplatz auf dem Bootlaufwerk benötigen, müssen Sie das Bootlaufwerk für einen Job möglicherweise anpassen, um seine Größe zu erhöhen.

Wenn Sie immer noch nicht sicher sind, ob Sie für Ihren Job das VM-Betriebssystem-Image und/oder die Bootlaufwerke konfigurieren müssen, lesen Sie den folgenden Abschnitt, um mehr über die Standardkonfiguration zu erfahren. Außerdem können Sie auch einfach versuchen, den Job mit der Standardkonfiguration zu erstellen und auszuführen. Wenn der Job in der Standardkonfiguration fehlschlägt, können Sie mithilfe der Fehlerbehebung herausfinden, ob das Problem durch das VM-Betriebssystem-Image oder das Bootlaufwerk verursacht wurde.

Wenn Sie das VM-Betriebssystem-Image und/oder das Bootlaufwerk für einen Job nicht benötigen oder konfigurieren möchten, lassen Sie diese Attribute undefiniert, um die Standardkonfiguration zu verwenden.

Standardmäßige Betriebssystemumgebung

Lesen Sie diesen Abschnitt, um mehr über die Standardkonfiguration des VM-Betriebssystem-Images und der Bootlaufwerke eines Jobs zu erfahren. Sie können die Standardkonfiguration beispielsweise als Referenz verwenden, wenn Sie bestimmen, wie Sie die Betriebssystemumgebung für einen Job konfigurieren möchten.

Wenn Sie einen Job erstellen und das VM-Betriebssystem-Image nicht definieren, verwendet der Job standardmäßig eines der folgenden VM-Betriebssystem-Images:

  • Wenn der Job nur ausführbare Container enthält, verwendet er die neueste Version des Batch-Images von Container-Optimized OS (COS).
  • Andernfalls verwendet der Job die neueste Version des Batch-Debian-Images.

Wenn Sie einen Job erstellen und die anderen Attribute des Bootlaufwerks nicht definieren, werden für den Job standardmäßig die folgenden Optionen verwendet:

  • Typ des nichtflüchtigen Speichers: Der standardmäßige Typ des nichtflüchtigen Speichers für Bootlaufwerke ist pd-balanced.

  • size: Die Standardgröße für das Bootlaufwerk jeder VM wird durch die folgende Formel für \({defaultBootDiskSize}\)bestimmt. Außerdem wird die Standardgröße auf mindestens 30 GB und höchstens 10.000 GB gerundet.

    \[{defaultBootDiskSize}={reservedSize}+({taskSize}*{parallelTasksPerVm})\]

    Diese Formel hat folgende Werte:

    • \({reservedSize}\): die reservierte Größe in GB für die erforderliche Software für die VM, z. B. das VM-Betriebssystem-Image. Für die Standardgröße des Bootlaufwerks reserviert Batch 10 GB.

    • \({taskSize}\): die Größe des Bootlaufwerks für jede Aufgabe in GB, die durch Konvertieren der Einheiten des Felds Größe des Bootlaufwerks pro Aufgabe (bootDiskMib) ermittelt wird.

    • \({parallelTasksPerVM}\): die maximale Anzahl von Aufgaben, die gleichzeitig auf einer VM ausgeführt werden können. Weitere Informationen finden Sie in der Formel für \({parallelTasksPerVM}\).

  • interface: Die Schnittstelle wird abhängig vom Maschinentyp der VMs des Jobs automatisch als NVMe oder SCSI ausgewählt. Sie können optional einen Maschinentyp angeben, wenn Sie den Ressourcentyp für einen Job definieren. Die Standardoberfläche für jeden Maschinentyp finden Sie unter Schnittstelle auswählen in der Compute Engine-Dokumentation.

Optionen für VM-Betriebssystem-Image

In den folgenden Abschnitten werden die VM-Betriebssystem-Image-Optionen für Batch beschrieben, einschließlich aller Typen von VM-Betriebssystem-Images, die Batchjobs unterstützen, sowie der Einschränkungen für die unterstützten VM-Betriebssystem-Images. Wenn Sie das VM-Betriebssystem-Image für einen Job angeben, können Sie für jedes der unterstützten VM-Betriebssystem-Images, die durch die Einschränkungen zugelassen werden, einen Image-Namen oder eine Image-Familie angeben.

Unterstützte VM-Betriebssystem-Images

Batchjobs können die folgenden Arten von VM-Betriebssystem-Images unterstützen:

  • Öffentliche Images:Images, die von Google, Open-Source-Communitys und Drittanbietern zur Verfügung gestellt und gewartet werden. Insbesondere können Batchjobs öffentliche Images aus Batch oder Compute Engine verwenden.

    • Batch-Images: Images, die von Batch bereitgestellt und verwaltet werden, im Image-Projekt batch-custom-image gespeichert und für Batchjobs empfohlen werden.

      Batch-Images sind in den folgenden Betriebssystemen verfügbar. Wenn Sie Image-Familien und Image-Namen aus Batch aufrufen, wird das entsprechende Betriebssystem durch das entsprechende Präfix angegeben.

      • Batch Debian (Präfix batch-debian): Ein auf Debian basierendes Betriebssystem, das für Batchjobs optimiert ist. Dieses Betriebssystem ist die Standardeinstellung für Jobs mit beliebigen ausführbaren Skripts.
      • Container-Optimized OS für Batch (batch-cos-Präfix): Ein Betriebssystem, das auf Container-Optimized OS von Google Cloud basiert und für Batchjobs mit Containern optimiert ist. Dieses Betriebssystem ist die Standardeinstellung für Jobs mit ausschließlich Container-Runnables.
      • Batch CentOS (Präfix batch-centos): Ein auf CentOS Linux basierendes Betriebssystem, das für Batchjobs optimiert ist.
      • CentOS für Batch-Hochleistungs-Computing (HPC) (Präfix batch-hpc-centos): Ein Betriebssystem, das auf den CentOS-HPC-Images von Google Cloud basiert und für Batchjobs mit HPC-Arbeitslasten optimiert ist.
      • Batch High-Performance Computing (HPC) Rocky Linux (Präfix batch-hpc-rocky): Ein Betriebssystem, das auf den Rocky Linux HPC-Images von Google Cloud basiert und für Batchjobs mit HPC-Arbeitslasten optimiert ist.

      Wenn Sie die bestimmten Image-Namen und -Familien aus Batch aufrufen möchten, die Sie für einen Job angeben können, führen Sie die Schritte zum Aufrufen von VM-Betriebssystem-Images aus Batch aus.

    • Compute Engine-Images: in Compute Engine verfügbare öffentliche Images, die auf der Seite Betriebssystemdetails in der Compute Engine-Dokumentation beschrieben werden.

      Batch unterstützt nur allgemein verfügbare Compute Engine-Images der folgenden Betriebssysteme:

  • Benutzerdefinierte Images:Images, die Sie mit Compute Engine erstellen, besitzen und den Zugriff darauf steuern. Weitere Informationen zu benutzerdefinierten Images finden Sie in der Compute Engine-Dokumentation.

Einschränkungen für VM-Betriebssystem-Images

Die unterstützten VM-Betriebssystem-Images, die ein Job angeben kann, unterliegen den folgenden Einschränkungen:

  • Bei Batch-Images beträgt die unterstützende Lebensdauer des Images 180 Tage. Das Startdatum eines Batch-Images ist im Image-Namen angegeben. Beispielsweise stammt das Image batch-cos-stable-official-20230719-00-p00 aus dem 19. Juli 2023 (20230719). Batch-Images, die als verworfen markiert sind, werden nicht zwangsläufig unterstützt.

  • Bestimmte Jobkonfigurationen erfordern externen Zugriff auf das Image. Wenn ein Job keinen externen Zugriff hat und keinen Zugriff über Cloud NAT oder privater Google-Zugriff zulässt, werden nur die folgenden Images unterstützt:

    • Für Jobs, die GPUs und nur Container Runnables verwenden, wird nur das Standard-Image (das neueste Batch-Image mit Container-Optimized OS) unterstützt.
    • Andernfalls unterstützen Jobs nur Batch-Images.
  • Wenn die Einschränkung der Richtlinie für vertrauenswürdige Images aktiviert ist, können Sie keine VM-Betriebssystem-Images verwenden, die gemäß der Richtlinie für vertrauenswürdige Images nicht zulässig sind.

    Ein Administrator für Ihr Projekt, Ihren Ordner oder Ihre Organisation kann die Richtlinieneinschränkung für vertrauenswürdige Images optional konfigurieren, um die VM-Betriebssystem-Images einzuschränken, die zum Erstellen von Bootlaufwerken verwendet werden können. Mit der Richtlinieneinschränkung für vertrauenswürdige Images können Sie beispielsweise festlegen, dass Nutzer VMs erstellen müssen, die genehmigte Software enthalten, die Ihren Richtlinien- oder Sicherheitsanforderungen entspricht. Weitere Informationen finden Sie unter Zugriff auf VM-Betriebssystem-Images für Batch steuern.

  • Im VM-Betriebssystem-Image für Ihren Job müssen die Treiber für die Schnittstelle der Bootlaufwerke und aller nichtflüchtigen Speicher-Volumes installiert sein. Die meisten öffentlichen Images installieren automatisch sowohl NVMe- als auch SCSI-Treiber, einschließlich aller Batch-Images.

    Sie können die Schnittstelle von nichtflüchtigen Speichern nicht konfigurieren, sodass das VM-Betriebssystem-Image die Treiber für die Standardschnittstelle erfordert.

  • Wenn in einem Job ein VM-Betriebssystem-Image angegeben ist, das weder ein Batch-Image noch ein auf einem Batch-Image basierendes benutzerdefiniertes Image ist, installiert Batch die erforderlichen Pakete nach dem Start auf den VMs des Jobs. Diese erforderlichen Pakete können für verschiedene Jobkonfigurationen variieren und sich im Laufe der Zeit ändern. Außerdem sind sie erforderlich, damit Batch den Job ausführen kann.

Bootlaufwerksoptionen

In diesem Abschnitt werden die Optionen für den Typ und die Größe von Bootlaufwerken für Batch beschrieben. Wenn Sie die Bootlaufwerke für einen Job anpassen, können Sie das VM-Betriebssystem-Image, den Typ und/oder die Größe angeben. Informationen zum Angeben des VM-Betriebssystem-Images finden Sie in diesem Dokument unter Optionen für VM-Betriebssystem-Image.

Für Bootlaufwerktypen unterstützt Batch alle nichtflüchtigen Speichertypen in der Compute Engine-Dokumentation.

Im Hinblick auf die Größe des Bootlaufwerks unterstützt Batch alle Größen und Inkremente für nichtflüchtige Speicher in der Compute Engine-Dokumentation, die die folgenden Anforderungen erfüllen:

  • Bei Batchjobs beträgt die Mindestgröße des Bootlaufwerks 30 GB.

  • Damit ein Batch-Job ordnungsgemäß ausgeführt wird, muss das Bootlaufwerk groß genug sein, um das VM-Betriebssystem-Image des Jobs und die auf jeder VM ausgeführten Aufgaben zuzuweisen. Sehen Sie sich beispielsweise die Formel für die Standardgröße des Bootlaufwerks in diesem Dokument an.

Nächste Schritte