Escolher um balanceador de carga

Neste documento, você verá como determinar qual balanceador de carga do Google Cloud melhor atende às suas necessidades. Para uma visão geral de todos os produtos do Cloud Load Balancing, consulte Visão geral do Cloud Load Balancing.

Para determinar qual produto do Cloud Load Balancing deve ser usado, primeiro você precisa determinar que tipo de tráfego seus balanceadores de carga devem gerenciar. Como regra geral, escolha um balanceador de carga de aplicativo quando precisar de um conjunto de recursos flexível para aplicativos com tráfego HTTP(S). Escolha um balanceador de carga de rede de proxy para implementar o balanceamento de carga de proxy TCP para back-ends em uma ou mais regiões. Escolha um balanceador de carga de rede de passagem quando quiser preservar os endereços IP de origem do cliente, evitar a sobrecarga de proxies e oferecer suporte a protocolos adicionais, como UDP, ESP e ICMP.

É possível restringir ainda mais as opções, dependendo dos requisitos do aplicativo: se o aplicativo é externo (voltado à Internet) ou interno e se você precisa de back-ends implantados globalmente ou regionalmente.

O diagrama a seguir resume todos os modos de implantação disponíveis para o Cloud Load Balancing.

Escolha um balanceador de carga.
Escolha um balanceador de carga (clique para ampliar).

1 Os balanceadores de carga de aplicativo externos globais são compatíveis com dois modos de operação: o global e o clássico.

2 Os balanceadores de carga de rede de proxy externos globais são compatíveis com dois modos de operação: global e clássico.

3 Os balanceadores de carga de rede de passagem preservam os endereços IP de origem do cliente. Os balanceadores de carga de rede de passagem também são compatíveis com protocolos adicionais como UDP, ESP e ICMP.

Aspectos do balanceamento de carga

Para decidir qual é o balanceador de carga ideal para sua implementação do Google Cloud, pense nos seguintes aspectos em relação ao Cloud Load Balancing:

Tipo de tráfego

O tipo de tráfego que seu balanceador de carga precisa manipular é outro fator para determinar qual balanceador de carga deve ser usado.

Tipo do balanceador de carga Tipo de tráfego
Balanceadores de carga de aplicativos HTTP ou HTTPS
Balanceadores de carga de rede de passagem

TCP ou UDP

Esses balanceadores de carga também dão suporte a outros tipos de tráfego de protocolo IP, como ESP, GRE, ICMP e ICMPv6.

Balanceadores de carga de rede proxy TCP com descarga de SSL opcional

Balanceamento de carga externo ou interno

Os balanceadores de carga do Google Cloud podem ser implantados como externos ou internos:

  • Os balanceadores de carga externos distribuem o tráfego proveniente da Internet para sua rede de nuvem privada virtual (VPC) do Google Cloud.

  • Os balanceadores de carga internos distribuem o tráfego proveniente de clientes na mesma rede VPC que o balanceador de carga ou clientes conectados à sua rede VPC usando o peering de rede VPC, o Cloud VPN ou o Cloud Interconnect.

Para determinar qual balanceador de carga funciona para seu aplicativo, use a tabela de resumo.

Balanceamento de carga global ou regional

