Comece a usar o Batch

Esta página descreve como começar a usar o Batch para Google Cloud.

Vista geral

O Batch é um serviço totalmente gerido que lhe permite agendar, colocar em fila e executar cargas de trabalho de processamento em lote em Google Cloud recursos. Por exemplo, pondere usar o Batch para cargas de trabalho de computação de elevado desempenho (HPC), aprendizagem automática (AA) e processamento de dados. Aprovisiona recursos em lote e gere a capacidade em seu nome, o que permite que as cargas de trabalho em lote sejam executadas em grande escala.

Com o processamento em lote, não precisa de configurar nem gerir programadores de tarefas de terceiros, aprovisionar nem desaprovisionar recursos, nem pedir recursos uma zona de cada vez. Para executar uma tarefa, especifica parâmetros para os recursos necessários para a sua carga de trabalho. Em seguida, o Batch obtém recursos e coloca a tarefa em fila para execução. O Batch oferece integração nativa com outros serviços para ajudar no agendamento, na execução, no armazenamento e na análise de tarefas em lote, para que se possa concentrar no envio de uma tarefa e no consumo dos resultados. Google Cloud

O lote é composto pelos seguintes componentes:

  • Tarefa: um programa agendado que executa um conjunto de tarefas até à conclusão sem qualquer interação do utilizador, normalmente para cargas de trabalho computacionais. Por exemplo, um trabalho pode ser um único script de shell ou um cálculo complexo de várias partes.

    Especificamente, uma tarefa em lote representa uma matriz de uma ou mais tarefas e o ambiente no qual essas tarefas são executadas. Define o programa para a tarefa como uma sequência de um ou mais executáveis. Cada tarefa executa a sequência de executáveis nos recursos da tarefa. Pode configurar as tarefas de uma tarefa para serem executadas em paralelo ou sequencialmente.

  • Tarefa: uma execução da sequência de executáveis de um trabalho. Quando um trabalho tem várias tarefas, especifica como quer que cada execução varie ao referenciar a variável de ambiente para o índice de uma tarefa nos executáveis do trabalho.

  • Executável: um script ou um contentor executável que define como parte de uma tarefa.

  • Recursos: a infraestrutura necessária para executar uma tarefa. No mínimo, só tem de especificar os recursos de computação necessários por tarefa: núcleos da CPU, memória e (se necessário) armazenamento adicional no disco de arranque. Opcionalmente, também pode especificar outras opções de recursos para a tarefa. O Batch cria e elimina automaticamente os recursos que cumprem as suas especificações durante o tempo de execução da tarefa.

    Especificamente, cada tarefa em lote é executada num grupo de instâncias geridas (GIG) regional, que é um grupo de uma ou mais instâncias de máquinas virtuais (VMs) do Compute Engine correspondentes, cada uma localizada numa das zonas incluídas. Cada VM tem hardware dedicado para núcleos do CPU e memória, que afetam o desempenho da tarefa, e um disco de arranque, que armazena uma imagem do sistema operativo (SO) e instruções para executar a tarefa. Se especificado, um trabalho também pode incluir ou aceder a recursos adicionais, por exemplo, GPUs ou volumes de armazenamento externos. O número de VMs aprovisionadas para uma tarefa depende dos requisitos de hardware e das opções de agendamento de tarefas que especificar.

Em resumo, o Batch permite-lhe criar e executar tarefas que, cada uma, aprovisiona e usa automaticamente os recursos necessários para executar as respetivas tarefas.

Para mais informações sobre o comportamento e as opções dos trabalhos, consulte a página Vista geral da criação e execução de trabalhos.

Preços

A utilização do processamento em lote não tem custos adicionais. Só lhe é cobrado o custo dos recursos subjacentes necessários para executar os seus trabalhos.

Para mais informações sobre os custos associados ao Batch e como filtrar relatórios de faturação do Google Cloud para ver os custos do Batch, consulte a secção Preços.

Restrições

O processamento em lote tem as seguintes restrições:

  • Não pode exceder as quotas e os limites de lotes do seu projeto.
  • Só pode especificar um tipo de máquina, que pode ser predefinido ou personalizado, por tarefa.
  • Não pode especificar mais do que um grupo de tarefas por tarefa. Todas as tarefas têm apenas um grupo de tarefas denominado group0.

Pré-requisitos

Para começar a usar o processamento em lote, conclua os seguintes pré-requisitos:

  1. Se o seu projeto não tiver usado o Batch antes, ative o Batch para o seu projeto.
  2. Configure o Batch para cada novo utilizador.

Ative o processamento em lote para um projeto

