Visão geral do balanceador de carga de rede

Os balanceadores de carga de rede de passagem são regionais e de camada 4. Eles distribuem o tráfego entre back-ends na mesma região do balanceador de carga. Como o nome sugere, os balanceadores de carga de rede de passagem não são proxies. Os pacotes com balanceamento de carga são recebidos por VMs de back-end com os endereços IP de origem e destino do pacote e, se o protocolo for baseado em portas, as portas de origem e de destino inalteradas. As conexões com carga balanceada são encerradas nos back-ends. As respostas das VMs de back-end vão diretamente para os clientes, e não voltam pelo balanceador de carga. O termo do setor para isso é retorno direto do servidor (DSR, na sigla em inglês).

O diagrama a seguir mostra um exemplo de arquitetura de balanceador de carga de rede de passagem.

Arquitetura de balanceador de carga de rede de passagem.
Arquitetura do balanceador de carga de rede de passagem (clique para ampliar).

Você usaria um balanceador de carga de rede de passagem nas seguintes circunstâncias:

  • Você precisa encaminhar pacotes de clientes originais para os back-ends sem proxy. Por exemplo, se precisar preservar o endereço IP de origem do cliente.
  • Você precisa fazer o balanceamento de carga de tráfego TCP, UDP, ESP, GRE, ICMP e ICMPv6, ou precisa balancear a carga de uma porta TCP que não é compatível com outros balanceadores de carga.
  • É aceitável que o tráfego SSL seja descriptografado por seus back-ends, no lugar do balanceador de carga. O balanceador de carga de rede de passagem não pode executar essa tarefa. Quando os back-ends descriptografam o tráfego SSL, há uma carga de CPU maior nas VMs.
  • Você mesmo pode gerenciar os certificados SSL da VM de back-end. Os certificados SSL gerenciados pelo Google estão disponíveis apenas para balanceadores de carga de proxy.
  • Você tem uma configuração atual que usa um balanceador de carga de passagem e quer migrá-lo sem alterações.

Os balanceadores de carga de rede de passagem estão disponíveis nos seguintes modos de implantação.

Scope Tipo de tráfego Nível de serviço da rede Esquema de balanceamento de carga Endereço IP Portas de front-end Links
Balanceador de carga de rede de passagem externo

A carga equilibra o tráfego proveniente de clientes na Internet.

Regional TCP, UDP, ESP, GRE, ICMP, and ICMPv6 Premium ou Standard EXTERNO IPv4 e IPv6 Uma porta, um intervalo ou todas as portas Detalhes da arquitetura
Balanceador de carga de rede de passagem interno

Faça o balanceamento de carga do tráfego nas redes VPC conectadas.

Regional TCP, UDP, ICMP, ICMPv6, SCTP, ESP, AH e GRE Premium INTERNAL IPv4 e IPv6 Uma porta, um intervalo ou todas as portas Detalhes da arquitetura

O esquema de balanceamento de carga é um atributo na regra de encaminhamento e no serviço de back-end de um balanceador de carga e indica se o balanceador de carga pode ser usado para tráfego interno ou externo.

Balanceadores de carga de rede de passagem externa

Os balanceadores de carga de rede de passagem externa são regionais, da camada 4, que distribuem o tráfego externo entre back-ends (grupos de instâncias ou grupos de endpoints de rede) na mesma região do balanceador de carga. Esses back-ends precisam estar na mesma região e projeto, mas podem estar em redes VPC diferentes. Esses balanceadores de carga são criados no Maglev e na pilha de virtualização de rede Andromeda.

Os balanceadores de carga de rede de passagem externos podem receber tráfego de:

  • Qualquer cliente na Internet
  • VMs do Google Cloud com IPs externos
  • VMs do Google Cloud que têm acesso à Internet por meio do Cloud NAT ou da NAT baseada em instância

