Configure um balanceador de carga de rede de passagem externo com um serviço de back-end

Este guia faculta instruções para criar uma implementação de balanceador de carga de rede de encaminhamento externo através de um serviço de back-end regional. Este exemplo cria um balanceador de carga de rede de passagem externo que suporta tráfego TCP ou UDP. Se quiser criar um balanceador de carga de rede de passagem externo que faça o balanceamento de carga do tráfego TCP, UDP, ESP, GRE, ICMP e ICMPv6 (e não apenas TCP ou UDP), consulte o artigo Configure um balanceador de carga de rede de passagem externo para vários protocolos IP.

Este exemplo usa o balanceador de carga para distribuir o tráfego TCP por VMs de back-end em dois grupos de instâncias geridos zonais na região us-central1. Uma abordagem igualmente válida é usar um único grupo de instâncias gerido regional para a região us-central1.

Balanceador de carga de rede de encaminhamento externo com grupos de instâncias zonais.
Network Load Balancer de encaminhamento externo com grupos de instâncias geridos zonais (clique para aumentar).

Este cenário distribui o tráfego TCP por instâncias em bom estado. Para suportar este exemplo, as verificações de funcionamento de TCP estão configuradas para ajudar a garantir que o tráfego é enviado apenas para instâncias em bom estado. Tenha em atenção que as verificações de estado de TCP só são suportadas com um equilibrador de carga baseado num serviço de back-end. Os balanceadores de carga baseados em conjunto de destino só podem usar verificações de funcionamento HTTP antigas.

Este exemplo equilibra a carga do tráfego TCP, mas pode usar balanceadores de carga de rede de encaminhamento externo baseados em serviços de back-end para equilibrar a carga do tráfego TCP, UDP, ESP, GRE, ICMP e ICMPv6.

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.

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 executou o Google Cloud CLI anteriormente, execute primeiro o comando gcloud init para fazer a autenticação.

Este guia pressupõe que está familiarizado com 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:

  1. Na Trusted Cloud consola, aceda à página Redes VPC.

    Aceda a redes de VPC

  2. Clique em Criar rede de VPC.

  3. Introduza um Nome de lb-network.

  4. Defina o Subnet creation mode (Modo de criação de sub-rede) como Custom (Personalizado).

  5. 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
  6. Clique em Criar.

Para suportar apenas tráfego IPv4, siga estes passos:

  1. Na Trusted Cloud consola, aceda à página Redes VPC.

    Aceda a redes de VPC

  2. Clique em Criar rede de VPC.

  3. Introduza um Nome de lb-network.

  4. Defina o Subnet creation mode (Modo de criação de sub-rede) como Custom (Personalizado).

  5. 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
  6. Clique em Criar.

gcloud

  1. Crie a rede VPC de modo personalizado:

    gcloud compute networks create lb-network \
        --subnet-mode=custom
    
  2. Na rede lb-network, crie uma sub-rede para os back-ends na região us-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 os grupos de instâncias geridas zonais

Para este cenário de balanceamento de carga, cria dois grupos de instâncias geridos zonais do Compute Engine e instala um servidor Web Apache em cada instância.

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 mais informações sobre os requisitos do IPv6, consulte o artigo Regra de encaminhamento na vista geral do balanceador de carga de rede de passagem externa.

Para usar VMs existentes como back-ends, atualize as VMs para serem de pilha dupla usando o comando gcloud compute instances network-interfaces update.

As instâncias que participam como VMs de back-end para equilibradores de carga de rede de encaminhamento externo têm de estar a executar o ambiente guest Linux, ambiente guest Windows> ou outros processos adequados que ofereçam uma capacidade equivalente.

Configurar as instâncias

Consola

Não é possível usar a consola para criar grupos de instâncias de pilha dupla que suportem a conetividade IPv6. Trusted Cloud Em alternativa, use a CLI gcloud ou a API REST.

Crie um modelo de instância

  1. Na Trusted Cloud consola, aceda à página Modelos de instâncias.

    Aceda a Modelos de instâncias

  2. Clique em Criar modelo de instância.

  3. Em Nome, introduza ig-us-template.

  4. Na secção Disco de arranque, certifique-se de que a Imagem está definida como uma imagem Debian, como Debian GNU/Linux 12 (bookworm). Estas instruções usam comandos que só estão disponíveis no Debian, como apt-get.

  5. Clique em Opções avançadas.

  6. Clique em Rede.

    1. Para etiquetas de rede, introduza lb-tag.
    2. Para Interfaces de rede, clique na interface predefinida e configure os seguintes campos:
      • Rede: lb-network
      • Subnetwork: lb-subnet
    3. Clique em Concluído.
  7. Clique em Gestão e copie o seguinte script para o campo Script de arranque.

      #! /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

  8. Clique em Criar.

