Présentation de l'environnement de système d'exploitation pour les VM d'un job

Ce document décrit les concepts liés à l'environnement de système d'exploitation (OS), c'est-à-dire les disques de démarrage et l'image du système d'exploitation, pour les instances de machines virtuelles (VM) Compute Engine qui exécutent des tâches par lot.

Pour exécuter une tâche, suivez les instructions sur le disque de démarrage de chacune de ses VM. Chaque disque de démarrage contient un bootloader, un système de fichiers et un système d'exploitation. Vous pouvez éventuellement configurer l'environnement d'OS de la VM pour une tâche en effectuant l'une des opérations suivantes:

  • Pour configurer uniquement les logiciels sur les disques de démarrage, spécifiez l'image d'OS de VM du job.
  • Pour configurer les propriétés du disque de démarrage, y compris l'image de l'OS de la VM, la taille du disque et/ou le type de disque, personnalisez les disques de démarrage de la tâche.

Les sections suivantes décrivent quand configurer l'environnement du système d'exploitation, l'environnement de système d'exploitation par défaut, les options d'image d'OS de VM et les options de disque de démarrage.

Quand configurer l'environnement du système d'exploitation ?

Consultez cette section pour déterminer si vous devez configurer l'image du système d'exploitation de la VM et/ou les disques de démarrage lorsque vous créez une tâche ou utilisez la configuration par défaut.

Configurez l'image d'OS de VM pour une tâche dans les cas suivants:

  • Si la contrainte de la règle des images de confiance (compute.trustedImageProjects) vous empêche de créer un job avec l'image d'OS de VM par défaut.

    Pour en savoir plus sur la contrainte de la règle relative aux images de confiance, consultez la section Contrôler l'accès aux images d'OS de VM pour Batch.

  • Si vous préférez ne pas utiliser ou ne pas utiliser l'image d'OS de VM par défaut pour votre job Par exemple, si les exécutables que vous avez définis pour une tâche nécessitent une application non compatible avec l'image par défaut, vous pouvez spécifier une autre image d'OS de VM publique. Si vous souhaitez préinstaller une application requise pour votre tâche afin de réduire le temps d'exécution, vous pouvez également créer et spécifier une image personnalisée.

Configurez le disque de démarrage pour une tâche dans les cas suivants:

  • Si vous préférez ne pas utiliser le disque de démarrage par défaut pour votre tâche, ou si vous ne pouvez pas le faire. Par exemple, si les exécutables ou l'image d'OS de VM que vous avez définie pour une tâche nécessitent un espace de stockage supplémentaire sur le disque de démarrage, vous devrez peut-être personnaliser le disque de démarrage d'une tâche afin d'augmenter sa taille.

Si vous ne savez toujours pas si votre tâche nécessite la configuration de l'image du système d'exploitation de la VM et/ou des disques de démarrage, consultez la section suivante pour comprendre la configuration par défaut. Vous pouvez également essayer de créer et d'exécuter le job avec la configuration par défaut. Si la tâche échoue avec la configuration par défaut, vous pouvez essayer de déterminer si le problème est dû à l'image du système d'exploitation de la VM ou au disque de démarrage en suivant les procédures de dépannage.

Sinon, si vous n'avez pas besoin et ne souhaitez pas configurer l'image d'OS de VM et/ou le disque de démarrage pour une tâche, laissez ces propriétés non définies pour utiliser la configuration par défaut.

Environnement d'OS par défaut

Consultez cette section pour comprendre la configuration par défaut de l'image de système d'exploitation de VM et des disques de démarrage d'un job. Par exemple, vous pouvez utiliser la configuration par défaut comme référence lorsque vous déterminez la manière dont vous souhaitez configurer l'environnement du système d'exploitation pour une tâche.

Lorsque vous créez une tâche sans définir d'image d'OS de VM, celle-ci utilise par défaut l'une des images d'OS de VM suivantes:

  • Si la tâche ne comporte que des conteneurs exécutables, elle utilise la dernière version de l'image COS (Batch Container-Optimized OS).
  • Sinon, la tâche utilise la dernière version de l'image Batch Debian.

