Os balanceadores de carga de aplicativo externos atendem a muitos casos de uso. Esta página fornece alguns exemplos detalhados.
Serviços da Web de três camadas
É possível usar um balanceador de carga de aplicativo externo para dar suporte a serviços da Web de três camadas tradicionais. O exemplo a seguir mostra como é possível usar três tipos de balanceadores de carga do Google Cloud para escalonar três camadas. Em cada camada, o tipo do balanceador de carga depende do seu tipo de tráfego:
Camada da Web: o tráfego entra a partir da Internet e é balanceado com carga usando um balanceador de carga de aplicativo externo.
Nível do aplicativo: o nível do aplicativo é escalonado usando um balanceador de carga regional interno.
Camada do banco de dados: é escalonada usando um balanceador de carga de rede de passagem interna.
O diagrama mostra como o tráfego passa pelas camadas:
- Um balanceador de carga de aplicativo externo (objeto desta visão geral) distribui o tráfego da Internet para um grupo de instâncias de front-end da Web em várias regiões.
- Esses front-ends da Web enviam o tráfego HTTP(S) para um conjunto de balanceadores de carga regionais internos do aplicativo. Para que o balanceador de carga de aplicativo externo encaminhe o tráfego para um balanceador de carga de aplicativo interno, o balanceador de carga de aplicativo externo precisa ter instâncias de back-end com software de servidor da Web (como Netscaler ou NGINX) configurado para encaminhar o tráfego para o front-end do balanceador de carga de aplicativo interno.
- Os balanceadores de carga internos do aplicativo distribuem o tráfego para grupos de instâncias de middleware.
- Esses grupos de instâncias de middleware enviam o tráfego para balanceadores de carga de rede de passagem internos, que balanceiam a carga do tráfego para clusters de armazenamento de dados.
Balanceamento de carga multirregional
Quando você configura um balanceador de carga de aplicativo externo no nível Premium, ele usa um endereço IP externo global e pode encaminhar solicitações de usuários de maneira inteligente para o grupo de instâncias de back-end ou NEG mais próximo, com base na proximidade. Por exemplo, se você configurar grupos de instâncias na América do Norte, Europa e Ásia e anexá-los ao serviço de back-end de um balanceador de carga, as solicitações de usuários do mundo inteiro serão enviadas automaticamente para as VMs mais próximas dos usuários, supondo que as VMs sejam aprovadas nas verificações de integridade e tenham capacidade suficiente (definida pelo modo de balanceamento). Se todas as VMs mais próximas não estiverem íntegras ou se o grupo de instâncias mais próximo estiver no limite da capacidade e outro não estiver no limite, o balanceador de carga enviará automaticamente as solicitações para a região seguinte mais próxima com capacidade.
No nível Premium, o balanceador de carga de aplicativo externo fornece balanceamento de carga multirregional, usando vários serviços de back-end, cada um com grupos de instâncias de back-end ou NEGs em várias regiões.
Cargas de trabalho com compliance com jurisdição
Algumas cargas de trabalho com requisitos regulatórios ou de conformidade exigem que as configurações de rede e a terminação de tráfego estejam em uma região específica. Para essas cargas de trabalho, um balanceador de carga de aplicativo regional geralmente é a opção preferencial para fornecer os controles jurisdicionais que essas cargas de trabalho exigem.
Gerenciamento de tráfego avançado
Com balanceadores de carga de aplicativo externos globais e externos regionais, é possível adicionar recursos avançados de gerenciamento de tráfego que dão a você um controle refinado sobre como o tráfego é processado. Esses recursos ajudam você a atender aos objetivos de disponibilidade e desempenho. Uma das vantagens de usar o balanceadores de carga de aplicativo externos para esses casos de uso é que você pode atualizar como o tráfego é gerenciado sem a necessidade de modificar o código do aplicativo.
Para ver mais detalhes, consulte os seguintes tópicos:
- Visão geral do gerenciamento de tráfego para o balanceador de carga de aplicativo externo global.
- Visão geral do gerenciamento de tráfego para o balanceador de carga de aplicativo externo regional.
Balanceamento de carga com roteamento de solicitação
O balanceador de carga de aplicativo externo é compatível com roteamento de solicitações usando mapas de URL para selecionar um serviço de back-end com base no nome do host solicitado, no caminho da solicitação ou em ambos. Por exemplo, você pode usar um conjunto de grupos de instâncias ou NEGs para processar seu conteúdo de vídeo e outro conjunto para processar o restante.
Também é possível usar balanceadores de carga de aplicativo externos com buckets do Cloud Storage. Depois de configurar o balanceador de carga, é possível adicionar buckets do Cloud Storage a ele.
Para mais informações, consulte Conceitos do mapa de URL.
Balanceamento de carga para aplicativos do GKE
Há duas maneiras de implantar balanceadores de carga de aplicativo externos em clusters do GKE:
- GKE Gateway controller. Compatível com o balanceador de carga de aplicativo externo global e o balanceador de carga de aplicativo clássico. Para instruções de configuração, consulte Como implantar gateways.
- Controlador de entrada do GKE. Compatível com o balanceador de carga de aplicativo clássico e o balanceador de carga de aplicativo regional externo. Para instruções de configuração, consulte Como configurar a Entrada para balanceadores de carga de aplicativos externos.
Balanceamento de carga para aplicativos do Cloud Run, do Cloud Functions e do App Engine
É possível usar um balanceador de carga de aplicativo externo global como front-end para aplicativos do Cloud Run, do Cloud Functions e do App Engine. Para configurar essa opção, use um NEG sem servidor para o back-end do balanceador de carga.
Este diagrama mostra como um NEG sem servidor se encaixa no modelo do balanceador de carga de aplicativo externo.
Documentação relacionada:
- Visão geral dos NEGs sem servidor
- Como configurar um balanceador de carga de aplicativo externo com o Cloud Run, o Cloud Functions ou o App Engine
Proxy de tráfego para back-ends externos com conexão de Internet
O Cloud Load Balancing é compatível com o proxy de tráfego para back-ends externos fora do Google Cloud. Use esse tipo de implantação quando quiser exibir conteúdo de um back-end externo, mas quiser que o balanceador de carga do Google Cloud seja o front-end. O balanceador de carga encaminha o tráfego para o endpoint externo usando a rede de backbone altamente confiável do Google para a maior parte da jornada, e só leva a Internet pública para perto do destino.
Documentação relacionada:
- Configurar um balanceador de carga de aplicativo externo global com um NEG da Internet
- Configure um balanceador de carga de aplicativo clássico com um NEG da Internet
Balanceamento de carga com conectividade híbrida
O Cloud Load Balancing é compatível com o tráfego de balanceamento de carga para endpoints que se estendem além do Google Cloud, como data centers locais e outras nuvens públicas que podem ser acessadas utilizando a conectividade híbrida.
O diagrama a seguir demonstra uma implantação híbrida com um balanceador de carga de aplicativo externo global.
Documentação relacionada:
- Visão geral dos NEGs de conectividade híbrida
- Como configurar um balanceador de carga de aplicativo externo com back-ends locais ou outros de nuvem
Balanceamento de carga com o Private Service Connect
É possível usar um balanceador de carga de aplicativo externo global para acessar serviços publicados usando o Private Service Connect.
Para mais informações, consulte Sobre back-ends do Private Service Connect.