Um equilibrador de carga é um sistema composto por vários componentes que interagem. Não existe um único recurso de API que represente um balanceador de carga. Em alternativa, vários componentes funcionam em conjunto para distribuir o tráfego recebido por vários back-ends.
O diagrama seguinte mostra os componentes principais de um Application Load Balancer, um Network Load Balancer de proxy e um Network Load Balancer de encaminhamento.
Balanceador de carga de aplicações
Balanceador de carga de rede de proxy
Balanceador de carga de rede de passagem
Esta secção apresenta uma vista geral dos principais componentes de um balanceador de carga, desde o ponto em que o tráfego atinge o balanceador de carga até à fase em que é encaminhado para o recurso de back-end. Para uma compreensão mais detalhada de cada componente do equilibrador de carga, consulte a página com o link em cada secção.
Regra de encaminhamento
Uma regra de encaminhamento especifica um endereço IP, um protocolo IP e uma ou mais portas nas quais o balanceador de carga aceita tráfego. A regra de encaminhamento e o respetivo endereço IP anexado representam o front-end de um balanceador de carga Google Cloud .
Para mais informações, consulte o artigo Vista geral das regras de encaminhamento.
Proxy de destino
Os proxies de destino terminam as ligações recebidas de clientes e criam novas ligações do balanceador de carga aos back-ends.
A primeira ligação tem origem no cliente e é terminada no proxy de destino do equilibrador de carga.
A segunda ligação começa no proxy de destino e termina na instância de back-end, que processa o pedido do cliente.
A primeira ligação é terminada num front-end da Google (GFE) ou numa sub-rede especialmente designada conhecida como a sub-rede apenas de proxy, que está reservada exclusivamente para proxies Envoy. Para saber se um balanceador de carga se baseia no GFE ou no Envoy, consulte o artigo Tecnologias subjacentes dos Google Cloud balanceadores de carga.
Os proxies de destino são usados apenas por equilibradores de carga baseados em proxy, como os equilibradores de carga de aplicações e os equilibradores de carga de rede de proxy. Para estes tipos de balanceadores de carga, as respostas das instâncias de back-end são enviadas de volta para o proxy de destino em vez de diretamente para o cliente.
Para mais informações, consulte o artigo Segmente proxies.
Sub-rede só de proxy
Uma sub-rede só de proxy fornece um conjunto de endereços IP reservados exclusivamente para proxies Envoy usados por Google Cloud balanceadores de carga. Os proxies terminam as ligações recebidas e, em seguida, criam novas ligações ao back-end.
Para mais informações, consulte o artigo Sub-redes apenas de proxy para equilibradores de carga baseados no Envoy
Certificados SSL
Também conhecidos como certificados Transport Layer Security (TLS), os certificados SSL facilitam a comunicação segura entre clientes e equilibradores de carga. Os balanceadores de carga baseados em proxy cujas regras de encaminhamento fazem referência a um proxy HTTPS de destino ou a um proxy SSL de destino requerem uma chave privada e um certificado SSL como parte da configuração do proxy de destino do balanceador de carga.
Para mais informações, consulte o artigo Certificados SSL.
Mapa do URL
Após terminar a ligação, o proxy HTTP(S) de destino usa o mapa de URLs para decidir para onde encaminhar o novo pedido (a segunda ligação, conforme indicado na secção Proxy de destino). O mapa de URLs encaminha o pedido para o serviço de back-end ou o contentor de back-end. Os mapas de URLs só são usados por equilibradores de carga de aplicações. Como os balanceadores de carga de aplicações funcionam na camada 7 do modelo OSI, podem tomar decisões de encaminhamento com base em atributos HTTP, como o nome do domínio, o caminho do pedido e os parâmetros de consulta.
Para mais informações, consulte o artigo Mapas de URLs.
Serviço de back-end
Um serviço de back-end define como o balanceador de carga distribui o tráfego. A configuração do serviço de back-end contém um conjunto de valores, como o protocolo usado para estabelecer ligação aos back-ends, várias definições de distribuição e de sessão, verificações de estado e limites de tempo.
Estas definições oferecem um controlo detalhado sobre o comportamento do equilibrador de carga e permitem-lhe direcionar o tráfego para os back-ends corretos, que podem ser grupos de instâncias de VMs ou grupos de pontos finais de rede (NEGs).
Para mais informações, consulte o artigo Vista geral dos serviços de back-end.
Contentor de back-end
Se a sua carga de trabalho publicar conteúdo estático através do protocolo HTTP(S), pode usar um contentor do Cloud Storage para armazenar conteúdo estático e, em seguida, usar um contentor de back-end para encaminhar pedidos para o mesmo.
Verificações de funcionamento
Quando configura o serviço de back-end de um balanceador de carga, tem de especificar uma ou mais verificações de funcionamento para os respetivos back-ends. Uma verificação de funcionamento, como o nome sugere, determina se as instâncias de back-end do equilibrador de carga estão em bom estado. Esta determinação baseia-se na capacidade do back-end de responder ao tráfego recebido. O tráfego ao qual um back-end tem de responder depende do tipo de balanceador de carga. Pode criar verificações de funcionamento usando os protocolos da camada 7 e da camada 4 para monitorizar instâncias com balanceamento de carga.
Regras de firewall
Para que as verificações de funcionamento funcionem, tem de criar regras da firewall de entrada allow
que permitam que as sondas de verificação de funcionamento alcancem os seus back-ends.
Os balanceadores de carga baseados em front-ends da Google requerem uma regra de firewall de permissão de entrada que permita que o tráfego dos CIDRs do front-end da Google se ligue aos seus back-ends. Os balanceadores de carga baseados no proxy Envoy de código aberto requerem uma regra de firewall de entrada allow
que permita que o tráfego da sub-rede só de proxy alcance as instâncias de back-end.
Para mais informações, consulte o artigo Regras da firewall.
Back-ends
Os back-ends são o destino final do tráfego com balanceamento de carga.
Os diferentes balanceadores de carga são compatíveis com diferentes tipos de back-ends. Quando adiciona um back-end ao serviço de back-end, especifica um modo de equilíbrio. Este modo avalia a capacidade do back-end para processar novos pedidos e determina como o tráfego é distribuído entre os back-ends.
Para mais informações, consulte o artigo Back-ends.
O que se segue?
- Para ajudar a determinar que Google Cloud balanceador de carga satisfaz melhor as suas necessidades, consulte o artigo Escolha um balanceador de carga.
- Para ver uma vista geral comparativa das funcionalidades de balanceamento de carga oferecidas pelo Cloud Load Balancing, consulte a comparação de funcionalidades do balanceador de carga.