Este documento explica como usar o VPC Service Controls com o Batch. O VPC Service Controls permite proteger os recursos e dados dos serviços do Google Cloud isolando recursos específicos em perímetros de serviço. Um perímetro de serviço bloqueia conexões com serviços do Google Cloud fora do perímetro e qualquer conexão da Internet que não seja explicitamente permitida.
- Configurar um perímetro de serviço do VPC Service Controls para ser usado Batch, consulte Configurar um perímetro de serviço para o Batch neste documento.
- Se o projeto ou a rede usa o VPC Service Controls para restringir acesso à rede para o Batch, configure Jobs em lote a serem executados no perímetro de serviço necessário. Para saber como, consulte Criar um job executado em um perímetro de serviço neste documento.
Para mais informações sobre conceitos de rede e quando configurar a rede, consulte Visão geral da rede em lote.
Antes de começar
- Se você nunca usou o Batch, consulte Começar a usar o Batch e ative o Batch concluindo os pré-requisitos para projetos e usuários.
-
Para receber as permissões necessárias para usar os controles de serviço da VPC com o Batch, peça ao administrador para conceder a você os seguintes papéis do IAM:
-
Para configurar um perímetro de serviço:
Editor do Access Context Manager (
roles/accesscontextmanager.policyEditor
) no projeto -
Para criar um job:
-
Editor de jobs em lote (
roles/batch.jobsEditor
) no projeto -
Usuário da conta de serviço (
roles/iam.serviceAccountUser
) na conta de serviço do job, que é a conta de serviço padrão do Compute Engine
-
Editor de jobs em lote (
-
Para identificar o perímetro de serviço de um projeto ou rede:
Leitor do Access Context Manager (
roles/accesscontextmanager.policyReader
) no projeto -
Para identificar a rede e a sub-rede de um job:
Leitor da rede do Compute (
roles/compute.networkViewer
) no projeto
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Também é possível conseguir as permissões necessárias por meio de papéis personalizados ou de outros papéis predefinidos.
-
Para configurar um perímetro de serviço:
Editor do Access Context Manager (
-
Se você criar um job que é executado em um perímetro de serviço, será necessário identificar a
rede que quer usar para o job. A rede especificada para um
job executado em um perímetro de serviço precisa atender aos seguintes requisitos:
- A rede é uma rede de nuvem privada virtual (VPC, na sigla em inglês) que está no mesmo projeto do job ou é uma rede VPC compartilhada hospedada ou compartilhada com o projeto do job.
- A rede inclui uma sub-rede no local onde você quer executar o job.
- A rede está no perímetro de serviço necessário e usa o Acesso privado do Google para permitir o acesso aos domínios das APIs e dos serviços usados pelo job. Para mais informações, consulte Configurar um perímetro de serviço para o Batch neste documento.
Configurar um perímetro de serviço para o Batch
Para configurar um perímetro de serviço para o Batch, faça o seguinte:
Planeje a configuração do perímetro de serviço. Para ter uma visão geral dos estágios de configuração dos perímetros de serviço, consulte a documentação do VPC Service Controls para Configuração e detalhes do perímetro de serviço.
Para usar o Batch, o perímetro de serviço precisa atender aos seguintes requisitos:
Serviços restritos:para proteger o Batch em um perímetro de serviço, é preciso incluir os serviços do Google Cloud que para os jobs em lote nesse perímetro, como os seguintes serviços:
- API Batch (
batch.googleapis.com
) - API Cloud Logging (
logging.googleapis.com
): obrigatória se você quiser os jobs para gravar registros no Cloud Logging. (Recomendado) - API Container Registry (
containerregistry.googleapis.com
): Obrigatório se você enviar um job que usa qualquer contêiner com uma imagem de Container Registry. - API Artifact Registry (
artifactregistry.googleapis.com
): obrigatório se você enviar um job que usa contêineres com uma imagem do Artifact Registry. - API Filestore (
file.googleapis.com
): obrigatório se o job usar um compartilhamento de arquivos do Filestore. - API Cloud Storage (
storage.googleapis.com
): obrigatório para alguns jobs que usam um bucket do Cloud Storage. Obrigatório se você usar uma imagem para o job do Batch que não tenha o agente de serviço do Batch pré-instalado.
Para saber como ativar cada um desses serviços no seu perímetro de serviço, consulte Serviços acessíveis por VPC.
Para cada serviço que você incluir, exceto o Batch, também será necessário verificar se o perímetro do serviço atende aos requisitos listados para esse serviço na documentação Produtos e limitações com suporte do VPC Service Controls.
- API Batch (
Redes VPC: cada job do Batch precisa de uma rede VPC. Portanto, seu perímetro de serviço precisa incluir uma rede VPC em que os jobs do Batch possam ser executados. Para saber como configurar uma rede VPC que possa executar seus trabalhos em lote em um perímetro de serviço, consulte os seguintes documentos:
- Para uma visão geral do uso de redes VPC em um perímetro de serviço, consulte Gerenciamento de redes VPC em perímetros de serviço.
- Para saber como usar o Acesso particular do Google com o VPC Service Controls para configurar o acesso aos serviços do Google Cloud necessários para seus trabalhos em lote, consulte Configurar a conectividade particular com APIs e serviços do Google.
- Para mais informações sobre os requisitos de rede Jobs em lote, consulte Visão geral da rede de empregos.
Criar um novo perímetro de serviço ou atualize um perímetro de serviço atual. para atender a esses requisitos.
Criar um job que é executado em um perímetro de serviço
Ao criar um job executado em um perímetro de serviço, também é preciso bloquear o acesso externo de todas as VMs em que um job é executado e especificar uma rede e que permitem que o job acesse as APIs necessárias.
Para criar um job que seja executado em um perímetro de serviço, siga as etapas na documentação de Criar um job que bloqueia o acesso externo para todas as VMs e especifique uma rede que atenda aos requisitos de rede para um job executado em um perímetro de serviço.
A seguir
- Se você tiver problemas para criar ou executar um job, consulte Solução de problemas.
- Saiba mais sobre redes.
- Saiba mais sobre como criar um job.
- Saiba como acessar jobs e tarefas.