Crie um grupo de instâncias geridas

  1. Na Trusted Cloud consola, aceda à página Grupos de instâncias.

    Aceda a Grupos de instâncias

  2. Clique em Criar grupo de instâncias.

  3. Selecione Novo grupo de instâncias gerido (sem estado). Para mais informações, consulte o artigo MIGs sem estado ou com estado.

  4. Em Nome, introduza ig-us-1.

  5. Para Modelo de instância, selecione ig-us-template.

  6. Para Localização, selecione Zona única.

  7. Para Região, selecione us-central1.

  8. Para Zona, selecione us-central1-a.

  9. Especifique o número de instâncias que quer criar no grupo.

    Para este exemplo, especifique as seguintes opções na secção Ajuste de escala automático:

    • Para o Modo de ajuste automático de escala, selecione Off:do not autoscale.
    • Para Número máximo de instâncias, introduza 2.
  10. Clique em Criar.

Repita os passos anteriores para criar um segundo grupo de instâncias gerido na zona us-central1-c com as seguintes especificações: * Nome: ig-us-2 * Zona: us-central1-c * Modelo de instância: use o mesmo modelo ig-us-template criado na secção anterior.

gcloud

As instruções gcloud neste guia pressupõem que está a usar a Cloud Shell ou outro ambiente com o bash instalado.

  1. Crie um modelo de instância de VM com um servidor HTTP com o comando gcloud compute instance-templates create.

    Para processar o tráfego IPv4 e IPv6, use o seguinte comando.

    Defina --ipv6-network-tier como PREMIUM apenas se estiver a criar as VMs em sub-redes com ipv6-access-type definido como EXTERNAL. Omita a flag se o ipv6-access-type da sub-rede for INTERNAL.

      gcloud compute instance-templates create ig-us-template \
          --region=us-central1 \
          --network=lb-network \
          --subnet=lb-subnet \
          --ipv6-network-tier=PREMIUM \
          --stack-type=IPV4_IPV6 \
          --tags=lb-tag \
          --image-family=debian-12 \
          --image-project=debian-cloud \
          --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 instance-templates create ig-us-template \
          --region=us-central1 \
          --network=lb-network \
          --subnet=lb-subnet \
          --tags=lb-tag \
          --image-family=debian-12 \
          --image-project=debian-cloud \
          --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'
    
  2. Crie um grupo de instâncias gerido na zona com o comando gcloud compute instance-groups managed create.

      gcloud compute instance-groups managed create ig-us-1 \
          --zone us-central1-a \
          --size 2 \
          --template ig-us-template
    
  3. Crie um segundo grupo de instâncias geridas na zona us-central1-c:

     gcloud compute instance-groups managed create ig-us-2 \
         --zone us-central1-c \
         --size 2 \
         --template ig-us-template
    

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 na secção Intervalos de IP de sondas e regras da firewall da vista geral das verificações de funcionamento.

Consola

Na Trusted Cloud consola, aceda à página Políticas de firewall.

Aceder a Políticas de firewall

Para permitir o tráfego IPv4, siga estes passos:

  1. Clique em Criar regra de firewall.
  2. Em Nome, introduza allow-network-lb-ipv4.
  3. Na lista Rede, selecione lb-network.
  4. Em Segmentações, selecione Etiquetas de segmentação especificadas.
  5. No campo Etiquetas alvo, introduza lb-tag.
  6. Para o Filtro de origem, selecione Intervalos IPv4.
  7. Defina os Intervalos 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.
  8. Para Protocolos e portas especificados, selecione a caixa de verificação TCP e introduza 80.
  9. Clique em Criar. Pode demorar algum tempo até que a consolaTrusted Cloud apresente a nova regra de firewall ou pode ter de clicar em Atualizar para ver a regra.

Para permitir o tráfego IPv6, siga estes passos:

  1. Clique novamente em Criar regra de firewall.
  2. Em Nome, introduza allow-network-lb-ipv6.
  3. Na lista Rede, selecione lb-network.
  4. Em Segmentações, selecione Etiquetas de segmentação especificadas.
  5. No campo Etiquetas alvo, introduza lb-tag.
  6. Para o Filtro de origem, selecione Intervalos IPv6.
  7. 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.
  8. Para Protocolos e portas especificados, selecione a caixa de verificação TCP* e introduza 80.
  9. Clique em Criar. Pode demorar algum tempo até que a consola apresente a nova regra de firewall ou pode ter de clicar em Atualizar para ver a regra.

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 instâncias de máquinas virtuais (VM) 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 eth0 ou como um loopback em cada instância.