Lorsque vous créez une tâche sans définir les autres propriétés des disques de démarrage, les options suivantes sont utilisées par défaut:

  • Type de disque persistant: le type de disque persistant par défaut pour les disques de démarrage est pd-balanced.

  • size: la taille par défaut du disque de démarrage de chaque VM est déterminée par la formule suivante pour \({defaultBootDiskSize}\). En outre, la taille par défaut est arrondie à au moins 30 Go et au maximum 10 000 Go.

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

    Cette formule a les valeurs suivantes:

    • \({reservedSize}\): taille réservée en Go pour les logiciels requis pour la VM, tels que l'image d'OS de la VM. Pour la taille de disque de démarrage par défaut, Batch réserve 10 Go.

    • \({taskSize}\): taille du disque de démarrage pour chaque tâche, en Go. Cette valeur est déterminée en convertissant les unités du champ Taille du disque de démarrage par tâche (bootDiskMib).

    • \({parallelTasksPerVM}\): nombre maximal de tâches pouvant être exécutées simultanément sur une VM. Pour en savoir plus, consultez la formule de \({parallelTasksPerVM}\).

  • interface : l'interface est automatiquement sélectionnée en tant que NVMe ou SCSI selon le type de machine des VM de votre tâche. Vous pouvez éventuellement spécifier un type de machine lorsque vous définissez le type de ressources qu'une tâche doit utiliser. Pour connaître l'interface par défaut de chaque type de machine, consultez la section Choisir une interface dans la documentation Compute Engine.

Options d'image d'OS de VM

Les sections suivantes décrivent les options d'image d'OS de VM pour Batch, y compris tous les types d'images d'OS de VM compatibles avec les tâches Batch et les restrictions concernant les images d'OS de VM compatibles. Lorsque vous spécifiez l'image d'OS de VM pour une tâche, vous pouvez spécifier un nom ou une famille d'images pour n'importe quelle image d'OS de VM compatible autorisée par les restrictions.

Images d'OS de VM compatibles

Les jobs par lot sont compatibles avec les types d'images d'OS de VM suivants:

  • Images publiques:images fournies et gérées par Google, par des communautés Open Source et par des fournisseurs tiers. Plus précisément, les tâches Batch peuvent utiliser des images publiques de Batch ou Compute Engine.

    • Images de lots:images fournies et gérées par Batch, stockées dans le projet d'images batch-custom-image et recommandées pour les tâches Batch.

      Les images par lot sont disponibles dans les systèmes d'exploitation suivants. Lorsque vous affichez des familles d'images et des noms d'images de Batch, son système d'exploitation est indiqué par le préfixe correspondant.

      • Batch Debian (préfixe batch-debian) : système d'exploitation basé sur Debian optimisé pour les tâches Batch. Cet OS est utilisé par défaut pour les jobs comportant n'importe quel exécutable de script.
      • Batch Container-Optimized OS (préfixe batch-cos) : système d'exploitation basé sur Container-Optimized OS de Google Cloud et optimisé pour les jobs Batch avec des conteneurs. Il s'agit du système d'exploitation par défaut pour les tâches comportant uniquement des exécutables de conteneurs.
      • Batch CentOS (préfixe batch-centos) : système d'exploitation basé sur CentOS Linux optimisé pour les tâches par lot.
      • Calcul hautes performances par lot (HPC) CentOS (préfixe batch-hpc-centos) : système d'exploitation basé sur les images HPC CentOS de Google Cloud, optimisé pour les tâches par lot avec des charges de travail HPC.
      • Calcul hautes performances par lot (HPC) Rocky Linux (préfixe batch-hpc-rocky) : système d'exploitation basé sur les images HPC Rocky Linux de Google Cloud, optimisé pour les tâches par lot avec des charges de travail HPC.

      Pour afficher les noms et les familles d'images spécifiques de Batch que vous pouvez spécifier pour une tâche, suivez les étapes pour afficher les images d'OS de VM de Batch.

    • Images Compute Engine:images publiques disponibles sur Compute Engine qui sont décrites sur la page Détails des systèmes d'exploitation de la documentation Compute Engine.

      Batch n'est compatible qu'avec les images Compute Engine en disponibilité générale des systèmes d'exploitation suivants:

  • Images personnalisées:images que vous créez, possédez et contrôlez l'accès à l'aide de Compute Engine. Apprenez-en plus sur les images personnalisées dans la documentation Compute Engine.