Os balanceadores de carga de rede de passagem externos não são proxies. O balanceador de carga em si não encerra conexões de usuário. Os pacotes com carga balanceada são enviados às VMs de back-end com os respectivos endereços IP de origem e destino, protocolo e, se aplicável, portas inalteradas. Em seguida, as VMs de back-end encerram as conexões de usuário. As respostas das VMs de back-end vão diretamente para os clientes, e não voltam pelo balanceador de carga. Esse processo é conhecido como retorno direto do servidor (DSR, na sigla em inglês).

O diagrama a seguir, mostra um balanceador de carga de rede de passagem externo configurado na região us-central1 com seus backedns localizados na mesma região. O tráfego é roteado de um usuário em Singapura (perto de us-central1) para o balanceador de carga em 120.1.1.1 (endereço IP de regra de encaminhamento ).

Se o endereço IP do balanceador de carga estiver no nível Premium, o tráfego vai passar pelo backbone global de alta qualidade do Google, com a intenção de que os pacotes entrem e saiam de um ponto de peering de borda do Google o mais próximo possível do cliente. Se o endereço IP do balanceador de carga estiver no nível Padrão, o tráfego vai entrar e sair da rede do Google em um ponto de peering mais próximo da região do Google Cloud em que os componentes do balanceador de carga estão configurados.

Encaminhamento de tráfego de balanceador de carga de rede externo nos níveis de rede Premium e Padrão.
Roteamento de tráfego do balanceador de carga de rede de passagem externa nos níveis de rede Premium e Padrão.

A arquitetura de um balanceador de carga de rede de passagem externa depende de você usar um serviço de back-end ou um pool de destino para configurar o back-end.

Balanceadores de carga baseados em serviço de back-end

Os novos balanceadores de carga de rede podem ser criados com um serviço de back-end regional. Ele define o funcionamento do balanceador e como o tráfego será distribuído para os grupos de instâncias do back-end. Os balanceadores de carga de rede de passagem externa baseados em serviço de back-end aceitam tráfego IPv4 e IPv6, vários protocolos (TCP, UDP, ESP, GRE, ICMP e ICMPv6), back-ends de grupos de instâncias gerenciados e não gerenciados. back-ends de grupo de endpoints de rede (NEG) zonal com endpoints GCE_VM_IP, controles de distribuição de tráfego refinados, políticas de failover e permitem usar verificações de integridade não legadas que correspondem ao tipo de tráfego. (TCP, SSL, HTTP, HTTPS ou HTTP/2) que você está distribuindo.

O balanceamento de carga do Google Kubernetes Engine (GKE) é processado usando o controlador de serviço do GKE integrado. Além disso, os balanceadores de carga de rede de passagem externa baseados em serviço de back-end são compatíveis com o App Hub, que está em pré-lançamento.

Para detalhes de arquitetura e mais informações sobre recursos compatíveis, consulte Visão geral do balanceador de carga de rede de passagem externa baseado em serviço de back-end.

Também é possível transformar um balanceador de carga de rede baseado em pool de destino para usar um serviço de back-end. Para mais instruções, consulte Migrar balanceadores de carga de pools de destino para serviços de back-end.

Balanceadores de carga baseados em pool de destino

Um pool de destino é o back-end legado compatível com balanceadores de carga de rede de passagem externa. Um pool de destino define um grupo de instâncias que receberá o tráfego de entrada do balanceador de carga.

Os balanceadores de carga de rede com base em pool de destino aceitam tráfego TCP ou UDP. As regras de encaminhamento para balanceadores de carga de rede de passagem externa baseados em pool de destino só aceitam endereços IPv4 externos.

Para detalhes sobre a arquitetura, consulte Visão geral do balanceador de carga de rede de passagem externa baseada em pool de destino.

Balanceadores de carga de rede de passagem interna

Os balanceadores de carga de rede de passagem internos distribuem o tráfego entre instâncias de máquina virtual (VM) interna na mesma região em uma rede de nuvem privada virtual (VPC). Com ela, é possível executar e escalonar serviços em um endereço IP interno que seja acessível apenas para sistemas na mesma rede VPC ou sistemas conectados à sua rede VPC.

Esses balanceadores de carga são criados na pilha de virtualização de rede Andromeda. Eles são compatíveis apenas com back-ends regionais para que você possa fazer escalonamento automático em uma região, protegendo o serviço contra falhas zonais. Além disso, este balanceador de carga só pode ser configurado no nível Premium.

