Visão geral do Cloud NAT
O Cloud NAT é a evolução da configuração de saída padrão do projeto. O Cloud NAT é um serviço zonal no escopo do projeto limitado ao tráfego IPv4 e oferece os seguintes recursos:
- Vários gateways por projeto que podem fazer o tráfego sair de diferentes conjuntos de endpoints.
- Vários IPs de saída configuráveis por gateway.
- Vários seletores de rótulos de endpoint configuráveis por gateway.
- Tempos limite de conexão configuráveis por gateway.
- Maior confiabilidade e menor raio de explosão em caso de falha do nó de saída.
O diagrama a seguir ilustra uma visão geral de exemplo do Cloud NAT. Cada gateway faz o encerramento de todo o tráfego direcionado a IPs não internos de endpoints de pods ou VMs (no mesmo projeto do gateway) que têm todos os rótulos no seletor de rótulos do gateway (correspondência AND). Endpoints em projetos diferentes ou que não correspondem totalmente ao seletor de rótulo não podem fazer egress do tráfego pelo gateway. Os gateways atribuem de forma estática um dos IPs de saída a cada endpoint que envia tráfego por eles. Os IPs de sub-redes folha são usados para especificar o conjunto de IPs de saída que cada gateway do Cloud NAT pode usar.

Por exemplo, se um pod em project-1, com o rótulo app:aa e com o IP 192.168.0.1 emitir um pacote com o IP de destino 22.22.22.22, ele será direcionado ao gateway do Cloud NAT. O gateway vai trocar o IP de origem pelo
IP de saída atribuído ao endpoint do pod (34.1.22.1) e encaminhá-lo para o
VRF de dados. Se uma resposta vier desse VRF, ele fará a operação inversa
e encaminhará o pacote resultante para o endpoint do pod. O mesmo mecanismo será aplicado às VMs nesse projeto e rótulo.

Por padrão, as conexões de saída criadas por um gateway do Cloud NAT têm os seguintes tempos limite. Eles podem ser configurados manualmente, se necessário.
Tempo limite |
Valor padrão (segundos) |
Conexões não TCP |
60 |
Conexões TCP inativas |
8000 |
Encerramento de conexões TCP |
10 |
Estabelecimento de conexão TCP |
60 |
Limitações
- Cada endpoint só pode fazer saída por um único gateway do Cloud NAT usando um único endereço IP de saída. Esse endereço IP é atribuído automaticamente pelo gateway a cada endpoint. Essa atribuição não vai mudar, a menos que a configuração do endpoint ou do gateway seja alterada.
- Para garantir que o roteamento entre endpoints e gateways seja determinístico, os gateways do Cloud NAT não podem ter seletores de rótulos sobrepostos, e os endpoints não podem ter rótulos correspondentes a vários gateways.
- Se o endpoint também tiver rotas de gateways de VPN, elas terão preferência em relação às rotas de gateways do Cloud NAT.
Limites de escalonamento
- O número máximo de endereços IP de saída por projeto é 100. Se o número de sub-redes atribuídas ao gateway do Cloud NAT exceder 100, apenas os primeiros 100 IPs serão usados pelo gateway.
- O número máximo de conexões paralelas por IP de saída por protocolo para um IP e uma porta de destino específicos é limitado a 32 mil. Se você ultrapassar esse limite, as conexões vão falhar.
- O número máximo de mapeamentos de NAT é de 1.000 por VPC por zona. Um mapeamento é criado para cada endpoint atribuído a cada gateway do Cloud NAT. Como um endpoint só pode ser atribuído a um gateway NAT, o número máximo de endpoints que podem usar o Cloud NAT em uma zona é 1.000. Os mapeamentos de NAT NÃO são escalonados com o número de conexões.
Comportamento de failover
Se um nó de saída ficar indisponível, os gateways do Cloud NAT que usam esse nó de saída vão migrar automaticamente os IPs externos do nó indisponível para outros nós de saída disponíveis. Em seguida, os gateways vão reconfigurar o sistema para saída de tráfego usando os outros nós disponíveis. Quando a reconfiguração for concluída, os endpoints que estavam usando o nó indisponível poderão restabelecer as conexões de saída.