Os balanceadores de carga de rede de passagem externa global são balanceadores de carga de passagem da camada 4 que distribuem o tráfego externo entre back-ends (grupos de instâncias ou grupos de endpoints de rede) que podem estar em várias regiões Cloud de Confiance . Esses balanceadores de carga são criados em Maglevs distribuídos globalmente, que operam juntos usando a rede global e o plano de controle do Google.
Um balanceador de carga de rede de passagem externa global direciona automaticamente o tráfego para a região de back-end mais próxima do ponto em que o tráfego do usuário entra na rede global doS3NS.
Desde que os back-ends qualificados estejam configurados em duas ou mais regiões:
Se uma região estiver no limite da capacidade, o balanceador de carga vai transferir automaticamente algumas das novas conexões de usuário que excederem a capacidade da região para as regiões mais próximas com capacidade disponível, mantendo as conexões atuais na região em que estão.
Se uma região estiver inativa, o balanceador de carga fará failover automático do tráfego para a região mais próxima com capacidade disponível.
Os balanceadores de carga de rede de passagem externa globais podem receber tráfego de:
- Qualquer cliente na Internet
- Cloud de Confiance VMs com IPs externos
- Cloud de Confiance VMs que têm acesso à Internet pelo Cloud NAT ou NAT baseado em instância
Use um balanceador de carga de rede de passagem externa global nas seguintes circunstâncias:
Você precisa de um balanceador de carga de passagem de camada 4 de alto desempenho para tráfego TCP, UDP, ESP, GRE, ICMP e ICMPv6. O balanceador de carga pode processar tráfego IPv4 e IPv6.
Você precisa receber os pacotes originais sem proxy. Por exemplo, se você precisa preservar o endereço IP de origem do cliente.
Você precisa veicular tráfego para back-ends em várias Cloud de Confiance regiões com baixa latência, usando o mesmo endereço IP anycast.
Você precisa que sua implantação seja resiliente a falhas e sobrecargas regionais de back-end, redirecionando o tráfego de forma automática e gradual para a próxima região mais próxima com capacidade disponível.
Para usar um balanceador de carga de rede de passagem externa global, sua implantação precisa atender ao seguinte requisito:
- Se você estiver veiculando tráfego TLS (SSL), os back-ends precisarão encerrar o tráfego SSL. O balanceador de carga de rede de passagem externa global não é compatível com o encerramento de SSL.
Principais recursos
Os balanceadores de carga de rede de passagem externa globais são compatíveis com os seguintes recursos principais.
Alta disponibilidade por design
O balanceador de carga fornece dois endereços IP anycast externos globais, cada um atendido por uma infraestrutura de servidor de plano de controle e dados de balanceamento de carga global isolada e independente (também conhecida como um grupo de disponibilidade) para oferecer alta disponibilidade. Os clientes podem usar qualquer um dos endereços IP para se conectar ao back-end íntegro mais próximo com capacidade disponível.
O balanceador de carga permite melhorar a disponibilidade do serviço ao criar serviços de back-end globais com back-ends em várias regiões. Cloud de Confiance Se os back-ends de uma determinada região estiverem inativos, o tráfego fará o failover para a próxima região mais próxima normalmente.
Recomendamos implantar back-ends em pelo menos três regiões Cloud de Confiance para garantir a resiliência contra interrupções regionais, mesmo que seja permitido configurar todos os back-ends em uma única região Cloud de Confiance .
Latência e balanceamento de carga
Um balanceador de carga de rede de passagem externa global usa exclusivamente o nível Premium. Com o nível Premium, o tráfego de entrada da Internet entra na rede de alto desempenho e baixa latência do S3NSno ponto de presença (PoP) mais próximo do usuário. Da mesma forma, o tráfego de saída é enviado pela rede do S3NS, saindo no PoP mais próximo do usuário.
Os balanceadores de carga Maglev distribuídos globalmente encaminham o tráfego de entrada para a regiãoCloud de Confiance mais próxima do PoP em que o tráfego entra na rede S3NS, desde que a região tenha back-ends íntegros com capacidade disponível. Caso contrário, o balanceador de carga automaticamente e de maneira gradual transborda o tráfego para a região mais próxima que tem back-ends íntegros com capacidade disponível.
Você determina as posições e capacidades de back-end para otimizar a latência de pacotes e a eficiência do back-end. As capacidades de back-end podem ser baseadas na taxa máxima de PPS (pacote por segundo) de entrada, na utilização máxima da CPU ou em ambas. As capacidades de back-end configuradas em um serviço de back-end são compartilhadas de maneira justa entre os endereços IP de todas as regras de encaminhamento que fazem referência ao serviço de back-end.
Como funcionam os balanceadores de carga de rede de passagem externa global
Um balanceador de carga de rede de passagem externa global tem um front-end (a regra de encaminhamento) e um back-end (o serviço de back-end e os grupos de back-end). Use grupos de instâncias ou NEGs zonais GCE_VM_IP como grupos de back-end.
Arquitetura
O diagrama a seguir mostra um balanceador de carga de rede de passagem externa global distribuindo o tráfego para back-ends em várias regiões Cloud de Confiance . Quando o balanceador de carga é criado,o Cloud de Confiance atribui a ele dois endereços IP Anycast externos globais, fornecidos por uma infraestrutura de plano de controle e de dados isolada e independente (também conhecida como grupos de disponibilidade, AG0 e AG1).
Os dois planos de controle e de dados oferecem alta disponibilidade, tolerância a falhas e resiliência para todos os balanceadores de carga de rede de passagem externa global. Uma falha no plano de controle ou de dados de um grupo de disponibilidade não afeta o outro grupo de disponibilidade. Os clientes configurados corretamente precisam conseguir se conectar aos dois endereços IP do balanceador de carga. Por exemplo, se um cliente não conseguir se conectar ao endereço IP do AG0, ele precisará ser configurado para se conectar ao endereço IP do AG1.
O balanceador de carga consiste nos seguintes componentes de configuração.
Dois endereços IP externo globais, um de cada grupo de disponibilidade (AG0 e AG1). Elas podem ser estáticas ou temporárias. Para mais detalhes, consulte Endereços IP.
Uma regra de encaminhamento global que especifica os dois endereços IP externo globais, um de cada grupo de disponibilidade (AG0 e AG1). Ao criar essa regra de encaminhamento,o Cloud de Confiance gera duas regras de encaminhamento filhas somente leitura, uma para cada grupo de disponibilidade, para garantir alta disponibilidade. Para mais detalhes, consulte Regras de encaminhamento.
Um serviço de back-end global que define como o tráfego é distribuído para os back-ends em várias Cloud de Confiance regiões. Os grupos de back-end podem ser todos os grupos de instâncias (grupos gerenciados de instâncias zonais ou grupos não gerenciados de instâncias zonais) ou todos os back-ends de NEG zonais (NEGs zonais com endpoints
GCE_VM_IP). Para mais detalhes, consulte Serviços de back-end.Verificação de integridade global associada ao serviço de back-end. Para mais detalhes, consulte Verificações de integridade.
Regras de firewall que permitem que o tráfego de balanceamento de carga e as sondagens de verificação de integridade alcancem as VMs de back-end. Para mais detalhes, consulte Regras de firewall.
Retorno direto do servidor
Um balanceador de carga de rede de passagem externa global, assim como outros balanceadores de carga de rede de passagem, não é um proxy. 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 e enviam os pacotes de retorno diretamente para os clientes. As respostas não voltam pelo balanceador de carga. Esse processo é conhecido como retorno direto do servidor (DSR).
Roteamento local para o endereço IP do balanceador de carga
O balanceador de carga de rede de passagem externa global, assim como outros balanceadores de carga de rede de passagem, não realiza NAT de origem ou destino do endereço IP ou das portas.
O Cloud de Confiance ambiente de convidado configura cada VM de back-end com os endereços IP do balanceador de carga. Uma entrada na tabela de roteamento local da VM configura o controlador de interface de rede (NIC) com balanceamento de carga da VM de back-end para aceitar pacotes cujos endereços IP de destino correspondem a cada endereço IP da regra de encaminhamento. Para saber mais, consulte Verificar a tabela de roteamento local para os endereços IP do balanceador de carga.
Endereços IP para pacotes de solicitação e retorno
Quando uma VM de back-end recebe um pacote com carga balanceada de um cliente, a origem e o destino do pacote são os seguintes:
- Origem: um endereço IP externo associado ao cliente, uma VM Cloud de Confiance ou um sistema na Internet.
- Destino: um dos endereços IP da regra de encaminhamento do balanceador de carga.
Embora o ambiente convidado configure automaticamente rotas locais para que o sistema operacional da VM aceite o tráfego destinado ao endereço IP do balanceador de carga, o sistema operacional não pode entregar esses pacotes ao aplicativo se ele estiver configurado para escutar apenas no endereço IP interno atribuído à VM.
Para garantir que o sistema operacional entregue pacotes ao seu aplicativo, configure o aplicativo em execução nas VMs de back-end para fazer o seguinte:
- Detectar (vincular) os endereços IP da regra de encaminhamento do balanceador de carga ou qualquer endereço
IP (
0.0.0.0ou::).
- Se o protocolo da regra de encaminhamento do balanceador de carga suportar portas, detectar em (vincular) uma porta incluída na regra de encaminhamento do balanceador de carga
Os pacotes de retorno são enviados diretamente das VMs de back-end do balanceador de carga para o cliente. O endereço IP de origem do pacote de retorno depende do protocolo:
- O TCP é orientado por conexão. Assim, as VMs de back-end respondem com pacotes cujos endereços IP de origem correspondam ao endereço IP de destino do pacote de solicitação para que o cliente possa associar os pacotes de resposta à conexão TCP apropriada.
- UDP, ESP, GRE, ICMP e ICMPv6 não têm conexão. As VMs de back-end podem enviar pacotes de resposta com endereços IP de origem que correspondam ao endereço IP da regra de encaminhamento ou a qualquer endereço IP externo atribuído à VM. Na prática, a maioria dos clientes espera que a resposta seja do mesmo endereço IP que enviou os pacotes.
A tabela a seguir resume os endereços IP de origem e destino para pacotes de resposta:
| Tipo de tráfego | Origem | Destino |
|---|---|---|
| TCP | O destino do pacote solicitante | A origem do pacote solicitante |
| UDP, ESP, GRE, ICMP e ICMPv6 | Na maioria dos casos de uso, o destino do pacote de solicitação1 | A origem do pacote solicitante |
1 Quando uma VM tem um endereço IP externo ou quando você está usando o Cloud NAT, também é possível definir o endereço IP de origem do pacote de resposta como o endereço IPv4 interno principal da VM de dados. Cloud de Confiance ou o Cloud NAT muda o endereço IP de origem do pacote de resposta para o endereço IPv4 externo da placa de rede (NIC, na sigla em inglês) ou o endereço IPv4 externo do Cloud NAT a fim de enviar o pacote de resposta para o endereço IP externo do cliente. Não usar o endereço IP da regra de encaminhamento como uma origem é um cenário avançado, porque o cliente recebe um pacote de resposta de um endereço IP externo que não corresponde ao endereço IP a que ele enviou um pacote de solicitação.
Componentes
As seções a seguir descrevem cada componente de configuração de um balanceador de carga de rede de passagem externa global em detalhes.
Endereços IP
Um balanceador de carga de rede de passagem externa global requer dois endereços IP externo globais para oferecer alta disponibilidade. As regras de encaminhamento do balanceador de carga usam esses endereços para aceitar o tráfego de entrada e precisam pertencer à mesma versão de IP (IPv4 ou IPv6). O Cloud de Confiance anuncia os endereços IP do balanceador de carga de todos os pontos de presença no mundo todo. Cada endereço IP do balanceador de carga é um endereço IP anycast global compatível apenas com o nível Premium.
Cada um dos dois endereços IP precisa vir de pools de endereços IP externo globais
que pertencem a um grupo de disponibilidade distinto. Os endereços IP não estão associados a uma sub-rede em uma rede VPC. Na API, os grupos de disponibilidade são representados usando o campo purpose no recurso globalAddresses:
PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0: para endereços do grupo de disponibilidade 0.PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1: para endereços do grupo de disponibilidade 1.
O campo IPAddresses de um recurso de regra de encaminhamento
especifica zero, um ou dois endereços IP:
- Se omitido,o Cloud de Confiance vai atribuir dois endereços IP temporários, um de cada grupo de disponibilidade.
- Se você especificar um endereço IP que faça referência a um recurso de endereço IP estático de um grupo de disponibilidade,o Cloud de Confiance vai atribuir um endereço IP efêmero do outro grupo.
- Se você especificar dois endereços IP que referenciam recursos de endereço IP estático existentes, eles precisarão ser de grupos de disponibilidade diferentes.
Use endereços IP estáticos reservados para a regra de encaminhamento se você precisar manter os endereços associados ao seu projeto para reutilização depois de excluir uma regra de encaminhamento ou se precisar que várias regras de encaminhamento façam referência aos mesmos endereços IP.
Para uma regra de encaminhamento do balanceador de carga de rede de passagem externa global, os endereços IP podem ser um dos seguintes:
- Um endereço IPv4 estático ou temporário de um pool de endereços IP globais do Google.
- Um intervalo
/96estático ou temporário de endereços IPv6 externos de um pool de endereços IP globais do Google. - Um endereço IPv4 BYOIP estático de um prefixo público delegado global.
Um balanceador de carga de rede de passagem externa global aceita o uso de seus próprios endereços IP (BYOIP) apenas para endereços IPv4. O suporte é limitado à API BYOIP v1. O provisionamento de novos intervalos IPv4 pode levar até quatro semanas, e não há APIs que permitam controlar o status de anúncio do BGP. Para mais detalhes, consulte Usar suas próprias configurações de IP.
O campo IPAddresses de uma regra de encaminhamento só pode ser definido na criação e não pode ser atualizado.
Independente da origem (do Google ou BYOIP), os endereços IP externo globais em Cloud de Confiance são extraídos de três tipos distintos de pools de endereços IP externo globais:
- Pools de endereços IP usados por balanceadores de carga de rede de passagem externa globais para grupo de disponibilidade, AG0
- Pools de endereços IP usados por balanceadores de carga de rede de passagem externa globais para grupo de disponibilidade, AG1
- Pools de endereços IP usados por balanceadores de carga globais externos baseados em proxy
Portanto, os balanceadores de carga de rede de passagem externa globais não podem compartilhar endereços IP com outros balanceadores de carga globais ou regionais.
Regras globais de encaminhamento
Uma regra de encaminhamento do balanceador de carga de rede de passagem externa global forma o front-end do balanceador de carga, especificando os endereços IP de destino, o protocolo e as portas em que o balanceador de carga aceita tráfego. Como um balanceador de carga de rede de passagem externa global não é um proxy, ele transmite o tráfego para back-ends sem modificar os endereços IP de origem e destino, protocolo e portas, se o protocolo tiver informações de porta.
Uma regra de encaminhamento do balanceador de carga de rede de passagem externa global que você configura especifica o seguinte:
- O esquema de balanceamento de carga é designado como
EXTERNAL_PASSTHROUGH. - O par de endereços IP globais no campo
IPAddresses[], um de cada grupo de disponibilidade. - O protocolo (
TCP,UDPouL3_DEFAULT) e as portas.
Para cada regra de encaminhamento do balanceador de carga de rede de passagem externa global que você cria (também conhecida como regra de encaminhamento principal),o Cloud de Confiancegera duas regras de encaminhamento filhas somente leitura para cada pilha de balanceamento de carga: AVAILABILITY_GROUP0 e AVAILABILITY_GROUP1. A regra de encaminhamento filha tem as mesmas configurações de protocolo IP, porta e serviço de back-end que a regra de encaminhamento pai, mas tem apenas um dos dois endereços IP da regra de encaminhamento pai.
As regras de encaminhamento filhas podem ser identificadas de maneira exclusiva porque têm -ag0 e -ag1 anexados ao nome da regra de encaminhamento principal. Elas não consomem
cota adicional nem geram custos extras. As métricas de monitoramento e o status de integridade são informados no nível da regra de encaminhamento secundária.
O tráfego de entrada é associado a uma regra de encaminhamento, correspondendo ao endereço IP de destino, ao protocolo e à porta de um pacote a uma combinação de campos da regra de encaminhamento: dois endereços IP, protocolo e, se o protocolo for baseado em portas, uma das portas, um intervalo de portas ou todas as portas. A regra de encaminhamento direciona o tráfego para o serviço de back-end do balanceador de carga.
As regras de encaminhamento para um balanceador de carga de rede de passagem externa global podem ser configuradas com endereços IPv4 ou IPv6. Se você quiser que o balanceador de carga processe tráfego IPv4 e IPv6, crie duas regras de encaminhamento:
Uma regra de encaminhamento para tráfego IPv4 que aponta para back-ends somente IPv4 ou de pilha dupla
Uma regra de encaminhamento para tráfego IPv6 que aponta para back-ends somente IPv6 ou de pilha dupla
É possível ter uma regra de encaminhamento IPv4 e uma de IPv6 para fazer referência ao mesmo serviço de back-end, mas ele precisa fazer referência aos back-ends com interfaces de rede de VM de pilha dupla.
A versão IP da regra de encaminhamento precisa corresponder ao tipo de pilha das interfaces de rede da VM de back-end.
| Tipo de pilha das interfaces de rede da VM de back-end | Regra de encaminhamento |
|---|---|
Interface de rede de VM somente IPv4 (IPV4_ONLY) |
Podem ser back-ends apenas para regras de encaminhamento IPv4. |
Interface de rede de VM somente IPv6 (IPV6_ONLY) |
Podem ser back-ends apenas para regras de encaminhamento IPv6. |
Interface de rede de VM de pilha dupla (IPV4_IPV6) |
Podem ser back-ends para regras de encaminhamento IPv4, IPv6 ou ambos. |
Protocolos da regra de encaminhamento
Os balanceadores de carga de rede de passagem externa global são compatíveis com as seguintes opções de protocolo para cada regra de encaminhamento: TCP, UDP e L3_DEFAULT.
Use as opções TCP e UDP para configurar o balanceamento de carga TCP ou UDP, respectivamente. A opção de protocolo L3_DEFAULT permite que um balanceador de carga de rede de passagem externa global faça o balanceamento de carga de tráfego TCP, UDP, ESP, GRE, ICMP e ICMPv6.
Além da compatibilidade com protocolos diferentes de TCP e UDP, L3_DEFAULT possibilita que
uma única regra de encaminhamento exiba vários protocolos. Por exemplo, os serviços IPSec geralmente processam alguma combinação de tráfego IKE e NAT-T
baseado em ESP e UDP. A opção L3_DEFAULT permite que uma única
regra de encaminhamento seja configurada para processar todos esses protocolos.
Se você estiver usando o protocolo L3_DEFAULT, vai precisar configurar a regra de encaminhamento
para aceitar o tráfego em todas as portas. Como L3_DEFAULT é uma regra catch-all, como prática recomendada de segurança, configure regras de firewall de entrada que permitam apenas os protocolos e portas IP necessários.
Várias regras de encaminhamento
É possível configurar várias regras de encaminhamento, que podem ser de dois tipos:
Várias regras de encaminhamento para os mesmos endereços IP. É possível configurar várias regras de encaminhamento para o mesmo par de endereços IP, desde que não haja duas regras de encaminhamento consumindo as mesmas combinações de protocolo e porta. Cada regra de encaminhamento pode ter um serviço de back-end diferente, ou várias regras de encaminhamento podem ter o mesmo serviço de back-end.
Várias regras de encaminhamento que referenciam o mesmo serviço de back-end. É possível configurar várias regras de encaminhamento que referenciam o mesmo serviço de back-end. Sujeitas às condições observadas no primeiro ponto, duas ou mais regras de encaminhamento podem usar o mesmo par de endereços IP, ou cada regra de encaminhamento pode usar um par exclusivo. O tráfego de todos os endereços IP de todas as regras de encaminhamento que referenciam o mesmo serviço de back-end compartilha as capacidades de destino de back-end de maneira justa.
No entanto, não é possível compartilhar o mesmo endereço IP externo global entre um balanceador de carga de rede de passagem externa global e um balanceador de carga de aplicativo externo global ou um balanceador de carga de rede de proxy externo global.
Ao usar várias regras de encaminhamento, configure o aplicativo em execução nas suas VMs de back-end para que ele seja vinculado a todos os endereços IP externo das regra de encaminhamento do balanceador de carga.
A configuração de várias regras de encaminhamento pode ser útil para os seguintes casos de uso:
- Você precisa configurar mais de um par de endereços IP externo para o mesmo serviço de back-end. Por exemplo, uma regra de encaminhamento para endereços IPv4 e outra para endereços IPv6.
- Você precisa configurar várias regras de encaminhamento para o mesmo par de endereços IP externo, mas com protocolos diferentes ou portas ou intervalos de portas não sobrepostos. As regras de encaminhamento podem usar os mesmos serviços de back-end ou serviços diferentes.
Restrições de protocolo e porta de várias regras de encaminhamento
Cloud de Confiance seleciona no máximo uma regra de encaminhamento para processar um pacote de entrada. Duas ou mais regras de encaminhamento que usam o mesmo par de endereços IP externo globais precisam ter combinações exclusivas de protocolo e porta de acordo com estas restrições:Uma regra de encaminhamento configurada para todas as portas de um protocolo impede a criação de outras regras de encaminhamento usando o mesmo protocolo e par de endereços IP.
As regras de encaminhamento usando protocolos
TCPouUDPpodem ser configuradas para usar todas as portas ou para portas específicas.Por exemplo, se você criar uma regra de encaminhamento usando o par de endereços IP
136.124.69.214e136.124.83.205, o protocoloTCPe todas as portas, não será possível criar outra regra de encaminhamento usando o mesmo par de endereços IP e o protocoloTCP.É possível criar duas regras de encaminhamento, usando o par de endereços IP e o protocolo
TCP, se cada uma tiver portas exclusivas ou intervalos de portas não sobrepostos. Por exemplo, é possível criar duas regras de encaminhamento usando o mesmo par de endereços IP e o protocoloTCP, em que uma porta da regra de encaminhamento é80,443e a outra usa o intervalo de portas81-442.Apenas uma regra de encaminhamento
L3_DEFAULTpode ser criada por par de endereços IP.Isso ocorre porque o protocolo
L3_DEFAULTusa todas as portas por definição. Nesse contexto, o termo "todas as portas" inclui protocolos sem informações de porta.Uma única regra de encaminhamento
L3_DEFAULTpode coexistir com outras regras que usam protocolos específicos (TCPouUDP) e o mesmo par de endereços IP.Se você tiver regras de encaminhamento TCP ou UDP específicas anexadas a um par de endereços IP, também poderá anexar uma regra de encaminhamento
L3_DEFAULTao mesmo par de endereços IP para agir como um substituto para qualquer tráfego que não corresponda às regras de encaminhamento específicas. Uma regra de encaminhamentoL3_DEFAULTprocessa pacotes enviados para o endereço IP de destino se e somente se o endereço IP, o protocolo e a porta de destino do pacote não corresponderem a uma regra de encaminhamento específica do protocolo.Para ilustrar isso, considere estes dois cenários. Nas duas situações, as regras de encaminhamento usam o mesmo par de endereços IP:
136.124.69.214e136.124.83.205.Cenário 1. A primeira regra de encaminhamento usa o protocolo
L3_DEFAULT. A segunda regra de encaminhamento usa o protocoloTCPe todas as portas. Os pacotes TCP enviados para qualquer porta de destino de um dos endereços IP são processados pela segunda regra de encaminhamento, que é mais específica. Os pacotes que usam protocolos diferentes são processados pela primeira regra de encaminhamento.Cenário 2. A primeira regra de encaminhamento usa o protocolo
L3_DEFAULT. A segunda regra de encaminhamento usa o protocoloTCPe a porta8080. Os pacotes TCP enviados para a porta 8080 de qualquer um dos endereços IP são processados pela segunda regra de encaminhamento. Todos os outros pacotes, incluindo pacotes TCP enviados para diferentes portas de destino, são processados pela primeira regra de encaminhamento.
Seleção de regra de encaminhamento
Cloud de Confiance seleciona uma ou nenhuma regra de encaminhamento para processar um pacote recebido usando esse processo de eliminação, começando pelo conjunto de candidatos de regra de encaminhamento que correspondem ao endereço IP de destino do pacote:
Elimine as regras de encaminhamento que não correspondem ao protocolo do pacote, exceto as regras de encaminhamento
L3_DEFAULT. As regras de encaminhamento que usam o protocoloL3_DEFAULTnunca são eliminadas por esta etapa porqueL3_DEFAULTcorresponde a todos os protocolos. Por exemplo, se o protocolo do pacote for TCP, apenas as regras de encaminhamento que usam o protocoloUDPserão eliminadas.Elimine as regras de encaminhamento cuja porta não corresponde à do pacote. As regras de encaminhamento configuradas para todas as portas nunca são eliminadas nesta etapa, porque uma regra corresponde a qualquer porta.
Neste momento, os candidatos restantes da regra de encaminhamento se enquadram em uma das seguintes categorias:
Restam duas regras de encaminhamento: uma
L3_DEFAULTe outra específica do protocolo. Use a regra de encaminhamento específica do protocolo para rotear o pacote.Uma única regra de encaminhamento permanece, seja uma regra de encaminhamento
L3_DEFAULTou uma regra de encaminhamento específica do protocolo. Ele é usado para rotear o pacote.Os candidatos da regra de encaminhamento zero permanecem e o pacote é descartado.
Serviços de back-end globais
Um serviço de back-end de um balanceador de carga de rede de passagem externa global distribui o tráfego de entrada entre back-ends anexados que podem estar em várias Cloud de Confiance regiões. Cada back-end é composto de um grupo de instâncias ou grupo de endpoint da rede e informações sobre a capacidade de serviço do back-end. A capacidade de exibição do back-end pode ser baseada no uso da CPU, em pacotes por segundo (PPS) ou em ambos. O serviço de back-end gerencia a distribuição de tráfego de acordo com as configurações de afinidade e capacidade configuradas.
O serviço de back-end define os seguintes parâmetros de back-end:
Esquema de balanceamento de carga. Para designar um serviço de back-end a um balanceador de carga de rede de passagem externa global, o esquema de balanceamento de carga precisa ser definido explicitamente como
EXTERNAL_PASSTHROUGH.Protocolo. O campo de protocolo do serviço de back-end é redundante e só pode ser definido como
UNSPECIFIED. Os serviços de back-end com protocoloUNSPECIFIEDpodem ser usados com qualquer regra de encaminhamento, não importa qual seja o protocolo da regra.Distribuição de tráfego. Um serviço de back-end distribui o tráfego de acordo com a afinidade da sessão, a política de rastreamento de conexão, o modo de balanceamento de carga e as capacidades de back-end configurados, além da política de localidade do balanceamento de carga. O serviço de back-end também pode ser configurado para ativar a diminuição da conexão, reduzir as capacidades de back-end e designar back-ends preferenciais. A maioria dessas configurações tem valores padrão que permitem começar rapidamente.
Verificação de integridade. Os serviços de back-end precisam ter uma verificação de integridade vinculada.
Back-ends. Os back-ends são os endpoints reais que recebem tráfego com carga balanceada. Um balanceador de carga de rede de passagem externa global pode distribuir tráfego para grupos de instâncias ou NEGs zonais localizados em várias regiões: Cloud de Confiance
Se você escolher grupos de instâncias, poderá usar grupos gerenciados por zona, não gerenciados por zona ou uma combinação dos tipos de grupos. Os grupos de instâncias são compatíveis com
RATEeUTILIZATIONcomo modo de balanceamento de carga.Se você escolher NEGs zonais, use NEGs zonais
GCE_VM_IP. As NEGs são compatíveis apenas comRATEcomo modo de balanceamento de carga.
Compatibilidade da interface de rede da VM com regras de encaminhamento
Como os balanceadores de carga de rede de passagem externa global não encerram nem traduzem o tráfego, o tipo de pilha da interface de rede da VM de back-end precisa ser compatível com a versão do endereço IP da regra de encaminhamento.
| Regra de encaminhamento | Tipo de pilha das interfaces de rede da VM de back-end. |
|---|---|
| Somente regras de encaminhamento IPv4 | Somente IPv4 (IPV4_ONLY) ou pilha dupla (IPV4_IPv6) |
| Somente regras de encaminhamento IPv6 | Somente IPv6 (IPV6_ONLY) ou pilha dupla (IPV4_IPv6) |
| Regras de encaminhamento IPv4 e IPv6 | Pilha dupla (IPV4_IPv6) |
Compatibilidade da interface de rede da VM de back-end com sub-redes VPC
Como mostrado na tabela anterior, é possível configurar um balanceador de carga de rede de passagem externa global para ter back-ends que contenham interfaces somente IPv4, interfaces de pilha dupla e interfaces somente IPv6. A tabela a seguir resume quais tipos de interface de rede de VM de back-end são compatíveis com cada tipo de pilha de sub-rede da VPC.
| Tipo de pilha de sub-redes VPC | Tipo de pilha da interface de rede da VM de back-end. |
|---|---|
IPV4_ONLY (pilha única)Apenas intervalos de sub-rede IPv4 |
Somente IPv4 (IPV4_ONLY) |
IPV4_IPV6 (pilha dupla)Intervalos de sub-rede IPv4 e IPv6 |
Somente IPv4 (IPV4_ONLY), pilha dupla (IPV4_IPv6)
e somente IPv6 (IPV6_ONLY) |
IPV6_ONLY (pilha única)Somente intervalos de sub-rede IPv6 |
Somente IPv6 (IPV6_ONLY) |
Observações:
O endereço IP atribuído a uma interface de rede de VM é alocado diretamente da sub-rede VPC subjacente.
Para conectividade IPv6, quando uma interface de rede de VM é atribuída a uma sub-rede
/64habilitada para IPv6,o Cloud de Confiance aloca à interface de rede de VM um intervalo de endereços/96da primeira metade (/65) do intervalo de endereços IPv6 externos/64da sub-rede. Para saber mais, consulte Especificações do IPv6 externo.Quando o tipo de pilha da interface de rede da VM é de pilha dupla (
IPV4_IPv6) ou somente IPv6 (IPV6_ONLY), é necessário escolher como o endereço IPv6 da interface de rede da VM pode ser acessado configurando a definição--ipv6-access-typena sub-rede da VPC comoEXTERNALouINTERNAL. Se o--ipv6-access-typeda sub-rede estiver definido comoEXTERNAL, você também precisará definir o--ipv6-network-tierna interface de rede da VM comoPREMIUM. Para saber mais, consulte Intervalos de sub-redes IPv6.
Back-ends de grupo de instâncias e interfaces de rede
Em um determinado grupo de instâncias (gerenciadas ou não), a interface de rede nic0 de cada VM membro está sempre na mesma rede VPC:
- Para grupos gerenciados de instâncias (MIGs), a rede VPC do grupo
de instâncias vem da interface
nic0definida no modelo de instância. - Para grupos de instâncias não gerenciadas, a rede VPC do grupo de instâncias é definida como a rede VPC usada pela interface de rede
nic0da primeira instância de VM adicionada ao grupo de instâncias não gerenciadas. Não é possível mudar a rede VPC do grupo de instâncias depois, mesmo que você remova a primeira instância adicionada ao grupo.
As VMs membros podem ter outras interfaces de rede (vNICs ou
interfaces de rede dinâmicas).
Cada interface que não é nic0 pode estar na rede VPC do grupo de instâncias (a rede usada pela interface nic0) ou em uma rede VPC diferente.
nic0, não é possível usar back-ends de grupo de instâncias. Em vez disso, use NEGs zonais com endpoints
GCE_VM_IP. Para mais informações, consulte Serviços de back-end e redes VPC.
Back-ends de NEG zonais e interfaces de rede
Ao criar um novo NEG zonal com endpoints GCE_VM_IP, é preciso associá-lo explicitamente a uma sub-rede de uma rede VPC antes de adicionar endpoints ao NEG. Nem a sub-rede nem a rede VPC podem ser alteradas após a criação do NEG.
Em um determinado NEG, cada endpoint GCE_VM_IP representa uma interface
de rede. A interface de rede precisa estar na sub-rede associada ao NEG. Do ponto de vista de uma instância do Compute Engine, a interface de rede pode usar qualquer identificador. Do ponto de vista de ser um endpoint em um NEG, a interface de rede é identificada usando o endereço IPv4 interno principal. Para mais informações, consulte NEGs
com endpoints GCE_VM_IP.
Há duas maneiras de adicionar um endpoint GCE_VM_IP a um NEG:
- Se você especificar apenas um nome de VM (sem qualquer endereço IP) ao adicionar um endpoint,o Cloud de Confiance exigirá que a VM tenha uma interface de rede na sub-rede associada ao NEG. O endereço IP escolhido pelo Cloud de Confiance para o endpoint é o endereço IPv4 interno principal da interface de rede da VM na sub-rede associada ao NEG.
- Se você especificar um nome de VM e um endereço IP ao adicionar um endpoint, o endereço IP fornecido precisará ser um endereço IPv4 interno principal para uma das interfaces de rede da VM. Essa interface de rede precisa estar na sub-rede associada ao NEG. A especificação de um endereço IP é redundante porque só pode haver uma única interface de rede na sub-rede associada ao NEG.
Serviços de back-end e redes VPC
O serviço de back-end não está associado a nenhuma rede VPC. No entanto, cada grupo de instâncias de back-end ou NEG por zona está associado a uma rede VPC, conforme observado anteriormente. Contanto que todos os back-ends estejam localizados no mesmo projeto e que todos sejam do mesmo tipo (grupos de instâncias ou NEGs zonais), o balanceador de carga e os back-ends podem estar na mesma rede VPC ou em redes diferentes.
Para distribuir pacotes a interfaces que não são do nic0, você precisa atender aos dois requisitos a seguir:
Use NEGs zonais (com endpoints
GCE_VM_IP), não grupos de instâncias.As interfaces de rede não
nic0enic0precisam estar em redes VPC diferentes. A rede VPC do NEG não pode conter a interfacenic0e a interface nãonic0desejada.
Back-ends preferenciais
É possível designar back-ends específicos como back-ends preferenciais. Esses back-ends precisam ser usados de acordo com a capacidade (ou seja, a capacidade desejada especificada pelo modo de balanceamento do back-end) antes que as solicitações sejam enviadas aos back-ends restantes.
O serviço de back-end de um balanceador de carga de rede de passagem externa global pode ter no máximo um grupo de back-end preferencial e não permite back-ends preferenciais e não preferenciais na mesma região Cloud de Confiance .
Para saber mais, consulte Otimizações avançadas de balanceamento de carga.
Verificações de integridade
As informações de verificação de integridade são usadas para determinar os back-ends qualificados para novas conexões e para controlar se as conexões atuais persistem em back-ends não íntegros.O balanceador de carga envia sondagens de verificação de integridade para cada endereço IP de regra de encaminhamento separadamente. Portanto, uma regra de encaminhamento de balanceador de carga de rede de passagem externa global com dois endereços IP é testada para cada endereço IP, dobrando a frequência de sondagem em cada back-end. Para mais informações, consulte Várias sondagens e frequências.
Tipo, protocolo e porta da verificação de integridade
O serviço de back-end do balanceador de carga precisa referenciar uma verificação de integridade global usando qualquer protocolo e porta compatíveis. O protocolo e os detalhes da porta da verificação de integridade não precisam corresponder ao protocolo e às informações da porta da regra de encaminhamento.
Como todos os protocolos de verificação de integridade compatíveis dependem do TCP
(as verificações de integridade do UDP não são aceitas), quando você usa um
balanceador de carga de rede de passagem externa global para equilibrar conexões e tráfego de outros protocolos, as VMs de back-end
precisam executar um servidor baseado em TCP para responder aos verificadores de integridade. Por exemplo, é possível usar uma verificação de integridade HTTP combinada com a execução de um servidor HTTP em cada VM de back-end. Neste exemplo, seus scripts ou software são responsáveis por
configurar o servidor HTTP para que ele retorne o status 200 somente quando o
software que escuta conexões balanceadas por carga estiver operacional.
Para mais informações sobre protocolos e portas de verificação de integridade compatíveis, consulte Categorias, protocolos e portas de verificação de integridade e Como as verificações de integridade funcionam.
Pacotes de verificação de integridade
Para back-ends de grupos de instâncias, as sondas de verificação de integridade enviam pacotes para a interface de rede nic0 de cada VM de back-end. Para back-ends de NEG zonal GCE_VM_IP, os verificadores de sondagem de integridade enviam pacotes para a interface de rede na sub-rede VPC do NEG. Os pacotes de verificação de integridade têm as seguintes características:
- Endereço IP de origem do intervalo de IP de sondagem da verificação de integridade relevante.
- Endereço IP de destino que corresponde a um dos dois endereços IP da regra de encaminhamento que faz referência ao serviço de back-end do balanceador de carga de rede de passagem externa global. Os pacotes de verificação de integridade são enviados aos dois endereços IP.
- Porta de destino que corresponde ao número da porta especificado na verificação de integridade.
Os aplicativos executados nas VMs de back-end precisam se vincular e detectar as combinações relevantes de endereço IP e porta. Para isso,
configure o aplicativo para vincular e escutar nas portas relevantes de qualquer
um dos endereços IP da VM (0.0.0.0 ou ::/0). Para mais informações,
consulte Destino dos pacotes de sondagem.
Regras de firewall
Como um balanceador de carga de rede de passagem externa global não é um proxy, ele transmite o tráfego para VMs de back-end sem modificar os endereços IP de origem e destino, o protocolo e as portas, se o protocolo tiver informações de porta. Portanto, crie regras de firewall de permissão de entrada ou uma política de firewall hierárquica de permissão de entrada para controlar o acesso às VMs de back-end do balanceador de carga, especificamente para permitir verificações de integridade e o tráfego com balanceamento de carga. Caso contrário, a regra de firewall de entrada de negação implícita bloqueia pacotes de entrada de todos os endereços IP de origem externos.
As regras de encaminhamento e de entrada permitem que as regras de firewall ou as políticas hierárquicas de firewall funcionem juntas da seguinte maneira: uma regra de encaminhamento especifica o endereço IP de destino, o protocolo e, se definido, os requisitos de porta que um pacote precisa atender para ser encaminhado para uma VM de back-end. As regras de firewall de permissão de entrada controlam se o firewall entrega os pacotes encaminhados à VM ou os descarta. A rede VPC padrão Cloud de Confiance inclui um conjunto limitado de regras de firewall de permissão de entrada pré-preenchidas.
Para aceitar o tráfego de qualquer endereço IP na Internet, crie uma regra de firewall de permissão de entrada com o intervalo de origem
0.0.0.0/0ou::/0. Para permitir apenas o tráfego de determinados intervalos de endereços IP, use intervalos de origem mais restritivos.Como prática recomendada de segurança, a entrada permitida pelas regras de firewall só permite os protocolos e portas IP necessários. Restringir a configuração do protocolo (e, se possível, porta) é especialmente importante ao usar regras de encaminhamento cujo protocolo está definido como
L3_DEFAULT. As regras de encaminhamentoL3_DEFAULTencaminham pacotes para todos os protocolos IP compatíveis (em todas as portas se o protocolo e o pacote tiverem informações de porta).Os balanceadores de carga de rede de passagem externa globais usam verificações de integridade Cloud de Confiance . Portanto, sempre permita o tráfego dos intervalos de endereços IP da verificação de integridade. É possível configurar essas regras de firewall de permissão de entrada específicas para o protocolo e as portas da verificação de integridade do balanceador de carga.
Distribuição de tráfego
Para um balanceador de carga de rede de passagem externa global, a distribuição de tráfego é uma função de diferentes atributos, como afinidade da sessão, política de rastreamento de conexão, modo de balanceamento de carga e capacidades de back-end, back-ends preferenciais e política de localidade de balanceamento de carga. Todos eles se unem como parte de um fluxo de trabalho coordenado para otimizar a configuração de balanceamento de carga para desempenho confiável e utilização eficiente de recursos.
Arquitetura da VPC compartilhada
Observe os seguintes pontos em relação a uma arquitetura de VPC compartilhada para um balanceador de carga de rede de passagem externa global:
Exceto pelos recursos de endereço IP, todos os outros recursos associados a um balanceador de carga de rede de passagem externa global (regra de encaminhamento, serviço de back-end, verificação de integridade e grupos de back-end [grupos de instâncias ou NEGs]) precisam estar no mesmo projeto, que pode ser um projeto host ou de serviço.
Se os recursos de balanceamento de carga estiverem no projeto host, os recursos de endereço IP também precisarão estar.
Se os recursos de balanceamento de carga estiverem em um projeto de serviço, os recursos de endereço IP poderão estar no mesmo projeto de serviço ou no projeto host.
A tabela a seguir descreve onde os diferentes componentes de um balanceador de carga de rede de passagem externa global existem em uma arquitetura de VPC compartilhada.
| Localização dos recursos de balanceamento de carga1 | Localização obrigatória dos recursos de endereço IP |
|---|---|
| Projeto host | Projeto host |
| Projeto de serviço | Projeto de serviço ou projeto host |
1 Inclui a regra de encaminhamento, o serviço de back-end, a verificação de integridade e os back-ends (grupos de instâncias ou NEGs).
Limitações
Os back-ends só podem ser implantados nas seguintes regiões Cloud de Confiance :
- América do Norte:
us-west1,us-west4,us-east4,us-east5 - Europa:
europe-west2,europe-west3 - Ásia:
asia-southeast1,asia-south1,asia-northeast1 - América do Sul:
southamerica-east1 - África:
africa-south1 - Austrália:
australia-southeast1
- América do Norte:
O balanceador de carga de rede de passagem externa global só pode ser configurado no nível Premium.
Não é possível configurar um balanceador de carga de rede de passagem externa global usando o console do Cloud de Confiance . Use a CLI do Google Cloud ou a API REST.
Não é possível usar back-ends de grupo gerenciado de instâncias regional. É possível usar grupos gerenciados de instâncias zonais, grupos não gerenciados de instâncias zonais e NEGs zonais com endpoints
GCE_VM_IP.As restrições e orientações atuais para usar grupos de instâncias em serviços de back-end também se aplicam ao balanceador de carga de rede de passagem externa global. Um grupo de instâncias compartilhado entre um balanceador de carga de rede de passagem externa global e balanceadores de carga de rede de passagem regionais (balanceador de carga de rede de passagem externa regional ou balanceador de carga de rede de passagem interna) precisa ser configurado para usar o modo de balanceamento
RATEno balanceador de carga de rede de passagem externa global. Os balanceadores de carga de rede de passagem regionais sempre usam o modo de balanceamentoCONNECTION.É possível compartilhar o mesmo endereço IP externo global entre várias regras de encaminhamento de balanceador de carga de rede de passagem externa global, desde que os protocolos e portas configurados não estejam em conflito. No entanto, não é possível compartilhar o mesmo endereço IP externo global entre um balanceador de carga de rede de passagem externa global e um balanceador de carga de aplicativo externo global ou um balanceador de carga de rede de proxy externo global.
Um balanceador de carga de rede de passagem externa global aceita o uso de seus próprios endereços IP (BYOIP) apenas para endereços IPv4. O suporte é limitado à API BYOIP v1. O provisionamento de novos intervalos IPv4 pode levar até quatro semanas, e não há APIs que permitam controlar o status de anúncio do BGP. Para mais detalhes, consulte Usar suas próprias configurações de IP.
Não é possível criar mais de 10 regras de encaminhamento em um projeto nem adicionar mais de 25 grupos de back-end a um serviço de back-end. Para ver mais detalhes, consulte Cotas e limites.
Um serviço de back-end global do balanceador de carga de rede de passagem externa pode ter no máximo um grupo de back-end
PREFERRED. Não é possível ter um grupo de back-endPREFERREDe um nãoPREFERREDna mesma região Cloud de Confiance .Não é possível implantar um balanceador de carga de rede de passagem externa global no GKE.
Não é possível usar o Google Cloud Armor para oferecer proteção avançada contra DDoS de rede para balanceadores de carga de rede de passagem externa globais. Para mais detalhes, consulte Configurar proteção avançada contra DDoS de rede.
A política de localidade de balanceamento de carga, configurada no serviço de back-end do balanceador de carga, não é compatível com a opção
WEIGHTED_MAGLEV. Para balanceadores de carga de rede de passagem externa global, somenteMAGLEVé compatível.O modo de rastreamento de conexão
PER_SESSIONestá indisponível. Somente o modo de rastreamento de conexãoPER_CONNECTIONé compatível.Apenas os seguintes modos de balanceamento de carga são compatíveis:
RATEeUTILIZATION. A taxa é definida não em termos de solicitações por segundo, mas de pacotes recebidos por segundo. Os grupos de instâncias aceitamRATEeUTILIZATION, enquanto as NEGs aceitam apenasRATE.As regras de encaminhamento de direcionamento (direcionamento de tráfego baseado em IP de origem) não são compatíveis.
Todos os back-ends anexados a um serviço de back-end precisam ser do mesmo tipo. Um serviço de back-end não pode ter uma combinação de grupos de instâncias e NEGs zonais.
Não é possível consultar ou filtrar métricas de monitoramento usando as regras de encaminhamento globais principais. Elas precisam ser consultadas usando as regras de encaminhamento secundárias geradas por Cloud de Confiance.
Preços
Para informações sobre preços, consulte Preços de rede: Cloud Load Balancing.
A seguir
- Configurar um balanceador de carga de rede de passagem externa global com back-ends de grupos de instâncias de VM
- Configurar um balanceador de carga de rede de passagem externa global com back-ends de NEG zonal
- Modos de balanceamento para balanceadores de carga de rede de passagem
- Especificações de capacidade de destino para balanceadores de carga de rede de passagem externa globais
- Referências da API Cloud Load Balancing e da CLI gcloud