Este documento explica os conceitos do 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.
Um job é executado executando 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. Você pode configurar o ambiente do SO da VM para um job fazendo 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 e/ou o tipo de disco, personalize os discos de inicialização do job.
As seções a seguir descrevem 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
Leia esta seção para determinar se você precisa configurar a imagem do SO da VM e/ou 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 de política de imagens confiáveis (
compute.trustedImageProjects
) impedir a criação de um job com a imagem padrão do SO da VM.Para mais informações sobre a restrição de políticas 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 padrão do SO da VM para seu job. Por exemplo, se os runnables definidos para um job precisarem de um aplicativo que não tem suporte da imagem padrão, você poderá especificar uma imagem pública diferente do SO da VM. Como alternativa, se você quiser pré-instalar um aplicativo necessário para reduzir o tempo de execução do job, crie e especifique uma imagem personalizada.
Configure o disco de inicialização para um job nos seguintes casos:
- Se você não quiser ou não puder 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 exigem mais espaço de armazenamento no disco de inicialização, talvez seja necessário personalizar o disco de inicialização para aumentar o tamanho do job.
Se você ainda não tiver certeza se o trabalho exige a configuração da imagem do SO da VM e/ou dos discos de inicialização, consulte a próxima seção 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 usando a solução de problemas.
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 padrão do SO
Leia 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, você pode usar a configuração padrão como referência ao determinar como quer configurar o ambiente do SO para um job.
Quando você cria um job e não define a imagem do SO da VM, o job usa por padrão uma das seguintes imagens do SO da VM:
- Se o job tiver apenas executáveis de contêiner, ele vai usar a versão mais recente da imagem do Container-Optimized OS (COS, na sigla em inglês) do lote.
- Caso contrário, o job vai usar a versão mais recente da imagem Debian do 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:
Tipo de disco permanente: o tipo de disco permanente padrão para discos de inicialização é
pd-balanced
.size: o tamanho padrão de cada disco de inicialização da VM é determinado pela seguinte fórmula para \({defaultBootDiskSize}\). Além disso, o tamanho padrão é arredondado para pelo menos 30 GB e no máximo 10.000 GB.
\[{defaultBootDiskSize}={reservedSize}+({taskSize}*{parallelTasksPerVm})\]
Esta 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 lote 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 de \({parallelTasksPerVM}\).
Interface: a interface é selecionada automaticamente como NVMe ou SCSI, dependendo do tipo de máquina das VMs do job. Você pode especificar 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 Batch, incluindo todos os tipos de imagens do SO da VM que os jobs de lote podem oferecer suporte e as restrições para as imagens do SO da VM com suporte. Ao especificar a imagem do SO da VM para um job, é possível especificar um nome ou uma família de imagens para qualquer uma das imagens do SO da VM com suporte que são permitidas pelas restrições.
Imagens do SO da VM com suporte
Os trabalhos em lote podem ser usados 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 com base em SOs do Compute Engine, armazenadas no projeto de imagem
batch-custom-image
e recomendadas para jobs em lote.As imagens em lote estão disponíveis nos seguintes SOs: Quando você acessa famílias e nomes de imagens no lote, o SO é indicado pelo prefixo correspondente.
Batch Debian (prefixo
batch-debian
): um SO baseado em imagens do Debian do Compute Engine otimizado para trabalhos em lote. Esse SO é o padrão para jobs com executáveis de script.Batch Container-Optimized OS (
batch-cos
prefix): um SO baseado em imagens do Container-Optimized OS do Compute Engine otimizado para trabalhos em lote com contêineres. Esse SO é o padrão para jobs com apenas executáveis de contêiner.Computação de alto desempenho (HPC) em lote do Rocky Linux (prefixo
batch-hpc-rocky
): um SO baseado em imagens do Rocky Linux do HPC do Compute Engine otimizado para trabalhos em lote com cargas de trabalho de HPC.Batch CentOS (prefixo
batch-centos
): um SO baseado em imagens do CentOS Linux do Compute Engine otimizado para trabalhos em lote.
- Computação de alto desempenho (HPC) em lote do CentOS (prefixo
batch-hpc-centos
): um SO baseado em imagens do CentOS de HPC do Compute Engine otimizado para jobs em lote com cargas de trabalho de HPC.
Para conferir os nomes e as famílias de imagens específicas do Batch que podem ser especificadas para um job, siga as etapas para acessar imagens do SO da VM no Batch.
Imagens do Compute Engine:imagens públicas disponíveis no Compute Engine, descritas na página Detalhes do sistema operacional da documentação do Compute Engine.
O lote tem suporte apenas para imagens do Compute Engine de disponibilidade geral (GA) dos seguintes SOs:
- Debian (em inglês)
- Rocky Linux
Imagens personalizadas:imagens que você cria, possui 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 do SO da VM com suporte que um job pode especificar estão sujeitas às seguintes restrições:
As imagens em lote marcadas como descontinuadas podem não ser compatíveis. A vida útil mínima com suporte para imagens em lote é a data mais antiga das seguintes:
- 60 dias após a data de início da imagem. A data de início de uma
imagem de lote é indicada no nome da imagem. Por
exemplo, a imagem
batch-cos-stable-official-20230719-00-p00
é de 19 de julho de 2023 (20230719
). - A data em que a versão do SO do Compute Engine de base foi descontinuada. A data em que cada versão do SO do Compute Engine foi descontinuada é listada na página Detalhes do sistema operacional na documentação do Compute Engine.
- 60 dias após a data de início da imagem. A data de início de uma
imagem de lote é indicada no nome da imagem. Por
exemplo, a imagem
Algumas configurações de jobs exigem acesso externo à imagem. Especificamente, quando um job não tem acesso externo e não permite acesso pelo Cloud NAT ou pelo Acesso privado do Google, apenas as seguintes imagens são compatíveis:
- Para jobs que usam GPUs e apenas executáveis de contêiner, apenas a imagem padrão (a imagem mais recente do Container-Optimized OS em lote) é aceita.
- Caso contrário, os jobs só vão oferecer suporte a imagens do Batch.
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 a política de imagem confiável não permita.
Um administrador do projeto, da pasta ou da organização pode configurar a restrição de 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 de política de imagens confiáveis pode ser usada para exigir que os usuários criem VMs que contenham 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 o Batch.
A imagem do SO da VM para seu job precisa ter os drivers para a interface dos discos de inicialização e todos os volumes de armazenamento de disco permanente instalados. A maioria das imagens públicas instala automaticamente os drivers NVMe e SCSI, incluindo todas as imagens do lote.
Não é possível configurar a interface de discos persistentes. Portanto, 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 do Batch nem uma imagem personalizada baseada em uma imagem do Batch, o Batch vai instalar os pacotes necessários nas VMs do job depois que elas forem iniciadas. Esses pacotes obrigatórios podem variar para diferentes configurações de jobs e mudar ao longo do tempo. Eles são necessários para que o lote execute o job.
Opções de disco de inicialização
Esta seção descreve as opções de tipo e tamanho de discos de inicialização para 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 oferece suporte a todos os tipos de disco permanente na documentação do Compute Engine.
Para o tamanho do disco de inicialização, o Batch oferece suporte a 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 para o tamanho padrão do disco de inicialização neste documento.
A seguir
- Saiba mais sobre o ambiente do SO para uma job:
- Como alternativa, para criar um job que usa o ambiente padrão do SO, consulte Criar e executar um job básico.