Visão geral do ambiente do SO para VMs de um job

Neste documento, explicamos conceitos para o ambiente do sistema operacional (SO), os discos de inicialização e a imagem do SO, para as instâncias de máquina virtual (VM) do Compute Engine que executam jobs em lote.

Para executar um job, execute as instruções no disco de inicialização de cada uma das VMs. Cada disco de inicialização contém um carregador de inicialização, um sistema de arquivos e um SO. Também é possível configurar o ambiente do SO da VM para um job realizando uma das seguintes ações:

  • Para configurar apenas o software nos discos de inicialização, especifique a imagem do SO da VM do job.
  • Para configurar qualquer propriedade do disco de inicialização, incluindo a imagem do SO da VM, o tamanho do disco e/ou o tipo de disco, personalize os discos de inicialização do job.

Nas seções a seguir, descrevemos quando configurar o ambiente do SO, o ambiente padrão do SO, as opções de imagem do SO da VM e as opções de disco de inicialização.

Quando configurar o ambiente do SO

Consulte esta seção para determinar se é preciso configurar a imagem do SO da VM e/ou os discos de inicialização ao criar um job ou usar a configuração padrão.

Configure a imagem do SO da VM para um job nos seguintes casos:

  • Se a restrição da política de imagens confiáveis (compute.trustedImageProjects) impedir que você crie um job com a imagem padrão do SO da VM.

    Para mais informações sobre a restrição da política de imagens confiáveis, consulte Controlar o acesso às imagens do SO da VM para o Batch.

  • Se você preferir não usar ou não puder usar a imagem do SO de VM padrão para seu job. Por exemplo, se os executáveis definidos para um job exigirem um aplicativo que não é compatível com a imagem padrão, especifique uma imagem do SO de VM pública diferente. Como alternativa, se você quiser pré-instalar um aplicativo necessário para o job para reduzir o tempo de execução, crie e especifique uma imagem personalizada.

Configure o disco de inicialização para um job nos seguintes casos:

  • Se você preferir não usar ou não puder usar o disco de inicialização padrão para seu job. Por exemplo, se os executáveis ou a imagem do SO da VM definida para um job exigirem mais espaço de armazenamento no disco de inicialização, talvez seja necessário personalizar o disco de inicialização para que um job aumente o tamanho dele.

Se você ainda não tiver certeza se o job exige a configuração da imagem do SO da VM e/ou dos discos de inicialização, consulte a seção a seguir para entender a configuração padrão. Além disso, você também pode tentar criar e executar o job com a configuração padrão. Se o job falhar com a configuração padrão, tente determinar se o problema foi causado pela imagem do SO da VM ou pelo disco de inicialização com a solução de problemas.

Caso contrário, se você não precisar nem quiser configurar a imagem do SO da VM e/ou o disco de inicialização de um job, deixe essas propriedades indefinidas para usar a configuração padrão.

Ambiente de SO padrão

Consulte esta seção para entender a configuração padrão da imagem do SO da VM e dos discos de inicialização de um job. Por exemplo, use a configuração padrão como referência ao determinar como você quer configurar o ambiente do SO para um job.

Quando você cria um job sem definir a imagem do SO da VM, ele usa uma das imagens do SO da VM a seguir por padrão:

  • Se o job tiver apenas executáveis de contêiner, ele usará a versão mais recente da imagem do Batch Container-Optimized OS (COS).
  • Caso contrário, o job usará a versão mais recente da imagem Debian do Batch.

Quando você cria um job sem definir as outras propriedades dos discos de inicialização, ele usa as seguintes opções por padrão:

  • tipo de disco permanente: o tipo de disco permanente padrão para discos de inicialização é pd-balanced.

  • size: o tamanho padrão do disco de inicialização de cada VM é determinado pela fórmula a seguir de \({defaultBootDiskSize}\). Além disso, o tamanho padrão é arredondado para ser de pelo menos 30 GB e no máximo 10.000 GB.

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

    Essa fórmula tem os seguintes valores:

    • \({reservedSize}\): o tamanho reservado em GB para o software necessário para a VM, como a imagem do SO da VM. Para o tamanho padrão do disco de inicialização, o Batch reserva 10 GB.

    • \({taskSize}\): o tamanho do disco de inicialização para cada tarefa em GB, que é determinado pela conversão das unidades do campo tamanho do disco de inicialização por tarefa (bootDiskMib).

    • \({parallelTasksPerVM}\): o número máximo de tarefas que podem ser executadas em uma VM simultaneamente. Para mais informações, consulte a fórmula para \({parallelTasksPerVM}\).

  • interface: a interface é selecionada automaticamente como NVMe ou SCSI, dependendo do tipo de máquina das VMs do job. Se quiser, especifique um tipo de máquina ao definir o tipo de recursos que um job vai usar. Para a interface padrão de cada tipo de máquina, consulte Como escolher uma interface na documentação do Compute Engine.

Opções de imagem do SO da VM

As seções a seguir descrevem as opções de imagem do SO da VM para o Batch, incluindo todos os tipos de imagens do SO da VM compatíveis com os jobs do Batch e as restrições das imagens do SO da VM compatíveis. Ao especificar a imagem do SO da VM para um job, é possível especificar um nome ou família de imagens para qualquer uma das imagens de SO de VM compatíveis permitidas pelas restrições.

Imagens do SO da VM com suporte