Para configurar o balanceador de carga, siga as instruções abaixo.

Consola

Inicie a configuração

  1. Na Trusted Cloud consola, aceda à página Equilíbrio de carga.

    Aceda ao balanceamento de carga

  2. Clique em Criar equilibrador de carga.
  3. Para Tipo de balanceador de carga, selecione Balanceador de carga de rede (TCP/UDP/SSL) e clique em Seguinte.
  4. Para Proxy ou passagem, selecione Passagem do balanceador de carga e clique em Seguinte.
  5. Para Público ou interno, selecione Público (externo) e clique em Seguinte.
  6. Clique em Configurar.

Configuração do back-end

  1. Na página Crie um balanceador de carga de rede de encaminhamento externo, introduza o nome tcp-network-lb do novo balanceador de carga.
  2. Para Região, selecione us-central1.
  3. Clique em Configuração de back-end.
  4. Na página Configuração de back-end, faça o seguinte:
    1. 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
    2. Clique em Criar.
    3. Para Novo back-end, selecione o Tipo de pilha de IP. Se criou back-ends de pilha dupla para processar o tráfego IPv4 e IPv6, selecione IPv4 e IPv6 (pilha dupla). Para processar apenas tráfego IPv4, selecione IPv4(pilha única).
    4. Na lista Grupo de instâncias, selecione ig-us-1 e, de seguida, clique em Concluído.
    5. Clique em Adicionar um back-end e repita este passo para adicionar ig-us-2.
    6. Clique em Guardar.
  5. Antes de continuar, verifique se existe uma marca de verificação azul junto a Configuração de back-end.

Configuração da interface

  1. Clique em Configuração do front-end.
  2. Em Nome, introduza network-lb-forwarding-rule.
  3. Para processar o tráfego IPv4, siga estes passos:
    1. Para Versão do IP, selecione IPv4.
    2. Clique na lista de Endereços IP e selecione Criar endereço IP.
      1. Na página Reserve um novo endereço IP estático, para Nome, introduza network-lb-ipv4.
      2. Clique em Reservar.
    3. Para Portas, escolha Única. Em Número da porta, introduza 80.
    4. Clique em Concluído.
  4. Para processar o tráfego IPv6, siga os passos seguintes:

    1. Para a versão do IP, selecione IPv6.
    2. Para Sub-rede, selecione lb-subnet.
    3. Na lista Intervalo IPv6, selecione Criar endereço IP.
      1. Na página Reserve um novo endereço IP estático, para Nome, introduza network-lb-ipv6.
      2. Clique em Reservar.
    4. Para Portas, selecione Única. Em Número da porta, introduza 80.
    5. Clique em Concluído.

    Antes de continuar, verifique se a configuração foi bem-sucedida confirmando que existe um círculo azul com uma marca de verificação à esquerda de Configuração do frontend.

Reveja a configuração

  1. Clique em Rever e finalizar.
  2. Reveja as definições de configuração do equilibrador de carga.
  3. Opcional: clique em Código equivalente para ver o pedido da API REST a usar para criar o balanceador de carga.
  4. Clique em Criar.

    Na página de equilíbrio de carga, na coluna Backend do novo equilibrador de carga, confirme se existe uma marca de verificação verde a indicar que o novo equilibrador de carga está em bom estado.