Restrictions concernant les images d'OS de VM

Les images d'OS compatibles qu'une tâche peut spécifier sont soumises aux restrictions suivantes:

  • Pour les images par lot, la durée de vie garantie de l'image est de 180 jours. La date de début d'une image Batch est indiquée dans le nom de l'image. Par exemple, l'image batch-cos-stable-official-20230719-00-p00 date du 19 juillet 2023 (20230719). La prise en charge des images par lot marquées comme obsolètes n'est pas garantie.

  • Certaines configurations de tâche nécessitent un accès externe à l'image. Plus précisément, lorsqu'une tâche ne dispose pas d'un accès externe et n'autorise pas l'accès via Cloud NAT ou l'accès privé à Google, seules les images suivantes sont acceptées:

    • Pour les tâches qui utilisent des GPU et uniquement des exécutables de conteneurs, seule l'image par défaut (la dernière image Batch Container-Optimized OS) est acceptée.
    • Sinon, les jobs ne sont compatibles qu'avec les images Batch.
  • Si la contrainte de la règle relative aux images de confiance est activée, vous ne pouvez utiliser aucune image d'OS de VM que la règle n'autorise pas.

    Un administrateur de votre projet, dossier ou organisation peut éventuellement configurer la contrainte de règle relative aux images de confiance afin de limiter les images d'OS des VM pouvant être utilisées pour créer des disques de démarrage. Par exemple, la contrainte de règle relative aux images de confiance peut être utilisée pour obliger les utilisateurs à créer des VM contenant des logiciels approuvés qui répondent à vos exigences en matière de stratégie ou de sécurité. Pour en savoir plus, consultez la page Contrôler l'accès aux images d'OS de VM pour Batch.

  • Les pilotes de l'interface de ses disques de démarrage et de tous les volumes de stockage sur disque persistant doivent être installés sur l'image de VM de l'OS de votre tâche. La plupart des images publiques installent automatiquement des pilotes NVMe et SCSI, y compris toutes les images Batch.

    Vous ne pouvez pas configurer l'interface des disques persistants. Par conséquent, l'image de l'OS de la VM nécessite les pilotes de l'interface par défaut.

  • Si une tâche spécifie une image d'OS de VM qui n'est ni une image de traitement par lot, ni une image personnalisée basée sur une image de lot, Batch installe les packages requis sur les VM de la tâche après son démarrage. Ces packages requis peuvent varier pour différentes configurations de tâche et évoluer au fil du temps. Ils sont nécessaires pour que Batch exécute la tâche.

Options du disque de démarrage

Cette section décrit les options relatives au type et à la taille des disques de démarrage pour Batch. Lorsque vous personnalisez les disques de démarrage d'une tâche, vous pouvez spécifier l'image, le type et/ou la taille de l'OS de la VM. Pour en savoir plus sur la spécification de l'image d'OS de la VM, consultez la section Options d'image d'OS de VM de ce document.

Pour le type de disque de démarrage, Batch accepte tous les types de disques persistants décrits dans la documentation Compute Engine.

Pour la taille du disque de démarrage, Batch accepte toutes les tailles et incréments des disques persistants qui figurent dans la documentation Compute Engine, qui répondent aux exigences suivantes:

  • Pour les tâches par lot, la taille minimale du disque de démarrage est de 30 Go.

  • Pour qu'une tâche par lot s'exécute correctement, la taille du disque de démarrage doit être suffisante pour allouer l'image d'OS de la VM du job et les tâches exécutées sur chaque VM. Par exemple, consultez la formule de la taille de disque de démarrage par défaut dans ce document.

Étapes suivantes