Neste documento, explicamos os conceitos de rede do Batch, incluindo opções de rede, quando configurar e como a rede funciona.
Opções de rede
As opções de rede controlam como o Batch é conectado a outras fontes, como a Internet e outros recursos e serviços do Google Cloud.
O Batch tem as seguintes opções de rede:
- Especifique a rede para um job ou use a rede padrão.
- Use outras restrições de rede:
- Bloquear conexões externas para ambientes de execução de jobs, seja todas as VMs ou contêineres específicos.
- Proteja recursos e dados do Batch usando o VPC Service Controls.
Para mais informações sobre como determinar quais opções de rede usar para o Batch, consulte Quando configurar a rede neste documento. Para mais informações sobre os conceitos de rede para cada opção, consulte Como funciona a rede neste documento.
Quando configurar a rede
Revise esta seção para determinar se é preciso configurar a rede ao usar o Batch ou usar a configuração de rede padrão.
É preciso configurar a rede para o Batch nos seguintes casos:
- Se o projeto ou a rede usarem VPC Service Controls para restringir o acesso à rede para o Batch, será preciso configurar a rede seguindo a documentação Usar VPC Service Controls com o Batch.
- Se a restrição da política da organização
compute.vmExternalIpAccess
exigir que o projeto crie VMs sem endereços IP externo ou se a rede usar o Acesso privado do Google, crie jobs que bloqueiem o acesso externo para todas as VMs. Se não for possível ou não quiser usar a rede padrão, especifique a rede para jobs.
Para determinar se é possível usar a rede padrão em um job, verifique o seguinte:
- A rede padrão existe para seu projeto. Os novos
projetos do Google Cloud incluem automaticamente a rede padrão,
a menos que a restrição da política da organização
compute.skipDefaultNetworkCreation
esteja ativada. - A rede padrão é compatível com seus requisitos de rede específicos. Se a rede padrão do seu projeto for modificada, você ou outros usuários poderão ter problemas. Se você precisar de mais informações sobre a rede padrão, consulte a seção Configuração de rede padrão neste documento.
- A rede padrão existe para seu projeto. Os novos
projetos do Google Cloud incluem automaticamente a rede padrão,
a menos que a restrição da política da organização
Mesmo que não seja necessário, configure a rede para melhorar a segurança dos recursos e dados do Batch. Por exemplo, se você quiser melhorar a segurança de jobs que usam contêineres e não bloqueiam o acesso externo para todas as VMs, crie jobs que bloqueiem o acesso externo para apenas um ou mais contêineres. Usar uma rede não padrão ou outras restrições de rede pode ajudar a implementar princípios de privilégio mínimo (link em inglês). Para mais informações sobre as opções que você pode usar para configurar redes para o Batch, consulte Como funciona a rede neste documento.
Caso contrário, se você não precisar ou quiser configurar a rede, poderá criar um job sem especificar nenhuma opção de rede para usar a configuração de rede padrão.
Como a rede funciona
As seções a seguir explicam os conceitos de rede do Batch:
Rede do job
Cada job é executado em máquinas virtuais (VMs) do Compute Engine, que precisam fazer parte de uma rede de nuvem privada virtual (VPC) do Google Cloud e de uma sub-rede dessa rede.
As redes VPC conectam VMs a outras origens, como a Internet e outros recursos e serviços do Google Cloud. Cada rede consiste em pelo menos uma sub-rede, também conhecida como sub-rede, que é um ou mais intervalos de endereços IP associados a uma região. Cada VM tem uma interface de rede com um endereço IP interno e um IP externo opcional que são alocados da sub-rede. É possível configurar regras de firewall de VPC para permitir ou negar conexões para as VMs em uma rede. Toda rede tem regras de firewall implícitas que bloqueiam todas as conexões de entrada e permitem todas as conexões de saída. Normalmente, uma rede VPC só pode ser usada no projeto. No entanto, se você quiser usar a mesma rede em vários projetos, use a VPC compartilhada.
Em resumo, cada job é executado em VMs que usam endereços IP para fazer conexões que são controladas pelas regras de firewall da rede.
Para mais informações sobre conceitos de rede, consulte Visão geral de rede para VMs na documentação do Compute Engine e Visão geral da nuvem privada virtual (VPC) na documentação da VPC.
Outras restrições de rede
Para ajudar a melhorar a segurança, uma configuração de rede pode envolver mais restrições do que apenas as regras de firewall da rede. Por exemplo, seu projeto ou organização pode usar restrições da política da organização ou outros serviços do Google Cloud para restringir a rede.
As seções a seguir explicam as opções comuns para restringir ainda mais a rede:
- Bloquear conexões externas para ambientes de execução de jobs
- Restringir o acesso à rede no Batch usando VPC Service Controls
Bloquear conexões externas para ambientes de execução de jobs
É possível bloquear conexões externas diretamente de e para o ambiente de execução de um job usando até uma das seguintes opções:
Bloquear o acesso externo de todas as VMs de um job. Bloqueie o acesso externo às VMs de um job para criar um job que seja executado em VMs sem endereços IP externo. Essa opção geralmente é necessária para uma rede ou projeto ou como alternativa para melhorar a segurança.
As VMs sem endereços IP externo só podem ser acessadas por meio de endereços IP internos por outro nó na mesma rede. Portanto, é necessário configurar o acesso a essas VMs da seguinte maneira:
Para executar um job em VMs sem endereços IP externo, use o Cloud NAT ou o Acesso privado do Google para permitir acesso aos domínios das APIs e serviços usados pelo job. Por exemplo, todos os jobs em lote usam as APIs Batch e Compute Engine e costumam usar a API Cloud Logging.
Se você ou outros usuários precisarem se conectar a VMs sem endereços IP externo, consulte Escolher uma opção de conexão para VMs somente internas na documentação do Compute Engine.
Bloqueie o acesso externo de um ou mais contêineres a um job. Se um job usa contêineres e ainda não bloqueia o acesso externo a todas as VMs, escolha se quer bloquear o acesso externo de cada contêiner. Essa opção é opcional e pode ser usada para melhorar a segurança ao especificar a rede para um job ou ao criar um job que usa a configuração de rede padrão.
Proteger recursos e dados do Batch usando VPC Service Controls
Além de bloquear o acesso externo para todas as VMs de um job, é possível restringir ainda mais a rede usando o VPC Service Controls.
Ao contrário das outras opções de rede explicadas neste documento, que podem restringir a rede apenas para VMs ou contêineres que executam jobs, o VPC Service Controls permite restringir o acesso de rede aos recursos e dados dos serviços do Google Cloud, por exemplo, jobs e dados do Batch.
É possível usar o VPC Service Controls para criar perímetros que protegem os recursos e os dados dos serviços do Google Cloud especificados. O perímetro de serviço isola os serviços e recursos selecionados, bloqueando conexões com os serviços do Google Cloud fora do perímetro e com quaisquer conexões da Internet que não sejam explicitamente permitidas. Para mais informações, consulte a documentação do VPC Service Controls e Usar VPC Service Controls com lote.
Configuração de rede padrão
Quando você cria um job e não especifica opções de rede, as VMs dele usam a rede padrão e a sub-rede para o local da VM.
Cada projeto tem uma rede padrão chamada default
, a menos que você a exclua ou
desative com a restrição da política da organização
compute.skipDefaultNetworkCreation
.
A rede padrão é uma rede de modo automático, portanto, tem uma sub-rede em cada região. Além das regras de firewall implícitas para cada rede, a rede default
também tem regras de firewall pré-preenchidas, que permitem o acesso para casos de uso comuns. Para mais informações, consulte Regras pré-preenchidas na rede padrão na documentação da VPC.
Considere usar a configuração de rede padrão se você não tiver requisitos de rede para um job e não quiser configurar a rede. Para detalhes sobre quando usar a configuração de rede padrão, consulte Quando configurar a rede neste documento.
A seguir
- Configure a rede para o Batch:
- Como alternativa, para criar um job que use a configuração de rede padrão, consulte Criar e executar um job básico.
- Também é possível controlar o acesso a um job usando uma conta de serviço personalizada.