Neste documento, explicamos os conceitos do ambiente de sistema operacional (SO) (discos de inicialização e imagem do SO) para as instâncias de máquina virtual (VM) do Compute Engine que executam jobs do Batch.
Um job é executado com a execução das 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. Opcionalmente, é possível configurar o ambiente do SO da VM para um job realizando um dos seguintes procedimentos:
- 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 e as opções de imagem do SO da VM e do disco de inicialização.
Quando configurar o ambiente do SO
Revise 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 do SO da VM padrão.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 lote.
Se você preferir ou não usar a imagem do SO da VM padrão para o job. Por exemplo, se os executáveis definidos para um job exigirem um aplicativo não compatível com a imagem padrão, será possível especificar uma imagem do SO da VM pública diferente. Se preferir pré-instalar um aplicativo necessário para que o job ajude a 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ê prefere não usar ou não pode usar o disco de inicialização padrão para o job. Por exemplo, se os executáveis ou a imagem do SO da VM que você definiu para um job exigirem mais espaço de armazenamento no disco de inicialização, talvez seja necessário personalizar o disco de inicialização de um job para aumentar o tamanho dele.
Se você ainda não tem 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. 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, use a solução de problemas para determinar se o problema foi causado pela imagem do SO da VM ou pelo disco de inicialização.
Caso contrário, se você não precisar e não quiser configurar a imagem do SO da VM e/ou o disco de inicialização para um job, deixe essas propriedades indefinidas para usar a configuração padrão.
Ambiente do 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, é possível usar a configuração padrão como referência ao determinar como configurar o ambiente do SO para um job.
Quando você cria um job e não define a imagem do SO da VM, ele usa uma das seguintes imagens por padrão:
- Se o job tiver apenas executáveis em 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 em lote.
Quando você cria um job e não define as outras propriedades dos discos de inicialização, o job usa as seguintes opções por padrão:
Tipo de disco permanente: o padrão é
pd-balanced
.size: o tamanho padrão do disco de inicialização de cada VM é determinado pela seguinte fórmula de $ defaultBootDiskSize $. Além disso, o tamanho padrão é arredondado para pelo menos 30 GB e no máximo 10.000 GB.
\[ defaultBootDiskSize=RestrictedSize+(taskSize*paraleloTasksPerVm) \]
Esta fórmula tem os seguintes valores:
$ reserveSize $: o tamanho reservado em GB para o software necessário para a VM, como a imagem do SO da VM. Como tamanho padrão do disco de inicialização, o Batch reserva 10 GB.
$ taskSize $: o tamanho do disco de inicialização de cada tarefa em GB, que é determinado pela conversão das unidades do campo de tamanho do disco de inicialização por tarefa (
bootDiskMib
).$ paraleloTasksPerVM $: o número máximo de tarefas que podem ser executadas em uma VM simultaneamente. Para mais informações, consulte a fórmula para $ paralelaTasksPerVM $.
interface: a interface é selecionada automaticamente como NVMe ou SCSI, dependendo do tipo de máquina das VMs do job. Opcionalmente, é possível especificar um tipo de máquina ao definir o tipo de recursos a serem usados por um job. Para conhecer 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 de SO da VM compatíveis com os jobs em lote e as restrições das imagens de SO da VM compatíveis. Ao especificar a imagem do SO da VM para um job, é possível definir um nome ou uma família de imagens para qualquer uma das imagens de SO de VM compatíveis permitidas pelas restrições.
Imagens de SO de VM compatíveis
Os jobs em lote podem ser 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 em lote 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 do Batch.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, otimizado para jobs em lote com contêineres. Esse SO é o padrão para jobs que têm apenas executáveis em contêiner. - Batch CentOS (prefixo
batch-centos
): um SO baseado no CentOS Linux que é otimizado para jobs em lote. - CentOS de computação de alto desempenho (HPC) em lote (prefixo
batch-hpc-centos
): um SO baseado nas imagens HPC do CentOS do Google Cloud que são otimizadas para jobs em lote com cargas de trabalho de HPC. - Rocky Linux de computação de alto desempenho (HPC) em lote (prefixo
batch-hpc-rocky
): um SO baseado nas imagens HPC do Rocky Linux do Google Cloud otimizadas para jobs em lote com cargas de trabalho de HPC.
Para ver os nomes e famílias de imagens específicos do Batch que podem ser especificados para um job, siga as etapas para visualizar imagens de SO da VM do Batch.
- Debian em lote (prefixo
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:
- Debian (em inglês)
- CentOS Linux (não CentOS Stream)
- Linux Rocky
Imagens personalizadas: imagens que você cria, tem e controla usando o Compute Engine. Saiba mais sobre imagens personalizadas na documentação do Compute Engine.
Restrições para imagens de SO da VM
As imagens de SO da 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 é de 180 dias. A data de início de uma imagem em lote é 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 suporte para 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 imagens a seguir são aceitas:
- Para jobs que usam GPUs e apenas contêineres executáveis, apenas a imagem padrão (a imagem mais recente do Batch Container-Optimized OS) é aceita.
- Caso contrário, os jobs só serão compatíveis com imagens em lote.
Se a restrição da política de imagens confiáveis estiver ativada, não será possível usar nenhuma imagem do SO da VM que ela 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 um software aprovado que atenda aos requisitos de política ou segurança. Para mais informações, consulte Controlar o acesso a imagens do SO da VM para lote.
A imagem do SO da VM do job precisa ter os drivers para a interface dos discos de inicialização e todos os volumes de armazenamento em disco permanente instalados. A maioria das imagens públicas instala automaticamente os drivers NVMe e SCSI, incluindo todas as imagens em lote.
Como não é possível configurar a interface dos discos permanentes, a imagem do SO da VM requer os drivers da interface padrão.
Se um job especificar qualquer imagem do SO da VM que não seja uma imagem em lote nem uma imagem personalizada com base em uma imagem em lote, o lote instalará os pacotes necessários nas VMs do job depois que eles forem iniciados. Esses pacotes necessários podem variar para diferentes configurações de job e mudar ao longo do tempo, além de serem 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 dos discos de inicialização do 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.
Para o 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 atendem 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
- Saiba mais sobre o ambiente do SO de um job:
- Como alternativa, para criar um job que use o ambiente do SO padrão, consulte Criar e executar um job básico.