Ce document explique les concepts de l'environnement du système d'exploitation (OS), à savoir les disques de démarrage et l'image OS, pour les instances de machines virtuelles (VM) Compute Engine qui exécutent des jobs Batch.
Un job est exécuté en exécutant 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 OS. Vous pouvez éventuellement configurer l'environnement OS de la VM pour un job en procédant de l'une des manières suivantes :
- Pour configurer uniquement le logiciel 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 du job.
Les sections suivantes décrivent quand configurer l'environnement OS, l'environnement OS par défaut, les options d'image d'OS de VM et les options de disque de démarrage.
Quand configurer l'environnement OS
Consultez cette section pour déterminer si vous devez configurer l'image d'OS de la VM et/ou les disques de démarrage lorsque vous créez un job ou utilisez la configuration par défaut.
Configurez l'image de l'OS de la VM pour un job dans les cas suivants :
Si la contrainte de règlement relative aux 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 règle relative aux images de confiance, consultez Contrôler l'accès aux images d'OS de VM pour Batch.
Si vous préférez ne pas utiliser l'image d'OS de VM par défaut pour votre job, ou si vous ne pouvez pas le faire. Par exemple, si les exécutables que vous avez définis pour un job nécessitent une application qui n'est pas 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 job 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 d'un job dans les cas suivants :
- Si vous préférez ne pas utiliser le disque de démarrage par défaut pour votre job 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éfinis pour un job nécessitent davantage d'espace de stockage sur le disque de démarrage, vous devrez peut-être personnaliser le disque de démarrage d'un job pour augmenter sa taille.
Si vous n'êtes toujours pas sûr que votre tâche nécessite de configurer l'image d'OS de la VM et/ou les disques de démarrage, vous pouvez consulter 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 le job échoue avec la configuration par défaut, vous pouvez essayer de déterminer si le problème est dû à l'image d'OS de la VM ou au disque de démarrage en résolvant le problème.
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 un job, laissez ces propriétés non définies pour utiliser la configuration par défaut.
Environnement OS par défaut
Consultez cette section pour comprendre la configuration par défaut de l'image OS 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 pour déterminer comment configurer l'environnement OS pour un job.
Lorsque vous créez un job et que vous ne définissez pas l'image d'OS de la VM, le job utilise par défaut l'une des images d'OS de VM suivantes :
- Si le job ne comporte que des exécutables de conteneur, il utilise la dernière version de l'image Batch Container-Optimized OS (COS).
- Sinon, le job utilise la dernière version de l'image Debian Batch.
Lorsque vous créez un job et que vous ne définissez pas les autres propriétés des disques de démarrage, le job utilise par défaut les options suivantes :
Type de Persistent Disk : le type de Persistent Disk 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}\). De plus, la taille par défaut est arrondie pour être comprise entre 30 Go et 10 000 Go.
\[{defaultBootDiskSize}={reservedSize}+({taskSize}*{parallelTasksPerVm})\]
Cette formule comporte les valeurs suivantes :
\({reservedSize}\) : taille réservée en Go pour les logiciels requis pour la VM, tels que l'image de l'OS de la VM. Batch réserve 10 Go pour la taille de disque de démarrage par défaut.
\({taskSize}\) : taille du disque de démarrage pour chaque tâche en Go, 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 pour \({parallelTasksPerVM}\).
interface : l'interface est automatiquement sélectionnée comme NVMe ou SCSI en fonction du type de machine des VM de votre job. Vous pouvez éventuellement spécifier un type de machine lorsque vous définissez le type de ressources à utiliser pour un job. Pour connaître l'interface par défaut de chaque type de machine, consultez Types d'interfaces de stockage 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 jobs Batch et les restrictions applicables aux images d'OS de VM compatibles. Lorsque vous spécifiez l'image de l'OS de la VM pour un job, vous pouvez indiquer un nom d'image ou une famille d'images pour n'importe quelle image d'OS de VM compatible et autorisée par les restrictions.
Images d'OS de VM compatibles
Les jobs par lot peuvent être 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 jobs Batch peuvent utiliser des images publiques de Batch ou Compute Engine.
Images Batch : images fournies et gérées par Batch en fonction des OS Compute Engine, stockées dans le projet d'image
batch-custom-imageet recommandées pour les jobs Batch.Les images Batch sont disponibles dans les systèmes d'exploitation suivants. Lorsque vous affichez des familles d'images et des noms d'images à partir de Batch, l'OS est indiqué par le préfixe correspondant.
Batch Debian (préfixe
batch-debian) : un OS basé sur les images Debian de Compute Engine, optimisé pour les jobs Batch. Cet OS est celui par défaut pour les jobs avec des exécutables de script.Batch Container-Optimized OS (préfixe
batch-cos) : système d'exploitation basé sur les images Container-Optimized OS de Compute Engine, optimisé pour les jobs Batch avec conteneurs. Cet OS est celui par défaut pour les jobs avec uniquement des exécutables de conteneur.
Rocky Linux pour le calcul hautes performances (HPC) Batch (préfixe
batch-hpc-rocky) : un OS basé sur les images Rocky Linux pour le HPC de Compute Engine, optimisé pour les jobs Batch avec des charges de travail HPC.Batch CentOS (préfixe
batch-centos) : OS basé sur les images CentOS Linux de Compute Engine, optimisé pour les jobs Batch.
- CentOS pour le calcul hautes performances (HPC) par lot (préfixe
batch-hpc-centos) : un OS basé sur les images HPC CentOS de Compute Engine, optimisé pour les jobs Batch 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 un job, suivez la procédure permettant d'afficher les images d'OS de VM à partir de Batch.
Images Compute Engine : images publiques disponibles sur Compute Engine, 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 (DG) des systèmes d'exploitation suivants :
Images personnalisées : images que vous créez, possédez et dont vous contrôlez l'accès à l'aide de Compute Engine. Pour en savoir plus sur les images personnalisées, consultez la documentation Compute Engine.
Restrictions concernant les images d'OS de VM
Les images d'OS de VM compatibles qu'une tâche peut spécifier sont soumises aux restrictions suivantes :
Il est possible que les images par lot marquées comme obsolètes ne soient pas prises en charge. La durée de vie minimale acceptée pour les images Batch correspond à la date la plus ancienne parmi les suivantes :
- 60 jours après la date de début de l'image 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-p00date du 19 juillet 2023 (20230719). - Date à laquelle la version de base de l'OS Compute Engine est obsolète. La date d'arrêt de chaque version d'OS Compute Engine est indiquée sur la page Détails des systèmes d'exploitation de la documentation Compute Engine.
- 60 jours après la date de début de l'image La date de début d'une image Batch est indiquée dans le nom de l'image. Par exemple, l'image
Certaines configurations de job nécessitent un accès externe à l'image. Plus précisément, lorsqu'un job n'a pas d'accès externe et n'autorise pas l'accès via Cloud NAT ou l'accès privé à Google, seules les images suivantes sont compatibles :
- Pour les jobs qui utilisent des GPU et uniquement des exécutables de conteneur, 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 du règlement relatif aux images de confiance est activée, vous ne pouvez pas utiliser d'image d'OS de VM qui n'est pas autorisée par le règlement relatif aux images de confiance.
Un administrateur de votre projet, dossier ou organisation peut éventuellement configurer la contrainte de règle relative aux images de confiance pour limiter les images d'OS de 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 exiger des utilisateurs qu'ils créent des VM contenant des logiciels approuvés conformes à vos exigences en matière de règles ou de sécurité. Pour en savoir plus, consultez Contrôler l'accès aux images d'OS de VM pour Batch.
L'image d'OS de VM pour votre job doit avoir les pilotes pour l'interface de ses disques de démarrage et tous les volumes de stockage Persistent Disk installés. La plupart des images publiques installent automatiquement les pilotes NVMe et SCSI, y compris toutes les images de traitement par lot.
Vous ne pouvez pas configurer l'interface des disques persistants. L'image de l'OS de la VM nécessite donc les pilotes pour l'interface par défaut.
Si un job spécifie une image d'OS de VM qui n'est ni une image Batch, ni une image personnalisée basée sur une image Batch, Batch installe les packages requis sur les VM du job après leur démarrage. Ces packages requis peuvent varier en fonction des configurations de tâches et changer 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 concernant le type et la taille des disques de démarrage pour Batch. Lorsque vous personnalisez les disques de démarrage d'un job, vous pouvez spécifier l'image, le type et/ou la taille de l'OS de la VM. Pour savoir comment spécifier l'image d'OS de la VM, consultez plutôt la section Options d'image d'OS de VM de ce document.
Pour le type de disque de démarrage, Batch est compatible avec tous les types de disques persistants de la documentation Compute Engine.
Pour la taille du disque de démarrage, Batch est compatible avec toutes les tailles et tous les incréments de disques persistants de la documentation Compute Engine qui répondent aux exigences suivantes :
Pour les jobs par lot, la taille minimale du disque de démarrage est de 30 Go.
Pour qu'un job Batch s'exécute correctement, la taille du disque de démarrage doit être suffisamment grande pour allouer l'image d'OS de la VM du job et les tâches qui s'exécutent sur chaque VM. Par exemple, consultez la formule pour la taille par défaut du disque de démarrage dans ce document.
Étapes suivantes
- En savoir plus sur l'environnement OS d'un job :
- Pour créer un job qui utilise l'environnement OS par défaut, consultez Créer et exécuter un job de base.