Os balanceadores de carga de rede de passagem interna abordam muitos casos de uso. As seções abaixo mostram alguns exemplos detalhados.

Acesso às redes conectadas

Acesse um balanceador de carga de rede de passagem interno na rede VPC por uma rede conectada usando o seguinte:

  • Peering de rede VPC
  • Cloud VPN e Cloud Interconnect

Para exemplos detalhados, consulte esta página.

Serviço da Web de três camadas

É possível usar os balanceadores de carga de rede de passagem interna em conjunto com outros balanceadores de carga. Por exemplo, se você incorporar balanceadores de carga de aplicativo externos, o balanceador de carga de aplicativo externo será o nível da Web e se baseia em serviços por trás do balanceador de carga de rede de passagem interna.

O diagrama a seguir ilustra um exemplo de uma configuração de três camadas que usa balanceadores de carga de aplicativo externos e de passagem interna:

App da Web de três camadas com um balanceador de carga de aplicativo externo e um balanceador de carga de rede de passagem interna.
App da Web de três camadas com um balanceador de carga de aplicativo externo e um balanceador de carga de rede de passagem interna (clique para ampliar).

Serviço da Web de três camadas com exemplo de acesso global

Se você ativar o acesso global, as VMs da Web podem estar em outra região, como mostrado no diagrama a seguir.

Este exemplo de aplicativo multicamada mostra:

  • Uma camada da Web voltada para a Internet disponível globalmente que equilibra a carga com um balanceador de carga de aplicativo externo.
  • Uma camada interna de banco de dados de balanceamento de carga de back-end na região us-east1 acessada pela camada global da Web.
  • Uma VM cliente que faz parte da camada da Web na região europe-west1 com acesso à camada do banco de dados de balanceamento de carga interno localizada em us-east1.
App da Web de três camadas com um balanceador de carga de aplicativo externo, acesso global e um balanceador de carga de rede de passagem interna.
App da Web de três camadas com um balanceador de carga de aplicativo externo, acesso global e um balanceador de carga de rede de passagem interna (clique para ampliar).

Como usar balanceadores de carga de rede de passagem interna como próximos saltos

Use um balanceador de carga de rede de passagem interno como o próximo gateway a que os pacotes serão encaminhados no caminho até o destino final. Para fazer isso, defina o balanceador de carga como o próximo salto em uma rota estática personalizada.

Um balanceador de carga de rede de passagem interno implantado como próximo salto em uma rota personalizada processa todo o tráfego, independentemente do protocolo (TCP, UDP ou ICMP).

Veja uma arquitetura de amostra usando um balanceador de carga de rede de passagem interno como o próximo salto para um gateway NAT. É possível rotear o tráfego para os back-ends de firewall ou dispositivo virtual de gateway por meio de um balanceador de carga de rede de passagem interna.

Caso de uso de NAT
Caso de uso de NAT (clique para ampliar).

Outros casos de uso incluem:

  • "Hub and spoke": como trocar rotas de próximo salto usando o peering de rede VPC: é possível configurar uma topologia "hub-and-spoke" com seus appliances virtuais de firewall de próximo salto localizados na rede VPC hub. Rotas que usam o balanceador de carga como próximo salto na rede VPC hub podem ser usadas em cada rede spoke.
  • Balanceamento de carga para várias interfaces de rede (nic0 a nic7) nas VMs de back-end.

Para mais informações sobre esses casos de uso, consulte Balanceadores de carga de rede de passagem interna como próximos saltos.

Passagem interna de balanceadores de carga de rede e GKE

Para detalhes sobre como o GKE cria balanceadores de carga de rede de passagem internos para Serviços, consulte Conceitos de Serviço do LoadBalancer na documentação do GKE.

Balanceadores de carga de rede de passagem interna e App Hub

Os recursos usados pelos balanceadores de carga de rede de passagem interna podem ser designados como serviços no Hub de apps, que está em pré-lançamento.

A seguir