Para começar a usar o Batch com um projeto, faça o seguinte:

  1. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  2. Verify that billing is enabled for your Google Cloud project.

  3. Certifique-se de que o Batch está ativado para o seu projeto:

    1. Enable the Batch, Compute Engine, and Cloud Logging APIs.

      Roles required to enable APIs

      To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

      Enable the APIs

    2. Certifique-se de que o seu projeto tem uma ou mais contas de serviço com as autorizações necessárias para criar e aceder aos recursos para executar tarefas em lote.

      É importante que todos os utilizadores aos quais quer permitir a criação e a execução de tarefas em lote no seu projeto tenham autorização para usar uma destas contas de serviço. Por isso, não selecione contas de serviço que tenham mais autorizações do que as que quer conceder a estes utilizadores.

      A conta de serviço que cada tarefa usa por predefinição é a conta de serviço predefinida do Compute Engine, mas também pode personalizar a conta de serviço que uma tarefa usa.

      A menos que planeie usar apenas a configuração predefinida para as contas de serviço da sua tarefa, conceda as seguintes funções de IAM a quaisquer contas de serviço que o seu projeto use para tarefas do Batch.

      • Batch Agent Reporter (roles/batch.agentReporter) no projeto
      • Para permitir que as tarefas gerem registos no Cloud Logging: Logs Writer (roles/logging.logWriter) no projeto

      A conta de serviço que usa para uma tarefa também pode exigir funções adicionais com base nas opções de configuração que quer usar para as suas tarefas. Consulte a documentação de cada tarefa para ver se são necessárias autorizações adicionais. Para mais informações sobre como conceder funções a contas de serviço, consulte os artigos Restringir contas de serviço e Gerir o acesso a contas de serviço.

    3. Certifique-se de que conhece o agente do serviço Batch do seu projeto:

      Depois de criar uma tarefa em lote, o agente do serviço de processamento em lote é criado automaticamente para o seu projeto com o seguinte nome:

      service-PROJECT_NUMBER@gcp-sa-cloudbatch.iam.gserviceaccount.com
      

      Substitua PROJECT_NUMBER pelo número do projeto do seu projeto.

      O agente do serviço Batch recebe automaticamente a função de IAM Agente do serviço Google Batch (roles/batch.serviceAgent). Esta configuração é necessária para que o seu projeto use o Batch.

      No entanto, determinados exemplos de utilização, por exemplo, executar uma tarefa numa rede VPC partilhada, requerem que conceda autorizações adicionais ao agente do serviço Batch do seu projeto.

      Para mais informações, consulte o artigo Agentes de serviços.

Configure o Batch para um novo utilizador

Para começar a usar o Batch como utilizador, faça o seguinte:

  1. Para receber as autorizações necessárias para usar o Batch, peça ao seu administrador que lhe conceda as funções de IAM necessárias no projeto. Consulte a documentação de cada tarefa para ver as autorizações necessárias.

    Por exemplo, se quiser começar a aprender a usar o Batch criando uma tarefa básica, considere pedir funções para as seguintes tarefas:

    • Para criar trabalhos:
    • Para listar e descrever tarefas: editor de tarefas em lote (roles/batch.jobsEditor) ou visualizador de tarefas em lote (roles/batch.jobsViewer) no projeto
    • Para ver registos de tarefas: visualizador de registos (roles/logging.viewer) no projeto
    • Para eliminar tarefas: editor de tarefas de lote (roles/batch.jobsEditor) no projeto

    Para mais informações sobre a concessão de funções, consulte o artigo Gerir acesso.

  2. Se quiser usar os exemplos de linhas de comando para o Batch, configure a CLI gcloud fazendo o seguinte. Saiba mais sobre a autenticação para a CLI do Google Cloud.

    1. Instale a CLI Google Cloud. Após a instalação, inicialize a CLI gcloud executando o seguinte comando:

      gcloud init

      Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.

    2. Recomendado: defina um projeto predefinido com o comando gcloud config set project:

      gcloud config set project PROJECT_ID
      

      Substitua PROJECT_ID pelo ID do projeto do seu projeto.

  3. Se quiser usar os exemplos da API ou os exemplos da biblioteca cliente para o Batch, consulte o artigo Autentique-se no Batch.

Obter apoio técnico

Pode debater o processamento em lote com a comunidade através da etiqueta de processamento em lote nos fóruns do Google Developers Program.

Se tiver problemas com o Batch, consulte a documentação de resolução de problemas.

Para receber apoio técnico ou enviar feedback sobre o Batch, use os seguintes recursos:

  • Para problemas de faturação com a conta Google Cloud, contacte o apoio técnico de faturação.

  • Se tiver um pacote de apoio técnico pago, contacte o Google Cloud apoio técnico diretamente para resolver problemas com o processamento em lote.

    Google Cloud oferece diferentes pacotes de apoio técnico para satisfazer diferentes necessidades, como cobertura 24 horas por dia, 7 dias por semana, apoio técnico por telefone e acesso a um gestor de apoio técnico. Para mais informações, consulte o Google Cloud apoio técnico.

  • Para enviar feedback ou pedidos de funcionalidades para o Batch, ou para comunicar problemas do Batch sem um pacote de apoio técnico pago, clique no botão Enviar feedback, que pode encontrar no início e no final de cada página de documentação do Batch. Em seguida, selecione uma das seguintes opções:

    • Para feedback relacionado com a documentação de processamento em lote, selecione "Feedback sobre a documentação".
    • Para todo o outro feedback sobre o Batch, selecione "Feedback sobre o produto".

O que se segue?