Dependendo do tipo de tráfego que você precisa que o balanceador de carga processe e se seus clientes forem internos ou externos, você terá a opção de escolher entre um balanceador de carga global ou regional.

  • Escolha um balanceador de carga global ou um balanceador de carga entre regiões quando quiser que o balanceador de carga seja distribuído globalmente ou se estenda por várias regiões. Esses balanceadores de carga também podem distribuir tráfego para back-ends em várias regiões, o que os torna adequados quando seu aplicativo ou conteúdo é distribuído em várias regiões ou quando você quer flexibilidade para adicionar back-ends multirregionais.{101 }à medida que seu aplicativo passa para novos locais.

    Somente balanceadores de carga externos estão disponíveis como balanceadores de carga globais. Para balanceadores de carga internos com back-ends em várias regiões, escolha o balanceador de carga entre regiões. Os balanceadores de carga entre regiões fornecem acesso usando um endereço IP interno regional proveniente da sub-rede regional na rede VPC. Isso é diferente dos balanceadores de carga globais, que fornecem acesso usando um único endereço IP Anycast e fornecendo o término IPv6 no balanceador de carga. Consulte a tabela a seguir para saber mais.

  • Escolha um balanceador de carga regional quando você precisar de back-ends somente em uma região, precisar apenas de terminação IPv4 (não IPv6) ou quando tiver requisitos de conformidade de jurisdição para o tráfego permanecer em um região específica.

    As cargas de trabalho que exigem recursos regionalizados por motivos de conformidade exigem que determinados recursos sejam mantidos em uma região específica ou exijam que o tráfego seja encerrado em uma determinada região. Se você precisar de controle geográfico sobre o local em que o TLS é encerrado, use um balanceador de carga regional. Um balanceador de carga regional é implantado em uma região específica que você escolhe e só pode se conectar a back-ends na mesma região. Assim, os balanceadores de carga regionais garantem o encerramento do TLS somente na região em que você implantou o balanceador de carga e os back-ends dele. Os balanceadores de carga globais encerram o Transport Layer Security (TLS) em locais distribuídos globalmente, de modo a minimizar a latência entre os clientes e o balanceador de carga.

Os balanceadores de carga são componentes essenciais da maioria dos aplicativos. É importante entender que a resiliência do aplicativo geral depende não apenas do escopo do balanceador de carga escolhido (global ou regional), mas também da redundância dos serviços de back-end.

A tabela a seguir resume a resiliência do balanceador de carga com base na distribuição ou no escopo do balanceador de carga.

Escopo do balanceador de carga Arquitetura Resiliente a interrupção de zona Resiliente a interrupção regional
Global Cada balanceador de carga é distribuído em todas as regiões
Entre regiões Cada balanceador de carga é distribuído em várias regiões
Regional Cada balanceador de carga é distribuído em várias zonas na região Uma interrupção em uma determinada região afeta os balanceadores de carga regionais nessa região.

Para determinar qual balanceador de carga funciona para seu aplicativo, use a tabela de resumo.

Balanceamento de carga proxy e de passagem

Dependendo do tipo de tráfego que você precisa que o balanceador de carga processe e se seus clientes forem internos ou externos, você terá a opção de escolher entre um balanceador de carga de proxy ou de passagem.

Os balanceadores de carga do proxy encerram as conexões de entrada do cliente no balanceador de carga e abrem novas conexões do balanceador com os back-ends. Todos os balanceadores de carga de aplicativo e de rede de proxy funcionam dessa maneira. Eles encerram conexões de cliente usando o Google Front Ends (GFEs) ou proxies do Envoy.

Os balanceadores de carga de passagem não encerram as conexões do cliente. Em vez disso, os pacotes com balanceamento de carga são recebidos pelas VMs de back-end com a origem, o destino e, se aplicável, as informações de porta do pacote inalteradas. As conexões são encerradas pelas VMs de back-end. As respostas das VMs de back-end vão diretamente para os clientes, e não voltam pelo balanceador de carga. O termo para isso é retorno direto do servidor. Use um balanceador de carga de passagem quando precisar preservar as informações do pacote do cliente. Como o nome sugere, os balanceadores de carga de rede de passagem estão nessa categoria.

Para determinar qual balanceador de carga funciona para seu aplicativo, use a tabela de resumo.

Níveis de serviço de rede Premium x Standard

Os níveis de serviço de rede permitem otimizar a conectividade entre sistemas na Internet e nas instâncias do Google Cloud. O nível Premium oferece tráfego no backbone premium do Google, enquanto o nível Standard usa redes ISP comuns. Como regra geral, você escolheria o nível Premium para alto desempenho e baixa latência. Escolha o nível padrão como uma alternativa de baixo custo para aplicativos que não têm requisitos rígidos de latência ou desempenho.