gcloud

  1. 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 network-lb-ipv4 \
         --region us-central1
    

    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 network-lb-ipv6 \
         --region us-central1 \
         --subnet lb-subnet \
         --ip-version IPV6 \
         --endpoint-type NETLB
    
  2. Crie uma verificação de funcionamento de TCP.

    gcloud compute health-checks create tcp tcp-health-check \
        --region us-central1 \
        --port 80
    
  3. Crie um serviço de back-end.

    gcloud compute backend-services create network-lb-backend-service \
        --protocol TCP \
        --health-checks tcp-health-check \
        --health-checks-region us-central1 \
        --region us-central1
    
  4. Adicione os grupos de instâncias ao serviço de back-end.

    gcloud compute backend-services add-backend network-lb-backend-service \
        --instance-group ig-us-1 \
        --instance-group-zone us-central1-a \
        --region us-central1
    
    gcloud compute backend-services add-backend network-lb-backend-service \
        --instance-group ig-us-2 \
        --instance-group-zone us-central1-c \
        --region us-central1
    
  5. 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.

    1. 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 equilibrador de carga.

       gcloud compute forwarding-rules create network-lb-forwarding-rule-ipv4 \
           --load-balancing-scheme EXTERNAL \
           --region us-central1 \
           --ports 80 \
           --address network-lb-ipv4 \
           --backend-service network-lb-backend-service
      
    2. 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 network-lb-forwarding-rule-ipv6 \
           --load-balancing-scheme EXTERNAL \
           --region us-central1 \
           --network-tier PREMIUM \
           --ip-version IPV6 \
           --subnet lb-subnet \
           --address network-lb-ipv6 \
           --ports 80 \
           --backend-service network-lb-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

  1. Na Trusted Cloud consola, aceda à página de balanceamento de carga Componentes de balanceamento de carga.

    Aceda a Componentes de equilíbrio de carga

  2. No separador Regras de encaminhamento, localize a regra de encaminhamento usada pelo balanceador de carga.

  3. Na coluna Endereço IP externo, tome nota do endereço IP externo indicado.

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 network-lb-forwarding-rule-ipv4 \
    --region us-central1

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 network-lb-forwarding-rule-ipv6 \
    --region us-central1

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

Esta secção expande o exemplo de configuração para fornecer instruções sobre como personalizar ainda mais o balanceador de carga de rede de encaminhamento externo. Estas tarefas são opcionais. Pode realizá-las por qualquer ordem.

Configure a afinidade de sessão

A configuração de exemplo cria um serviço de back-end com afinidade de sessão desativada (valor definido como NONE). Esta secção mostra-lhe como atualizar o serviço de back-end para alterar a definição de afinidade de sessão do equilibrador de carga.

Para ver os tipos de afinidade de sessão suportados, consulte as opções de afinidade de sessão.

.

Consola

  1. Na Trusted Cloud consola, aceda à página Equilíbrio de carga.

    Aceda a Balanceamento de carga

  2. No separador Equilibradores de carga, clique no nome do serviço de back-end e, de seguida, clique em Editar.

  3. Na página Editar Network Load Balancer de passagem externo, clique em Configuração do back-end.

  4. Selecione uma opção na lista Afinidade de sessão.

  5. Clique em Atualizar.

gcloud

Use o seguinte comando gcloud para atualizar a afinidade de sessão para o serviço de back-end:

gcloud compute backend-services update BACKEND_SERVICE \
    --region=REGION \
    --session-affinity=SESSION_AFFINITY_OPTION

Substitua os marcadores de posição por valores válidos:

  • BACKEND_SERVICE: o serviço de back-end que está a atualizar
  • SESSION_AFFINITY_OPTION: a opção de afinidade de sessão que quer definir

    Para ver a lista de valores suportados para um equilibrador de carga de encaminhamento externo, consulte as Opções de afinidade de sessão.

Configure uma política de acompanhamento de ligações

A configuração de exemplo cria um serviço de back-end com as definições predefinidas para a respetiva política de acompanhamento de ligações. Esta secção mostra como atualizar o serviço de back-end para alterar a política de acompanhamento de ligações predefinida do equilibrador de carga.

Uma política de acompanhamento de ligações inclui as seguintes definições:

gcloud

Use o seguinte gcloud compute backend-services comando para atualizar a política de acompanhamento de ligações para o serviço de back-end:

gcloud compute backend-services update BACKEND_SERVICE \
    --region=REGION \
    --tracking-mode=TRACKING_MODE \
    --connection-persistence-on-unhealthy-backends=CONNECTION_PERSISTENCE_BEHAVIOR

Substitua os marcadores de posição por valores válidos:

  • BACKEND_SERVICE: o serviço de back-end que está a atualizar
  • TRACKING_MODE: o modo de acompanhamento de ligações a usar para pacotes recebidos. Para ver a lista de valores suportados, consulte o artigo Modo de acompanhamento.
  • CONNECTION_PERSISTENCE_BEHAVIOR: o comportamento de persistência da ligação quando os back-ends não estão em bom estado. Para ver a lista de valores suportados, consulte o artigo Persistência da ligação em back-ends não íntegros.

Configure o encaminhamento de tráfego

Esta secção mostra como atualizar a configuração de front-end de um equilibrador de carga para configurar o encaminhamento de tráfego baseado no IP de origem. Para ver detalhes sobre o funcionamento do encaminhamento de tráfego, consulte o artigo Encaminhamento de tráfego.

