Présentation de l'environnement d'OS des VM d'une tâche

Ce document explique les concepts liés à l'environnement du système d'exploitation (OS) (disques de démarrage et image d'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 d'OS de 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 d'OS de 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 d'OS, l'environnement d'OS par défaut, les options d'image d'OS de VM et les options de disque de démarrage.

Quand configurer l'environnement d'OS

Consultez cette section pour déterminer si vous devez configurer l'image d'OS de VM et/ou les disques de démarrage lorsque vous créez un job ou utilisez la configuration par défaut.

Configurez l'image d'OS de VM pour un job dans les cas suivants :

  • Si la contrainte de règle d'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 d'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 non compatible avec l'image par défaut, vous pouvez spécifier une autre image d'OS de VM publique. Vous pouvez également créer et spécifier une image personnalisée si vous souhaitez préinstaller une application requise pour votre job afin de réduire le temps d'exécution.

Configurez le disque de démarrage pour 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 un espace de stockage supplémentaire sur le disque de démarrage, vous devrez peut-être personnaliser le disque de démarrage pour un job afin d'augmenter sa taille.

Si vous ne savez toujours pas si votre job nécessite que vous configuriez l'image d'OS de 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 VM ou au disque de démarrage en effectuant un 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 un job, 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 d'une image d'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 lorsque vous déterminez comment configurer l'environnement d'OS pour un job.

Lorsque vous créez un job et ne définissez pas l'image d'OS de 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 Batch Debian.

Lorsque vous créez un job et 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 disque persistant : le type de disque persistant par défaut pour les disques de démarrage est pd-balanced.

  • Taille : 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 à au moins 30 Go et à au plus 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 d'OS de 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, déterminée en convertissant les unités du champ de taille du disque de démarrage par tâche (bootDiskMib).

    • \({parallelTasksPerVM}\): nombre maximal de tâches pouvant s'exécuter 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 concernant les images d'OS de VM compatibles. Lorsque vous spécifiez l'image d'OS de VM pour un job, vous pouvez spécifier un nom d'image ou une famille d'images pour l'une des images d'OS de VM compatibles autorisées par les restrictions.

Images d'OS de VM compatibles

Les jobs Batch peuvent être compatibles avec les types d'images d'OS de VM suivants :

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

  • 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'un job peut spécifier sont soumises aux restrictions suivantes :

  • Les images Batch marquées comme obsolètes ne sont peut-être pas compatibles. La durée de vie minimale acceptée pour les images Batch est la plus ancienne des dates 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-p00 date du 19 juillet 2023 (20230719).
    • Date d'obsolescence de la version d'OS Compute Engine de base. La date d'obsolescence 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.
  • Certaines configurations de job nécessitent un accès externe pour 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 compatible.
    • Sinon, les jobs ne sont compatibles qu'avec les images Batch.
  • Si la contrainte de règlement relatif aux images de confiance est activée, vous ne pouvez pas utiliser d'image d'OS de VM non 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 d'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 d'images de confiance peut être utilisée pour exiger des utilisateurs qu'ils créent des VM contenant des logiciels approuvés qui répondent à 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 de votre job doit comporter les pilotes de l'interface de ses disques de démarrage et tous les volumes de stockage sur disque persistant installés. La plupart des images publiques installent automatiquement les pilotes NVMe et SCSI, y compris toutes les images Batch.

    Vous ne pouvez pas configurer l'interface des disques persistants. L'image d'OS de VM nécessite donc les pilotes de 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 job et évoluer au fil du temps. Ils sont nécessaires pour que Batch exécute le job.

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 pour un job, vous pouvez spécifier l'image d'OS de VM, le type et/ou la taille. Pour savoir comment spécifier l'image d'OS de VM, consultez Options d'image d'OS de VM dans ce document plutôt.

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 Batch, 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 VM du job et les tâches qui s'exécutent sur chaque VM. Par exemple, consultez la formule pour la taille de disque de démarrage par défaut dans ce document.

Étape suivante