Nível Premium. 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 você não especificar um nível de rede, o balanceador de carga usará o nível Premium por padrão. Todos os balanceadores de carga internos são sempre do nível Premium. Além disso, o balanceador de carga de aplicativo externo global também só pode ser configurado no nível Premium.

Nível Padrão. 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. Conforme observado na tabela de resumo, nem todos os balanceadores de carga podem ser implantados no nível Standard. Portanto, planeje seu orçamento adequadamente.

Como você escolhe a partir do nível de recurso (como o endereço IP externo para um balanceador de carga ou VM), é possível usar o nível Standard para alguns recursos e o Premium para outros. Para tomar sua decisão, use a árvore de decisões na documentação dos níveis de serviço de rede.

Proteção do Google Cloud Armor para balanceadores de carga externos

O Google Cloud Armor oferece proteções contra DDoS sempre ativadas e configuráveis pelo usuário para todos os balanceadores de carga externos, além de regras de política de segurança configuráveis pelo usuário, dependendo do tipo de balanceador de carga.

Tipo ou modo de balanceador de carga Políticas de segurança do Google Cloud Armor Tipos de políticas de segurança compatíveis
Balanceador de carga de aplicativo externo global
  • Política de segurança de back-end
  • Política de segurança de borda
Balanceador de carga de aplicativo clássico
  • Política de segurança de back-end
  • Política de segurança de borda
Balanceador de carga de aplicativo externo regional
  • Política de segurança de back-end regional
Balanceador de carga de rede de proxy externo global
  • Política de segurança de back-end
Balanceador de carga de rede de proxy clássico
  • Política de segurança de back-end
Balanceador de carga de rede de passagem externa
  • Política de segurança de borda de rede

Também é possível configurar a proteção avançada contra DDoS de rede para balanceadores de carga de rede de passagem externa, encaminhamento de protocolo ou VMs com endereços IP públicos. Para mais informações sobre a proteção avançada contra DDoS da rede, consulte Configurar proteção avançada contra DDoS da rede.

Resumo dos balanceadores de carga do Google Cloud

A tabela a seguir apresenta informações específicas sobre cada balanceador de carga.

Balanceador de carga Modo de implantação Tipo de tráfego Nível de serviço da rede Esquema de balanceamento de carga
Balanceadores de carga de aplicativos Global e externo HTTP ou HTTPS Nível Premium EXTERNAL_MANAGED
Regional externo HTTP ou HTTPS Nível Premium ou Standard EXTERNAL_MANAGED
Clássico HTTP ou HTTPS

Global no nível Premium.

Regional no nível Standard

EXTERNAL
Regional interno HTTP ou HTTPS Nível Premium INTERNAL_MANAGED
Inter-regional interno HTTP ou HTTPS Nível Premium INTERNAL_MANAGED
Balanceadores de carga de rede proxy Global e externo TCP com descarga de SSL opcional Nível Premium EXTERNAL_MANAGED
Regional externo TCP Nível Premium ou Standard EXTERNAL_MANAGED
Clássico TCP com descarga de SSL opcional

Global no nível Premium.

Regional no nível Standard

EXTERNAL
Regional interno TCP sem descarregamento de SSL Nível Premium INTERNAL_MANAGED
Inter-regional interno TCP sem descarregamento de SSL Nível Premium INTERNAL_MANAGED
Balanceadores de carga de rede de passagem

Externo

Sempre regional

TCP, UDP, ESP, GRE, ICMP e ICMPv6 Nível Premium ou Standard EXTERNAL

Interno

Sempre regional

TCP, UDP, ICMP, ICMPv6, SCTP, ESP, AH e GRE Nível Premium INTERNAL

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.

O termo *_MANAGED no esquema de balanceamento de carga indica que o balanceador de carga é implementado como um serviço gerenciado no Google Front Ends (GFEs) ou no código aberto Proxy Envoy. Em um esquema de balanceamento de carga *_MANAGED, as solicitações são roteadas para o GFE ou o proxy Envoy.

A seguir