Estas instruções pressupõem que já criou a regra de encaminhamento base principal. Este exemplo cria uma segunda regra de encaminhamento, que é a regra de encaminhamento de direcionamento, com o mesmo endereço IP, protocolo IP e portas que a regra principal. Esta regra de encaminhamento de direcionamento está configurada com intervalos de IPs de origem para que possa personalizar a forma como os pacotes desses intervalos de IPs de origem são encaminhados.

gcloud

Use o seguinte comando para criar uma regra de encaminhamento de direcionamento que aponte para um serviço de back-end:

gcloud compute forwarding-rules create STEERING_FORWARDING_RULE_BS \
    --load-balancing-scheme=EXTERNAL \
    --backend-service=BACKEND_SERVICE \
    --address=LOAD_BALANCER_VIP \
    --ip-protocol=IP_PROTOCOL \
    --ports=PORTS \
    --region=REGION \
    --source-ip-ranges=SOURCE_IP_ADDRESS_RANGES

Use o seguinte comando para criar uma regra de encaminhamento de direcionamento que aponte para uma instância de destino:

gcloud compute forwarding-rules create STEERING_FORWARDING_RULE_TI \
    --load-balancing-scheme=EXTERNAL \
    --target-instance=TARGET_INSTANCE \
    --address=LOAD_BALANCER_VIP \
    --ip-protocol=IP_PROTOCOL \
    --ports=PORTS \
    --region=REGION \
    --source-ip-ranges=SOURCE_IP_ADDRESS_RANGES

Substitua os marcadores de posição por valores válidos:

  • STEERING_FORWARDING_RULE_BS ou STEERING_FORWARDING_RULE_TI: o nome da regra de encaminhamento de direcionamento a criar.
  • BACKEND_SERVICE ou TARGET_INSTANCE: o nome do serviço de back-end ou da instância de destino para a qual esta regra de encaminhamento de direcionamento enviará tráfego. Mesmo que a regra de encaminhamento principal aponte para um serviço de back-end, pode criar regras de encaminhamento de direcionamento que apontem para instâncias de destino.
  • LOAD_BALANCER_VIP, IP_PROTOCOL, PORTS: o endereço IP, o protocolo IP e as portas, respetivamente, para a regra de encaminhamento de direcionamento que está a criar. Estas definições têm de corresponder a uma regra de encaminhamento base pré-existente.
  • REGION: a região da regra de encaminhamento que está a criar.
  • SOURCE_IP_ADDRESS_RANGES: lista separada por vírgulas de endereços IP ou intervalos de endereços IP. Esta regra de encaminhamento só encaminha o tráfego quando o endereço IP de origem do pacote recebido se enquadra num dos intervalos de IP definidos aqui.

Use o seguinte comando para eliminar uma regra de encaminhamento de direcionamento. Tem de eliminar todas as regras de encaminhamento de direcionamento que estão a ser usadas por um equilibrador de carga antes de poder eliminar o próprio equilibrador de carga.

gcloud compute forwarding-rules delete STEERING_FORWARDING_RULE \
    --region=REGION

Configure a política de alternativa

Para configurar a política de comutação por falha, consulte o artigo Configure a comutação por falha para balanceadores de carga de rede de encaminhamento externo.

Configure o balanceamento de carga ponderado

Para configurar o balanceamento de carga ponderado, consulte o artigo Configure o balanceamento de carga ponderado.

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:

  1. Crie um prefixo IPv6 anunciado publicamente
  2. Crie prefixos públicos delegados
  3. Crie subprefixos IPv6
  4. Anuncie o prefixo

Para criar uma nova regra de encaminhamento, siga estes passos:

Consola

  1. Na Trusted Cloud consola, aceda à página Equilíbrio de carga.

    Aceda a Balanceamento de carga.

  2. Clique no nome do equilibrador de carga que quer modificar.
  3. Clique em Editar.
  4. Clique em Configuração do front-end.
  5. Clique em Adicionar IP e porta do front-end.
  6. Na secção Novo IP e porta de front-end, especifique o seguinte:
    1. Selecione o Protocolo de que precisa.
    2. No campo Versão do IP, selecione IPv6.
    3. No campo Origem do intervalo IPv6, selecione BYOIP.
    4. Na lista Recolha de IPs, selecione um subprefixo criado nos passos anteriores com a opção de regra de encaminhamento ativada.
    5. 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.
    6. No campo Portas, introduza um número de porta.
    7. Clique em Concluído.
  7. 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 encaminhamento
  • PROTOCOL: o protocolo IP para a regra de encaminhamento. A predefinição é TCP. Para este exemplo, o protocolo IP pode ser TCP ou UDP.
  • REGION_A: região para a regra de encaminhamento
  • IPV6_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-end
  • PDP_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?