Este documento mostra como implementar um Network Load Balancer de encaminhamento externo com back-ends de grupo de pontos finais de rede (NEG) zonais. Os NEGs zonais com GCE_VM_IP
pontos finais permitem fazer o seguinte:
- Encaminhar pacotes para as interfaces de rede não
nic0
de instâncias de máquinas virtuais (VMs) representando uma interface de rede de uma instância de VM como o ponto final de back-end. - Crie um conjunto flexível de pontos finais de back-end onde um ponto final pode ser anexado a vários NEGs e cada NEG pode ter um conjunto de pontos finais diferente, mas possivelmente sobreposto.
Antes de seguir este documento, familiarize-se com o seguinte:
- NEGs zonais na vista geral do balanceador de carga de rede de encaminhamento externo baseado em serviços de back-end
- Vista geral dos grupos de pontos finais de rede zonais
Autorizações
Para seguir estes passos, tem de criar instâncias e modificar uma rede num projeto. Tem de ser proprietário ou editor do projeto, ou ter todas as seguintes funções IAM do Compute Engine:
Tarefa | Função necessária |
---|---|
Crie redes, sub-redes e componentes do balanceador de carga | Administrador da rede de computação (roles/compute.networkAdmin )
|
Adicione e remova regras de firewall | Administrador de segurança do Compute (roles/compute.securityAdmin )
|
Crie instâncias | Administrador da instância de computação (roles/compute.instanceAdmin )
|
Para mais informações, consulte as seguintes páginas:
Vista geral da configuração
Este documento mostra como configurar e testar um Network Load Balancer de encaminhamento externo que usa
GCE_VM_IP
back-ends de NEG zonais. Os passos nesta secção descrevem como
configurar o seguinte:
- Uma rede VPC de exemplo denominada
lb-network
com uma sub-rede personalizada. - Regras de firewall que permitem ligações recebidas a VMs de back-end.
- Quatro VMs:
- VMs
vm-a1
evm-a2
na zonaus-west1-a
- VMs
vm-c1
evm-c2
na zonaus-west1-c
- VMs
- Dois NEGs zonais de back-end,
neg-a
na zonaus-west1-a
eneg-c
na zonaus-west1-c
. Cada NEG tem os seguintes pontos finais:neg-a
contém estes dois pontos finais:nic1
da VMvm-a1
identificada pelo respetivo endereço IP interno principalnic1
da VMvm-a2
identificada pelo respetivo endereço IP interno principal
neg-c
contém estes dois pontos finais:nic1
da VMvm-c1
identificada pelo respetivo endereço IP interno principalnic1
da VMvm-c2
identificada pelo respetivo endereço IP interno principal
- Uma VM cliente (
vm-client
) emus-west1-a
para testar as ligações - Os seguintes componentes do balanceador de carga:
- Um serviço de back-end externo na região
us-west1
para gerir a distribuição de ligações aos dois NEGs zonais - Uma regra de encaminhamento externa e um endereço IP para o front-end do balanceador de carga
- Um serviço de back-end externo na região
O balanceador de carga de rede de encaminhamento externo é um balanceador de carga regional. Todos os componentes do balanceador de carga (VMs de back-end, serviço de back-end e regra de encaminhamento) têm de estar na mesma região.
A arquitetura para este exemplo tem o seguinte aspeto:
Antes de começar
Instale a CLI do Google Cloud. Para uma vista geral completa da ferramenta, consulte a vista geral da CLI gcloud. Pode encontrar comandos relacionados com o equilíbrio de carga nas referências da API e do gcloud.
Se não tiver executado a CLI gcloud anteriormente, execute primeiro o comando
gcloud init
para fazer a autenticação.
Esta página pressupõe que conhece o bash.
Configure a rede e as sub-redes
O exemplo nesta página usa uma rede VPC no modo personalizado denominada lb-network
. Se quiser apenas processar tráfego IPv4, pode usar uma rede VPC no modo automático.
No entanto, o tráfego IPv6 requer uma sub-rede de modo personalizado.
O tráfego IPv6 também requer uma sub-rede de pilha dupla (stack-type
definida como
IPV4_IPV6
). Quando cria uma sub-rede de pilha dupla numa rede VPC de modo personalizado,
escolhe um tipo de acesso IPv6 para a
sub-rede. Para este exemplo, definimos o parâmetro ipv6-access-type
da sub-rede como
EXTERNAL
. Isto significa que é possível atribuir endereços IPv4 externos e endereços IPv6 externos a novas VMs nesta sub-rede. As regras de encaminhamento também podem ser atribuídas a endereços IPv4 externos e endereços IPv6 externos.
Os back-ends e os componentes do balanceador de carga usados neste exemplo estão localizados nesta região e sub-rede:
- Região:
us-central1
- Sub-rede:
lb-subnet
, com o intervalo de endereços IPv4 principal 10.1.2.0/24. Embora escolha o intervalo de endereços IPv4 configurado na sub-rede, o intervalo de endereços IPv6 é atribuído automaticamente. A Google fornece um bloco CIDR IPv6 de tamanho fixo (/64).
Para criar a rede e a sub-rede de exemplo, siga estes passos.
Consola
Para suportar o tráfego IPv4 e IPv6, siga estes passos:
Na Trusted Cloud consola, aceda à página Redes VPC.
Clique em Criar rede de VPC.
Introduza um Nome de
lb-network
.Defina o Subnet creation mode (Modo de criação de sub-rede) como Custom (Personalizado).
Na secção Sub-redes, clique em Adicionar sub-rede e configure os seguintes campos:
- Nome:
lb-subnet
- Região:
us-central1
- Tipo de pilha de IP: IPv4 e IPv6 (dupla pilha)
- Intervalo IPv4:
10.1.2.0/24
Embora possa configurar um intervalo de endereços IPv4 para a sub-rede, não pode escolher o intervalo de endereços IPv6 para a sub-rede. A Google fornece um bloco CIDR IPv6 de tamanho fixo (/64). - Tipo de acesso IPv6: externo
- Clique em Concluído
- Nome:
Clique em Criar.
Para suportar apenas tráfego IPv4, siga estes passos:
Na Trusted Cloud consola, aceda à página Redes VPC.
Clique em Criar rede de VPC.
Introduza um Nome de
lb-network
.Defina o Subnet creation mode (Modo de criação de sub-rede) como Custom (Personalizado).
Na secção Sub-redes, clique em Adicionar sub-rede e configure os seguintes campos:
- Nome:
lb-subnet
- Região:
us-central1
- Tipo de pilha de IP: IPv4 (pilha única)
- Intervalo IPv4:
10.1.2.0/24
- Nome:
Clique em Criar.
gcloud
Crie a rede VPC de modo personalizado:
gcloud compute networks create lb-network \ --subnet-mode=custom
Na rede
lb-network
, crie uma sub-rede para os back-ends na regiãous-central1
.Para o tráfego IPv4 e IPv6, use o seguinte comando para criar uma sub-rede de pilha dupla:
gcloud compute networks subnets create lb-subnet \ --stack-type=IPV4_IPV6 \ --ipv6-access-type=EXTERNAL \ --network=lb-network \ --range=10.1.2.0/24 \ --region=us-central1
Para tráfego IPv4 apenas, use o seguinte comando:
gcloud compute networks subnets create lb-subnet \ --network=lb-network \ --range=10.1.2.0/24 \ --region=us-central1
Crie VMs e grupos de pontos finais de rede
Para demonstrar a natureza regional dos balanceadores de carga de rede de encaminhamento externo, este exemplo usa dois back-ends de NEG zonais em duas zonas diferentes. O tráfego é equilibrado entre os dois NEGs e entre os pontos finais em cada NEG.
Crie VMs
Para este cenário de balanceamento de carga, cria quatro VMs e instala um servidor Web Apache em cada instância. O servidor Web é responsável pela deteção na porta TCP 80. Por predefinição, o Apache está configurado para ser associado a qualquer endereço IP. Os balanceadores de carga de rede de encaminhamento externo enviam pacotes preservando o endereço IP de destino.
Para simplificar as instruções, estas VMs de back-end executam o Debian GNU Linux 10.
Para processar o tráfego IPv4 e IPv6, configure as VMs de back-end para serem de pilha dupla. Defina o stack-type
da VM como IPV4_IPV6
. As VMs também herdam a definição ipv6-access-type
(neste exemplo, EXTERNAL
) da sub-rede. Para ver mais detalhes sobre os requisitos do IPv6, consulte o artigo Vista geral do balanceador de carga de rede de encaminhamento externo: regras de encaminhamento.
Para usar VMs existentes como back-ends, atualize as VMs para serem de pilha dupla através do comando gcloud compute instances network-interfaces update
.
As instâncias que participam como VMs de back-end para balanceadores de carga de rede de encaminhamento direto externos têm de executar o ambiente guest Linux adequado, o ambiente guest Windows ou outros processos que ofereçam uma capacidade equivalente.
Cada MV é criada com duas interfaces de rede, nic0
e nic1
. Este tutorial usa o nic1
, que está associado à rede da VPC lb-network
e à sub-rede lb-subnet
. Use esta lb-network
redelb-subnet
e sub-rede para criar os NEGs zonais mais tarde neste procedimento.
Consola
Crie VMs
Na Trusted Cloud consola, aceda à página Instâncias de VM.
Repita os passos seguintes para criar quatro VMs, usando as seguintes combinações de nomes e zonas:
- Nome:
vm-a1
, zona:us-west1-a
- Nome:
vm-a2
, zona:us-west1-a
- Nome:
vm-c1
, zona:us-west1-c
- Nome:
vm-c2
, zona:us-west1-c
- Nome:
Clique em Criar instância.
Defina o Nome como indicado anteriormente.
Para a Região, escolha
us-west1
e escolha uma Zona, conforme indicado anteriormente.Na secção Disco de arranque, certifique-se de que a opção Debian GNU/Linux 12 (bookworm) está selecionada para as opções do disco de arranque. Se necessário, clique em Escolher para alterar a imagem.
Clique em Opções avançadas e faça as seguintes alterações:
- Clique em Rede e adicione as seguintes Etiquetas de rede:
lb-tag
Para Interfaces de rede, clique em Adicionar interface de rede e faça as seguintes alterações:
Para backends IPv4 e IPv6:
- Rede:
lb-network
- Subnet:
lb-subnet
- Tipo de pilha de IP:
IPv4 and IPv6 (dual-stack)
- IP interno principal: efémero (automático)
- Endereço IPv4 externo: efémero (automático)
- Endereço IPv6 externo: efémero (automático)
Para backends apenas IPv4:
- Rede:
lb-network
- Subnet:
lb-subnet
- Tipo de pilha de IP:
IPv4 (single-stack)
- IP interno principal: efémero (automático)
- IP externo: efémero
Em seguida, clique em Concluído.
- Rede:
Clique em Gestão. No campo Script de arranque, copie e cole o seguinte conteúdo do script. O conteúdo do script é idêntico para todas as quatro VMs:
#! /bin/bash apt-get update apt-get install apache2 -y a2ensite default-ssl a2enmod ssl vm_hostname="$(curl -H "Metadata-Flavor:Google" \ http://metadata.google.internal/computeMetadata/v1/instance/name)" echo "Page served from: $vm_hostname" | \ tee /var/www/html/index.html systemctl restart apache2
- Clique em Rede e adicione as seguintes Etiquetas de rede:
Clique em Criar.
gcloud
Crie as quatro VMs executando o seguinte comando quatro vezes, usando estas quatro combinações para VM_NAME
e ZONE
. O conteúdo do script é idêntico para todas as quatro VMs.
VM_NAME
:vm-a1
eZONE
:us-west1-a
VM_NAME
:vm-a2
eZONE
:us-west1-a
VM_NAME
:vm-c1
eZONE
:us-west1-c
VM_NAME
:vm-c2
eZONE
:us-west1-c
Para processar o tráfego IPv4 e IPv6, use o seguinte comando.
gcloud compute instances create VM_NAME \ --zone=ZONE \ --image-family=debian-12 \ --image-project=debian-cloud \ --tags=lb-tag \ --network-interface=network=default,subnet=default,stack_type=IPV4_IPV6,--ipv6-network-tier=PREMIUM \ --network-interface=network=lb-network,subnet=lb-subnet,stack_type=IPV4_IPV6,--ipv6-network-tier=PREMIUM \ --metadata=startup-script='#! /bin/bash apt-get update apt-get install apache2 -y a2ensite default-ssl a2enmod ssl vm_hostname="$(curl -H "Metadata-Flavor:Google" \ http://metadata.google.internal/computeMetadata/v1/instance/name)" echo "Page served from: $vm_hostname" | \ tee /var/www/html/index.html systemctl restart apache2'
Para processar tráfego apenas IPv4, use o seguinte comando:
gcloud compute instances create VM_NAME \ --zone=ZONE \ --image-family=debian-12 \ --image-project=debian-cloud \ --tags=lb-tag \ --network-interface=network=default,subnet=default,stack_type=IPV4_ONLY \ --network-interface=network=lb-network,subnet=lb-subnet,stack_type=IPV4_ONLY \ --metadata=startup-script='#! /bin/bash apt-get update apt-get install apache2 -y a2ensite default-ssl a2enmod ssl vm_hostname="$(curl -H "Metadata-Flavor:Google" \ http://metadata.google.internal/computeMetadata/v1/instance/name)" echo "Page served from: $vm_hostname" | \ tee /var/www/html/index.html systemctl restart apache2'
Crie NEGs zonais com pontos finais GCE_VM_IP
Os NEGs têm de ser criados nas mesmas zonas que as VMs criadas no passo
anterior. Este exemplo também cria o NEG na rede lb-network
VPC e na sub-rede lb-subnet
associadas a nic1
das VMs criadas no passo anterior. Por isso, os pontos finais do NEG vão estar em nic1
das VMs.
Consola
Para criar um grupo de pontos finais de rede zonal:
- Aceda à página Grupos de pontos finais de rede na Trusted Cloud consola.
Aceda à página Grupos de pontos finais da rede - Clique em Criar grupo de pontos finais de rede.
- Introduza um Nome para o NEG zonal:
neg-a
. - Selecione o Tipo de grupo de pontos finais da rede: Grupo de pontos finais da rede (zonal).
- Selecione a rede: lb-network
- Selecione a Sub-rede: lb-subnet
- Selecione a zona: us-west1-a
- Clique em Criar.
- Repita estes passos para criar um segundo NEG zonal denominado
neg-c
na zona us-west1-c.
Adicione pontos finais ao NEG zonal:
- Aceda à página Grupos de pontos finais de rede na Trusted Cloud consola.
Aceda aos grupos de pontos finais da rede - Clique no Nome do primeiro grupo de pontos finais de rede criado no passo anterior (neg-a). É apresentada a página Detalhes do grupo de pontos finais da rede.
Na secção Pontos finais de rede neste grupo, clique em Adicionar ponto final de rede. É apresentada a página Adicionar ponto final de rede.
- Clique em Instância de VM e selecione vm-a1 para adicionar os respetivos endereços IP internos como pontos finais de rede.
- Clique em Criar.
- Clique novamente em Adicionar ponto final de rede e, em Instância de VM, selecione vm-a2.
- Clique em Criar.
Clique no Nome do segundo grupo de pontos finais de rede criado no passo anterior (neg-c). É apresentada a página Detalhes do grupo de pontos finais da rede.
Na secção Pontos finais de rede neste grupo, clique em Adicionar ponto final de rede. É apresentada a página Adicionar ponto final de rede.
- Clique em Instância de VM e selecione vm-c1 para adicionar os respetivos endereços IP internos como pontos finais de rede.
- Clique em Criar.
- Clique novamente em Adicionar ponto final de rede e, em Instância de VM, selecione vm-c2.
- Clique em Criar.
gcloud
Crie um NEG zonal denominado
neg-a
emus-west1-a
com o comandogcloud compute network-endpoint-groups create
:GCE_VM_IP
gcloud compute network-endpoint-groups create neg-a \ --network-endpoint-type=gce-vm-ip \ --zone=us-west1-a \ --network=lb-network \ --subnet=lb-subnet
Adicione pontos finais a
neg-a
:gcloud compute network-endpoint-groups update neg-a \ --zone=us-west1-a \ --add-endpoint='instance=vm-a1' \ --add-endpoint='instance=vm-a2'
Crie um NEG zonal denominado
neg-c
emus-west1-c
com o comandogcloud compute network-endpoint-groups create
:GCE_VM_IP
gcloud compute network-endpoint-groups create neg-c \ --network-endpoint-type=gce-vm-ip \ --zone=us-west1-c \ --network=lb-network \ --subnet=lb-subnet
Adicione pontos finais a
neg-c
:gcloud compute network-endpoint-groups update neg-c \ --zone=us-west1-c \ --add-endpoint='instance=vm-c1' \ --add-endpoint='instance=vm-c2'
Configurar regras de firewall
Crie regras de firewall que permitam que o tráfego externo (que inclui sondagens de verificação de estado) alcance as instâncias de back-end.
Este exemplo cria uma regra de firewall que permite que o tráfego TCP de todos os intervalos de origem alcance as suas instâncias de back-end na porta 80. Se quiser criar regras da firewall separadas especificamente para as sondas de verificação de funcionamento, use os intervalos de endereços IP de origem documentados no artigo Vista geral das verificações de funcionamento: intervalos de IP de sondas e regras da firewall.
Consola
Na Trusted Cloud consola, aceda à página Firewall.
Para permitir o tráfego IPv4, siga estes passos:
- Clique em Criar regra de firewall.
- Introduza um Nome:
allow-network-lb-ipv4
. - Para Rede, selecione lb-network.
- Em Segmentações, selecione Etiquetas de segmentação especificadas.
- No campo Etiquetas alvo, introduza
lb-tag
. - Para o Filtro de origem, selecione Intervalos IPv4.
- Defina Intervalos de IPv4 de origem como
0.0.0.0/0
. Isto permite o tráfego IPv4 de qualquer origem. Isto também permite que as sondas de verificação de funcionamento da Google alcancem as instâncias de back-end. - Para Protocolos e portas especificados, selecione TCP
e introduza
80
. - Clique em Criar.
Para permitir o tráfego IPv6, siga estes passos:
- Clique novamente em Criar regra de firewall.
- Introduza um Nome:
allow-network-lb-ipv6
. - Para Rede, selecione lb-network.
- Em Segmentações, selecione Etiquetas de segmentação especificadas.
- No campo Etiquetas alvo, introduza
lb-tag
. - Para o Filtro de origem, selecione Intervalos IPv6.
- Defina os Intervalos de IPv6 de origem como
::/0
. Isto permite o tráfego IPv6 de qualquer origem. Isto também permite que as sondas de verificação de funcionamento da Google alcancem as instâncias de back-end. - Para Protocolos e portas especificados, selecione TCP
e introduza
80
. - Clique em Criar.
gcloud
Para permitir o tráfego IPv4, execute o seguinte comando:
gcloud compute firewall-rules create allow-network-lb-ipv4 \ --network=lb-network \ --target-tags=lb-tag \ --allow=tcp:80 \ --source-ranges=0.0.0.0/0
Para permitir o tráfego IPv6, execute o seguinte comando:
gcloud compute firewall-rules create allow-network-lb-ipv6 \ --network=lb-network \ --target-tags=lb-tag \ --allow=tcp:80 \ --source-ranges=::/0
Configure o balanceador de carga
Em seguida, configure o balanceador de carga.
Quando configura o balanceador de carga, as VMs recebem pacotes destinados ao endereço IP externo estático que configura. Se estiver a usar uma imagem fornecida pelo
Compute Engine, as suas
instâncias são configuradas automaticamente para processar este endereço IP. Se estiver a usar outra imagem, tem de configurar este endereço como um alias em eth1
ou como um loopback em cada instância.
Para configurar o balanceador de carga, siga as instruções abaixo.
Consola
Inicie a configuração
Na Trusted Cloud consola, aceda à página Equilíbrio de carga.
- Clique em Criar equilibrador de carga.
- Para Tipo de balanceador de carga, selecione Balanceador de carga de rede (TCP/UDP/SSL) e clique em Seguinte.
- Para Proxy ou passagem, selecione Passagem do balanceador de carga e clique em Seguinte.
- Para Público ou interno, selecione Público (externo) e clique em Seguinte.
- Clique em Configurar.
Configuração do back-end
- Na página Crie um balanceador de carga de rede de encaminhamento externo, introduza o nome
network-lb-zonal-neg
do novo balanceador de carga. - Na lista Região, selecione
us-west1
. - Clique em Configuração de back-end. O nome do balanceador de carga que introduziu anteriormente é apresentado, mas não é modificável.
- Na lista Tipo de back-end, selecione Grupo de pontos finais de rede zonal.
- Na página Configuração de back-end, faça o seguinte:
- Na lista Verificação de funcionamento, clique em Criar uma verificação de funcionamento e, em seguida, introduza as seguintes informações:
- Nome:
tcp-health-check
- Protocolo: TCP
- Porta:
80
- Nome:
- Clique em Criar.
- Na lista Grupo de pontos finais da rede, selecione
neg-a
e, de seguida, clique em Concluído. - Clique em Adicionar back-end e repita o passo anterior para adicionar
neg-c
. - Clique em Guardar.
- Na lista Verificação de funcionamento, clique em Criar uma verificação de funcionamento e, em seguida, introduza as seguintes informações:
- Verifique se existe uma marca de verificação azul junto a Configuração de back-end antes de continuar.
Configuração da interface
- Clique em Configuração do front-end.
- Em Nome, introduza
netlb-forwarding-rule
. - Para processar o tráfego IPv4, siga estes passos:
- Para Versão do IP, selecione IPv4.
- Para Endereço IP, clique no menu pendente e selecione Criar endereço IP.
- Na página Reserve um novo endereço IP estático, para Nome, introduza
netlb-ipv4-address
. - Clique em Reservar.
- Na página Reserve um novo endereço IP estático, para Nome, introduza
- Para Portas, escolha Única. Em Número da porta, introduza
80
. - Clique em Concluído.
Para processar o tráfego IPv6, siga os passos seguintes:
- Para a versão do IP, selecione IPv6.
- Para Sub-rede, selecione lb-subnet.
- Para Intervalo IPv6, clique no menu pendente e selecione Criar
endereço IP.
- Na página Reserve um novo endereço IP estático, para Nome, introduza
netlb-ipv6-address
. - Clique em Reservar.
- Na página Reserve um novo endereço IP estático, para Nome, introduza
- Para Portas, escolha Única. Em Número da porta, introduza
80
. - Clique em Concluído.
Um círculo azul com uma marca de verificação à esquerda de Configuração do front-end indica uma configuração bem-sucedida.
Reveja a configuração
- Clique em Rever e finalizar.
- Reveja as definições de configuração do equilibrador de carga.
- Opcional: clique em Código equivalente para ver o pedido da API REST que vai ser usado para criar o equilibrador de carga.
Clique em Criar.
Na página de balanceamento de carga, na coluna Back-end do novo balanceador de carga, deve ver uma marca de verificação verde a indicar que o novo balanceador de carga está em bom estado.
gcloud
Reserve um endereço IP externo estático.
Para tráfego IPv4
Crie um endereço IPv4 externo estático para o seu balanceador de carga.
gcloud compute addresses create netlb-ipv4-address \ --region=us-west1
Para tráfego IPv6
Crie um intervalo de endereços IPv6 externos estáticos para o seu balanceador de carga. A sub-rede usada tem de ser uma sub-rede de pilha dupla com um intervalo IPv6 externo.
gcloud compute addresses create netlb-ipv6-address \ --region=us-west1 \ --subnet=lb-subnet \ --ip-version=IPV6 \ --endpoint-type=NETLB
Crie uma verificação de funcionamento de TCP.
gcloud compute health-checks create tcp tcp-health-check \ --region=us-west1 \ --port=80
Crie um serviço de back-end.
gcloud compute backend-services create networklb-backend-service \ --protocol=TCP \ --health-checks=tcp-health-check \ --health-checks-region=us-west1 \ --region=us-west1
Adicione os dois NEGs zonais,
neg-a
eneg-c
, ao serviço de back-end:gcloud compute backend-services add-backend networklb-backend-service \ --region=us-west1 \ --network-endpoint-group=neg-a \ --network-endpoint-group-zone=us-west1-a
gcloud compute backend-services add-backend networklb-backend-service \ --region=us-west1 \ --network-endpoint-group=neg-c \ --network-endpoint-group-zone=us-west1-c
Crie as regras de encaminhamento consoante queira processar tráfego IPv4 ou tráfego IPv6. Crie ambas as regras de encaminhamento para processar ambos os tipos de tráfego.
Para tráfego IPv4
Crie uma regra de encaminhamento para encaminhar o tráfego TCP recebido para o serviço de back-end. Use o endereço IPv4 reservado no passo 1 como o endereço IP externo estático do balanceador de carga.
gcloud compute forwarding-rules create forwarding-rule-ipv4 \ --load-balancing-scheme=EXTERNAL \ --region=us-west1 \ --ports=80 \ --address=netlb-ipv4-address \ --backend-service=networklb-backend-service
Para tráfego IPv6
Crie uma regra de encaminhamento para processar tráfego IPv6. Use o intervalo de endereços IPv6 reservado no passo 1 como o endereço IP externo estático do balanceador de carga. A sub-rede usada tem de ser uma sub-rede de pilha dupla com um intervalo de sub-redes IPv6 externo.
gcloud compute forwarding-rules create forwarding-rule-ipv6 \ --load-balancing-scheme=EXTERNAL \ --region=us-west1 \ --network-tier=PREMIUM \ --ip-version=IPV6 \ --subnet=lb-subnet \ --address=netlb-ipv6-address \ --ports=80 \ --backend-service=networklb-backend-service
Teste o balanceador de carga
Agora que o serviço de balanceamento de carga está configurado, pode começar a enviar tráfego para o endereço IP externo do balanceador de carga e ver o tráfego a ser distribuído para as instâncias de back-end.
Procure o endereço IP externo do balanceador de carga
Consola
Na página de balanceamento de carga Avançado, aceda ao separador Regras de encaminhamento.
Localize a regra de encaminhamento usada pelo balanceador de carga.
Na coluna Endereço, tome nota do endereço IP externo apresentado.
gcloud: IPv4
Introduza o seguinte comando para ver o endereço IPv4 externo da
network-lb-forwarding-rule
regra de encaminhamento usada pelo balanceador de carga.
gcloud compute forwarding-rules describe forwarding-rule-ipv4 \ --region=us-west1
gcloud: IPv6
Introduza o seguinte comando para ver o endereço IPv6 externo da
network-lb-forwarding-rule
regra de encaminhamento usada pelo balanceador de carga.
gcloud compute forwarding-rules describe forwarding-rule-ipv6 \ --region=us-west1
Envie tráfego para o balanceador de carga
Faça pedidos Web ao equilibrador de carga através de curl
para contactar o respetivo endereço IP.
Em clientes com conetividade IPv4, execute o seguinte comando:
while true; do curl -m1 IPV4_ADDRESS; done
Em clientes com conetividade IPv6, execute o seguinte comando:
while true; do curl -m1 http://IPV6_ADDRESS; done
Por exemplo, se o endereço IPv6 atribuído for
[2001:db8:1:1:1:1:1:1/96]:80
, o comando é semelhante ao seguinte:while true; do curl -m1 http://[2001:db8:1:1:1:1:1:1]:80; done
Tenha em atenção o texto devolvido pelo comando curl
. O nome da VM de back-end que gera a resposta é apresentado nesse texto; por exemplo: Page served
from: VM_NAME
A resposta do comando curl
alterna aleatoriamente entre as instâncias de back-end. Se a sua resposta for inicialmente sem êxito, pode ter de aguardar
cerca de 30 segundos para que a configuração seja totalmente carregada e para que
as suas instâncias sejam marcadas como em bom estado antes de tentar novamente.
Opções de configuração adicionais
Para personalizar ainda mais o seu Network Load Balancer de encaminhamento externo, pode configurar a afinidade de sessão, o encaminhamento de tráfego e configurar uma política de alternativa ou uma política de acompanhamento de ligações. Estas tarefas são opcionais e pode realizá-las por qualquer ordem. Para ver instruções, consulte Opções de configuração adicionais.
Crie uma regra de encaminhamento IPv6 com BYOIP
O balanceador de carga criado nos passos anteriores está configurado com regras de encaminhamento com IP version
como IPv4
ou IPv6
. Esta secção fornece instruções para criar uma regra de encaminhamento IPv6 com endereços IP (BYOIP).
A funcionalidade Bring your own IP addresses permite-lhe aprovisionar e usar os seus próprios endereços IPv6 públicos para Trusted Cloud by S3NS recursos. Para mais informações, consulte o artigo Use os seus próprios endereços IP.
Antes de começar a configurar uma regra de encaminhamento IPv6 com endereços BYOIP, tem de concluir os seguintes passos:
- Crie um prefixo IPv6 anunciado publicamente
- Crie prefixos públicos delegados
- Crie subprefixos IPv6
- Anuncie o prefixo
Para criar uma nova regra de encaminhamento, siga estes passos:
Consola
Na Trusted Cloud consola, aceda à página Equilíbrio de carga.
- Clique no nome do equilibrador de carga que quer modificar.
- Clique em Editar.
- Clique em Configuração do front-end.
- Clique em Adicionar IP e porta do front-end.
- Na secção Novo IP e porta de front-end, especifique o seguinte:
- Selecione o Protocolo de que precisa.
- No campo Versão do IP, selecione IPv6.
- No campo Origem do intervalo IPv6, selecione BYOIP.
- Na lista Recolha de IPs, selecione um subprefixo criado nos passos anteriores com a opção de regra de encaminhamento ativada.
- No campo Intervalo IPv6, introduza o intervalo de endereços IPv6. O prefixo do intervalo de endereços IPv6 tem de corresponder ao comprimento do prefixo atribuível especificado pelo subprefixo associado.
- No campo Portas, introduza um número de porta.
- Clique em Concluído.
- Clique em Atualizar.
gcloud
Crie a regra de encaminhamento através do comando
gcloud compute forwarding-rules create
:
gcloud compute forwarding-rules create FWD_RULE_NAME \ --load-balancing-scheme EXTERNAL \ --ip-protocol PROTOCOL \ --ports ALL \ --ip-version IPV6 \ --region REGION_A \ --address IPV6_CIDR_RANGE \ --backend-service BACKEND_SERVICE \ --ip-collection PDP_NAME
Substitua o seguinte:
FWD_RULE_NAME
: o nome da regra de encaminhamentoPROTOCOL
: o protocolo IP para a regra de encaminhamento. A predefinição éTCP
. O protocolo IP pode ser um dos seguintes:TCP
,UDP
ouL3_DEFAULT
.REGION_A
: região para a regra de encaminhamentoIPV6_CIDR_RANGE
: o intervalo de endereços IPv6 que a regra de encaminhamento serve. O prefixo do intervalo de endereços IPv6 tem de corresponder ao comprimento do prefixo atribuível especificado pelo subprefixo associado.BACKEND_SERVICE
: o nome do serviço de back-endPDP_NAME
: o nome do prefixo público delegado. O PDP tem de ser um subprefixo no modo EXTERNAL_IPV6_FORWARDING_RULE_CREATION
O que se segue?
- Para saber como migrar um balanceador de carga de rede de encaminhamento externo de um back-end de conjunto de destino para um serviço de back-end regional, consulte o artigo Migre balanceadores de carga de rede de encaminhamento externo de conjuntos de destino para serviços de back-end.
- Para configurar um balanceador de carga de rede de passagem externo para vários protocolos IP (compatível com tráfego IPv4 e IPv6), consulte o artigo Configure um balanceador de carga de rede de passagem externo para vários protocolos IP.
- Para configurar a proteção avançada contra DDoS de rede para um Network Load Balancer de passagem externo através do Cloud Armor, consulte o artigo Configure a proteção avançada contra DDoS de rede.
- Para eliminar recursos, consulte o artigo Limpe a configuração do equilibrador de carga.