Neste documento, apresentamos os conceitos que você precisa entender para configurar balanceadores de carga de aplicativo internos.
Um Google Cloud balanceador de carga de aplicativo interno é um balanceador de carga de camada 7 baseado em proxy que permite executar e escalonar seus serviços em um único endereço IP interno. O balanceador de carga de aplicativo interno distribui o tráfego HTTP e HTTPS aos back-ends hospedados em várias plataformas do Google Cloud , como o Compute Engine, o Google Kubernetes Engine (GKE) e o Cloud Run. Para mais detalhes, consulte Casos de uso.
Modos de operação
É possível configurar um balanceador de carga de aplicativo interno nos seguintes modos:
- Balanceador de carga de aplicativo interno entre regiões. Trata-se de um balanceador de carga multirregional que é implementado como um serviço gerenciado, baseado no proxy Envoy de código aberto. O modo entre regiões permite balancear a carga do tráfego para serviços de back-end distribuídos globalmente, incluindo o gerenciamento de tráfego, que ajuda a garantir que o tráfego seja direcionado ao back-end mais próximo em relação à regra de encaminhamento. Esse balanceador de carga também possibilita a alta disponibilidade. Colocar back-ends em várias regiões ajuda a evitar falhas em uma única região. Se os back-ends de uma região estiverem inativos, o tráfego poderá fazer failover para outra região.
Balanceador de carga de aplicativo interno regional. Esse é um balanceador de carga regional que é implementado como um serviço gerenciado no proxy Envoy de código aberto. O modo regional exige que os back-ends estejam em uma única região Google Cloud . Os clientes podem estar limitados a essa região ou em qualquer região, dependendo se o acesso global está desativado ou ativado na regra de encaminhamento. Esse balanceador de carga é ativado com recursos avançados de controle de tráfego com base em parâmetros HTTP ou HTTPS. Depois que o balanceador de carga é configurado, ele aloca proxies Envoy automaticamente para atender às suas necessidades de tráfego.
A tabela a seguir descreve as diferenças importantes entre os modos entre regiões e regional:
Modo balanceador de carga Recurso Endereço IP virtual (VIP) do balanceador de carga Acesso de cliente Back-ends com carga balanceada Alta disponibilidade e failover Balanceador de carga de aplicativo interno entre regiões Alocação por meio de uma sub-rede em uma região específica de Google Cloud . Endereços VIP de várias regiões podem compartilhar o mesmo serviço de back-end global. É possível configurar o balanceamento de carga global baseado em DNS usando políticas de roteamento de DNS a fim de encaminhar solicitações de clientes para o endereço VIP mais próximo.
Sempre acessível globalmente. Clientes de qualquer Google Cloud região em uma VPC podem enviar tráfego para o balanceador de carga. Back-ends globais.
O balanceador de carga pode enviar tráfego para back-ends em qualquer região.Failover automático em back-ends íntegros na mesma região ou em regiões diferentes. Balanceador de carga de aplicativo interno regional Alocação por meio de uma sub-rede em uma região específica de Google Cloud . Por padrão, não é acessível globalmente.
Como opção, é possível ativar o acesso global.Back-ends regionais.
O balanceador de carga só pode enviar tráfego para back-ends que estejam na mesma região que o proxy associado a ele.Failover automático em back-ends íntegros na mesma região.
Identificar o modo
Console
No console do Google Cloud , acesse a página Balanceamento de carga.
Na guia Balanceadores de carga, você verá o tipo do balanceador de carga, o protocolo e a região. Se a região estiver em branco, o balanceador de carga estará no modo entre regiões. Veja na tabela a seguir como identificar o modo do balanceador de carga.
Modo balanceador de carga Tipo do balanceador de carga Tipo de acesso Região Balanceador de carga de aplicativo interno entre regiões Aplicativo Interno Balanceador de carga de aplicativo interno regional Aplicativo Internos Especifica uma região
gcloud
Para determinar o modo de um balanceador de carga, execute o seguinte comando:
gcloud compute forwarding-rules describe FORWARDING_RULE_NAME
Na saída do comando, verifique o esquema de balanceamento de carga, a região e o nível da rede. Veja na tabela a seguir como identificar o modo do balanceador de carga.
Modo balanceador de carga Esquema de balanceamento de carga Regra de encaminhamento Balanceador de carga de aplicativo interno entre regiões INTERNAL_MANAGED Global Balanceador de carga de aplicativo interno regional INTERNAL_MANAGED Regional
Arquitetura e recursos
O diagrama a seguir mostra os recursos do Google Cloud necessários para balanceadores de carga de aplicativo internos:
Balanceador de carga de aplicativo interno entre regiões
Este diagrama mostra os componentes de uma implantação de balanceador de carga de aplicativo interno entre regiões no nível Premium na mesma rede VPC. Cada regra de encaminhamento global conta com um endereço IP regional que os clientes usam para se conectar.
Balanceador de carga de aplicativo interno e regional
Este diagrama mostra os componentes de uma implantação de balanceador de carga de aplicativo interno regional no nível Premium.
Os seguintes recursos são necessários para uma implantação interna do balanceador de carga de aplicativo:
Sub-rede somente proxy
No diagrama acima, a sub-rede somente proxy fornece um conjunto de endereços IP que o Google usa para executar proxies Envoy em seu nome. É necessário criar uma sub-rede somente proxy em cada região de uma rede VPC em que você usa balanceadores de carga HTTP(S) internos.
A tabela a seguir descreve as diferenças entre as sub-redes somente proxy nos modos entre regiões e regional. Os balanceadores de carga regionais e entre regiões não podem compartilhar as mesmas sub-redes.
| Modo balanceador de carga | Valor da flag de sub-rede somente proxy --purpose |
|---|---|
| Balanceador de carga de aplicativo interno entre regiões |
GLOBAL_MANAGED_PROXY O balanceador de carga entre regiões baseado no Envoy precisa ter uma sub-rede somente proxy em cada região em que está configurado. Os proxies do balanceador de carga entre regiões na mesma região e rede compartilham a mesma sub-rede somente proxy. |
| Balanceador de carga de aplicativo interno regional |
REGIONAL_MANAGED_PROXY Todos os balanceadores de carga regionais baseados no Envoy em uma região e rede VPC compartilham a mesma sub-rede somente proxy |
Além disso:
- As sub-redes somente proxy são usadas apenas para proxies Envoy, não para seus back-ends.
- As VMs de back-end ou os endpoints de todos os balanceadores de carga de aplicativo interno em uma região e rede VPC recebem conexões da sub-rede somente proxy.
- Para balanceadores de carga de aplicativo internos regionais e entre regiões, a sub-rede somente proxy
pode ser configurada com um tipo de pilha
IPV4_IPV6(dual-stack). - O endereço IP virtual de um balanceador de carga de aplicativo interno não está localizado na sub-rede somente proxy. O endereço IP do balanceador de carga é definido pela regra de encaminhamento gerenciada interna, descrita abaixo.
Regra de encaminhamento e endereço IP
As regras de encaminhamento roteiam o tráfego por endereço IP, porta e protocolo para uma configuração de balanceamento de carga que consiste em proxy de destino e serviço de back-end.
Especificação de endereço IP. Cada regra de encaminhamento referencia um endereço IP regional único que pode ser usado nos registros DNS do aplicativo. É possível reservar um endereço IP estático que possa ser usado ou permitir que o Cloud Load Balancing atribua um para você. Recomendamos reservar um endereço IP estático. Caso contrário, será necessário atualizar o registro DNS com o endereço IP temporário recém-atribuído sempre que uma regra de encaminhamento for excluída e uma nova for criada.
Os clientes usam o endereço IP e a porta para se conectar aos proxies do Envoy relativos ao balanceador de carga. O endereço IP da regra de encaminhamento é o endereço IP do balanceador de carga, que é chamado frequentemente de endereço IP virtual ou VIP. Os clientes que se conectam a um balanceador de carga precisam usar a versão 1.1 ou posterior do HTTP. Para ver a lista completa de protocolos suportados, consulte Comparação de recursos do balanceador de carga.
O endereço IP interno associado à regra de encaminhamento pode ser proveniente de uma sub-rede na mesma rede e região que os back-ends.
Especificação da porta. Cada regra de encaminhamento para um balanceador de carga de aplicativo pode referenciar uma única porta de 1 a 65535. Para permitir várias portas, configure várias regras de encaminhamento. É possível configurar várias regras de encaminhamento para usar o mesmo endereço IP interno (VIP) e ter referência ao mesmo proxy HTTP ou HTTPS de destino, desde que a combinação geral do endereço IP, da porta e do protocolo sejam exclusivos para cada regra de encaminhamento. Dessa forma, é possível usar um único balanceador de carga com um mapa de URL compartilhado como um proxy para vários aplicativos.
O tipo de regra de encaminhamento, o endereço IP e o esquema de balanceamento de carga usado por balanceadores de carga de aplicativo internos depende do modo do balanceador de carga.
| Balanceador de carga de aplicativo interno entre regiões | |||||
|---|---|---|---|---|---|
| Regra de encaminhamento | |||||
| Endereço IP regional | |||||
| Esquema de balanceamento de carga |
|
||||
| Endereço IP (opcional) |
|
||||
| Roteamento do cliente para o front-end do balanceador de carga | O acesso global é ativado por padrão para permitir que clientes de qualquer região em uma VPC acessem o balanceador de carga. Os back-ends podem estar em várias regiões. |
||||
| Balanceador de carga de aplicativo interno regional | |||||
| Regra de encaminhamento | |||||
| Endereço IP regional | |||||