Práticas recomendadas para redes do Cloud Run

Nesta página, descrevemos as práticas recomendadas para configurar opções de rede em recursos do Cloud Run. Antes de criar seus recursos, recomendamos que você analise todas as seções desta página para entender as opções de rede compatíveis com o Cloud Run e as implicações delas.

Monitorar o uso de endereços IP

Se você estiver usando a saída direta da VPC, verifique se tem endereços IP suficientes para sua sub-rede. O número de endereços IP usados depende do número de instâncias em que as cargas de trabalho são executadas. Por isso, recomendamos monitorar o uso de endereços IP. Verifique se o uso de IP ao longo do tempo permanece dentro dos limites aceitos pela sub-rede.

Para estimar o uso de endereços IP:

  1. No console Google Cloud , acesse a página do Metrics Explorer do Cloud Monitoring:

    Acessar o Metrics Explorer do Cloud Monitoring

  2. Procure o número de instâncias no seu projeto usando o tipo de métrica run.googleapis.com/container/instance_count. Com o Cloud Monitoring, é possível ver o valor dessa métrica ao longo do tempo.

  3. Multiplique o valor da métrica de contagem de instâncias por 2 para ter uma estimativa do número de endereços IP em uso.

Estratégias de esgotamento de endereços IP

Ter um grande número de cargas de trabalho do Cloud Run pode causar problemas de esgotamento de IP ao usar o espaço de endereço IP privado RFC 1918 com saída direta da VPC. As estratégias a seguir podem ajudar a gerenciar o esgotamento de endereços IP usando intervalos alternativos.

Usar endereços IPv4 não RFC 1918

Além dos intervalos de endereços IPv4 RFC 1918, o Cloud Run também é compatível com intervalos RFC 6598 e classe E/RFC 5735. Todos os serviços e recursos doGoogle Cloud funcionam com esses intervalos não RFC 1918, incluindo redes VPC, Cloud Load Balancing e Private Service Connect.

Para ter a melhor compatibilidade, recomendamos começar com o intervalo RFC 6598 (100.64.0.0/10). Se você já estiver usando esse intervalo em outro lugar, use a classe E/RFC 5735 (240.0.0.0/4). A classe E é um espaço enorme com mais de 268 milhões de endereços IP disponíveis, o que vai dar suporte ao seu crescimento por muito tempo. No entanto, a classe E tem algumas limitações. Por exemplo, ele não é compatível com o Windows e alguns hardwares locais. Leia sobre como aproveitar o espaço de endereços IPv4 da classe E para reduzir problemas de esgotamento de IPv4 no GKE.

Usar o Cloud NAT ou o Private Service Connect

Se a sua carga de trabalho do Cloud Run que usa um intervalo não RFC 1918 precisar acessar um destino local que aceita apenas RFC 1918, use uma das seguintes soluções:

  • Use o NAT híbrido para realizar a tradução de endereços e saída usando um pequeno intervalo RFC 1918.
  • Exponha o serviço local como um serviço híbrido do Private Service Connect.

Usar sub-redes IPv4 e IPv6 (pilha dupla)

Embora não reduza o esgotamento do IPv4, mover seus apps para o IPv6 é uma boa primeira etapa. Configure recursos de pilha dupla para evitar problemas de esgotamento do IPv4 no futuro.

Estratégias de redução do esgotamento de portas

Na seção a seguir, descrevemos estratégias para reduzir o esgotamento de portas com o Cloud Run.

Usar o pool de conexões e reutilizar conexões

Ao enviar um grande número de solicitações para um único endereço IP de destino, use o agrupamento de conexões para manter e reutilizar as conexões com o destino. Taxas de conexão altas para um único endereço IP podem esgotar as portas de saída e causar erros de conexão recusada.

Estratégias de desempenho e capacidade

Esta seção aborda opções escalonáveis para melhorar o desempenho e a capacidade da rede em relação à Internet e aos Serviços do Google.

Usar o ambiente de execução de segunda geração

Para ter a melhor performance de rede para serviços do Cloud Run, use o ambiente de execução de segunda geração ao rotear o tráfego com a saída direta de VPC. O ambiente de segunda geração oferece um desempenho de rede mais rápido, principalmente na presença de perda de pacotes.

É possível selecionar o ambiente de execução usando o Google Cloud console, CLI gcloud, o YAML ou o Terraform.

Usar a saída direta de VPC para aumentar a capacidade de processamento da saída de rede

Para ter uma capacidade de processamento mais rápida nas conexões de saída de rede, use a saída direta de VPC a fim de rotear o tráfego pela rede VPC. Recomendamos usar isso em conjunto com o ambiente de execução de segunda geração, conforme observado anteriormente.

Exemplo 1: tráfego externo para a Internet

Ao enviar tráfego externo para a Internet pública, defina --vpc-egress=all-traffic a fim de rotear todo o tráfego pela rede VPC. Com essa abordagem, você precisa configurar o Cloud NAT para acessar a Internet pública.

Para permitir que o Cloud Run use um gateway do Cloud NAT para NAT público ou NAT particular, consulte Interações de saída VPC direta do Cloud NAT.

Exemplo 2: tráfego interno para uma API do Google

Ao usar a saída direta de VPC para enviar tráfego a uma API do Google, como a API Cloud Storage, escolha uma das seguintes opções:

Usar a configuração padrão de MTU para o Cloud Run

Não mude a configuração da unidade máxima de transmissão (MTU) de uma rede VPC ao usá-la com o Cloud Run. Use a MTU padrão de 1.460 bytes.

A seguir