Os jobs em lote são compatíveis com os seguintes tipos de imagens do SO da VM:

  • Imagens públicas: imagens fornecidas e mantidas pelo Google, por comunidades de código aberto e por fornecedores terceirizados. Especificamente, os jobs do Batch podem usar imagens públicas do Batch ou do Compute Engine.

    • Imagens em lote: imagens fornecidas e mantidas pelo Batch, armazenadas no projeto de imagem batch-custom-image e recomendadas para jobs em lote.

      As imagens em lote estão disponíveis nos sistemas operacionais a seguir. Quando você visualiza famílias e nomes de imagens do Batch, o SO é indicado pelo prefixo correspondente.

      • Debian em lote (prefixo batch-debian): um SO baseado em Debian otimizado para jobs em lote. Esse SO é o padrão para jobs com qualquer script executável.
      • Batch Container-Optimized OS (prefixo batch-cos): um SO baseado no Container-Optimized OS do Google Cloud que é otimizado para jobs em lote com contêineres. Esse SO é o padrão para jobs apenas com executáveis de contêiner.
      • Batch CentOS (prefixo batch-centos): um SO baseado no CentOS Linux otimizado para jobs em lote.
      • Computação em lote de alto desempenho (HPC) CentOS (prefixo batch-hpc-centos): um SO baseado nas imagens de HPC do CentOS do Google Cloud que é otimizado para jobs em lote com cargas de trabalho HPC.
      • Computação em lote de alto desempenho (HPC, na sigla em inglês) Rocky Linux (prefixo batch-hpc-rocky): um SO baseado nas imagens Rocky Linux HPC do Google Cloud que é otimizada para jobs em lote com cargas de trabalho HPC.

      Para ver os nomes e as famílias específicos de imagens do Batch que podem ser especificados para um job, siga as etapas para visualizar imagens do SO da VM do Batch.

    • Imagens do Compute Engine: imagens públicas disponíveis no Compute Engine, descritas na página Detalhes do sistema operacional na documentação do Compute Engine.

      O Batch é compatível apenas com imagens do Compute Engine com disponibilidade geral (GA, na sigla em inglês) dos seguintes sistemas operacionais:

  • Imagens personalizadas: imagens que você cria, tem e controla o acesso usando o Compute Engine. Saiba mais sobre imagens personalizadas na documentação do Compute Engine.

Restrições para imagens do SO da VM

As imagens de SO de VM compatíveis que um job pode especificar estão sujeitas às seguintes restrições:

  • Para imagens em lote, o ciclo de vida de suporte garantido da imagem é de 180 dias. A data de início de uma imagem do Batch é indicada no nome da imagem. Por exemplo, a imagem batch-cos-stable-official-20230719-00-p00 é de 19 de julho de 2023 (20230719). Não há garantia de compatibilidade com imagens em lote marcadas como descontinuadas.

  • Algumas configurações de job exigem acesso externo à imagem. Especificamente, quando um job não tem acesso externo e não permite acesso por meio do Cloud NAT ou do Acesso privado do Google, apenas as seguintes imagens são aceitas:

    • Para jobs que usam GPUs e somente execuções de contêiner, somente a imagem padrão (a imagem mais recente do Batch Container-Optimized OS) é aceita.
    • Caso contrário, os jobs dão suporte apenas a imagens em lote.
  • Se a restrição da política de imagens confiáveis estiver ativada, não será possível usar nenhuma imagem de SO da VM que a política não permita.

    Um administrador do projeto, da pasta ou da organização pode configurar a restrição da política de imagens confiáveis para restringir as imagens do SO da VM que podem ser usadas para criar discos de inicialização. Por exemplo, a restrição da política de imagens confiáveis pode ser usada para exigir que os usuários criem VMs que contenham software aprovado que atenda à sua política ou aos requisitos de segurança. Para mais informações, consulte Controlar o acesso a imagens do SO da VM para o Batch.

  • A imagem do SO da VM referente ao job precisa ter os drivers para a interface dos discos de inicialização e volumes de armazenamento de disco permanente instalados. A maioria das imagens públicas instala automaticamente drivers NVMe e SCSI, incluindo todas as imagens em lote.

    Não é possível configurar a interface de discos permanentes, portanto, a imagem do SO da VM exige os drivers da interface padrão.

  • Se um job especificar qualquer imagem do SO de VM que não seja uma imagem em lote nem uma imagem personalizada com base em uma imagem em lote, o Batch instalará os pacotes necessários nas VMs do job após a inicialização. Esses pacotes obrigatórios podem variar de acordo com as diferentes configurações de job e mudar ao longo do tempo. Eles são necessários para que o Batch execute o job.

Opções de disco de inicialização

Nesta seção, descrevemos as opções de tipo e tamanho de discos de inicialização para o Batch. Ao personalizar os discos de inicialização de um job, é possível especificar a imagem, o tipo e/ou o tamanho do SO da VM. Para informações sobre como especificar a imagem do SO da VM, consulte Opções de imagem do SO da VM neste documento.

Para o tipo de disco de inicialização, o Batch é compatível com todos os tipos de disco permanente na documentação do Compute Engine.

Quanto ao tamanho do disco de inicialização, o Batch é compatível com todos os tamanhos e incrementos de discos permanentes na documentação do Compute Engine que atendam aos seguintes requisitos:

  • Para jobs em lote, o tamanho mínimo do disco de inicialização é de 30 GB.

  • Para que um job em lote seja executado corretamente, o tamanho do disco de inicialização precisa ser grande o suficiente para alocar a imagem do SO da VM do job e as tarefas executadas em cada VM. Por exemplo, consulte a fórmula do tamanho padrão do disco de inicialização neste documento.

A seguir