Este documento fornece instruções para configurar um balanceador de carga de rede de proxy clássico com um proxy SSL de destino e back-ends do grupo de instâncias de VM. Antes de começar, leia a vista geral do balanceador de carga de rede do proxy externo para obter informações sobre o funcionamento destes balanceadores de carga.
Vista geral da configuração
Este exemplo demonstra como configurar um Network Load Balancer de proxy externo para um serviço que existe em duas regiões: região A e região B. Vai configurar o seguinte:
- Quatro instâncias distribuídas por duas regiões
- Grupos de instâncias para reter as instâncias
- Componentes de back-end, que incluem o seguinte:
- Verificação de funcionamento: usada para monitorizar o estado de funcionamento da instância
- Serviço de back-end: monitoriza grupos de instâncias e impede que excedam a utilização configurada
- Back-ends: contêm os grupos de instâncias
- Componentes de front-end, que incluem o seguinte:
- Um recurso de certificado SSL. Pode usar um certificado autogerido, em que fornece o seu próprio certificado SSL, ou um certificado gerido pela Google, em que a Google emite um certificado válido para todos os seus domínios. Para mais informações, consulte o artigo Tipos de certificados SSL.
- O próprio proxy SSL com o respetivo certificado SSL
- Um endereço IPv4 estático externo e uma regra de encaminhamento que envia tráfego de utilizadores para o proxy
- Um endereço IPv6 estático externo e uma regra de encaminhamento que envia tráfego de utilizadores para o proxy
- Uma regra de firewall que permite o tráfego do balanceador de carga e do verificador de estado de funcionamento para as instâncias.
- Opcionalmente, uma política SSL para controlar as funcionalidades do SSL que o equilibrador de carga do proxy SSL negoceia com os clientes.
Depois disso, teste a configuração.
Autorizações
Para seguir este guia, tem de conseguir 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 do IAM do Compute Engine:
Tarefa | Função necessária |
---|---|
Crie redes, sub-redes e componentes do balanceador de carga | Administrador da rede |
Adicione e remova regras de firewall | Administrador de segurança |
Crie instâncias | Administrador de instâncias do Compute |
Para mais informações, consulte os seguintes guias:
Configure a rede e as sub-redes
Para criar a rede e a sub-rede de exemplo, siga estes passos.
Consola
Na Google Cloud consola, aceda à página Redes VPC.
Clique em Criar rede de VPC.
Introduza um Nome para a rede.
Escolha Personalizado para o Modo de criação de sub-rede.
Na secção Nova sub-rede, especifique os seguintes parâmetros de configuração de uma sub-rede:
- No campo Nome, indique um nome para a sub-rede.
- No campo Região, introduza o nome de uma região.
- Para o Tipo de pilha de IP, selecione IPv4 (pilha única).
- No campo Intervalo de endereços IP, introduza um intervalo de endereços IP. Este é o intervalo IPv4 principal para a sub-rede.
Clique em Concluído.
Para adicionar uma sub-rede numa região diferente, clique em Adicionar sub-rede e repita os passos anteriores.
Clique em Criar.
gcloud
gcloud compute networks subnets update SUBNET \ --network=NETWORK \ --stack-type=IPV4_ONLY \ --range=10.1.2.0/24 \ --region=REGION_A
Substitua o seguinte:
NETWORK
: um nome para a rede VPCSUBNET
: um nome para a sub-redeREGION_A
: o nome da região
Configure instâncias e grupos de instâncias
Esta secção mostra como criar instâncias e grupos de instâncias e, em seguida, adicionar as instâncias aos grupos de instâncias. Normalmente, um sistema de produção usaria grupos de instâncias geridos com base em modelos de instâncias, mas esta configuração é mais rápida para os testes iniciais.
Crie instâncias
Crie estas instâncias com a etiqueta ssl-lb
, que a regra de firewall vai usar
mais tarde.
Consola
Crie instâncias
Na Google Cloud consola, aceda à página Instâncias de VM.
Clique em Criar instância.
Defina Nome como
vm-a1
.Defina a Zona como ZONE_A.
Clique em Opções avançadas.
Clique em Rede e configure o seguinte campo:
- No campo Etiquetas de rede, introduza
ssl-lb
eallow-health-check-ipv6
.
- No campo Etiquetas de rede, introduza
Na secção Interfaces de rede, clique em Editar e faça as seguintes alterações:
- Selecione a rede.
Selecione uma sub-rede.
Clique em Concluído.
Clique em Gestão. Introduza o seguinte script no campo Script de arranque.
sudo apt-get update sudo apt-get install apache2 -y sudo a2ensite default-ssl sudo a2enmod ssl sudo service apache2 restart echo '<!doctype html><html><body><h1>vm-a1</h1></body></html>' | sudo tee /var/www/html/index.html
Mantenha os valores predefinidos para os restantes campos.
Clique em Criar.
Crie
vm-a2
com as mesmas definições, exceto com o script de arranque definido como o seguinte:sudo apt-get update sudo apt-get install apache2 -y sudo a2ensite default-ssl sudo a2enmod ssl sudo service apache2 restart echo '<!doctype html><html><body><h1>vm-a2</h1></body></html>' | sudo tee /var/www/html/index.html
Crie
vm-b1
com as mesmas definições, exceto com Zone definido comoZONE_B
e Startup script definido como o seguinte:sudo apt-get update sudo apt-get install apache2 -y sudo a2ensite default-ssl sudo a2enmod ssl sudo service apache2 restart echo '<!doctype html><html><body><h1>vm-b1</h1></body></html>' | sudo tee /var/www/html/index.html
Crie
vm-b2
com as mesmas definições, exceto com Zone definido comoZONE_B
e Startup script definido como o seguinte:sudo apt-get update sudo apt-get install apache2 -y sudo a2ensite default-ssl sudo a2enmod ssl sudo service apache2 restart echo '<!doctype html><html><body><h1>vm-b2</h1></body></html>' | sudo tee /var/www/html/index.html
gcloud
Crie
vm-a1
na zonaZONE_A
.gcloud compute instances create vm-a1 \ --image-family debian-12 \ --image-project debian-cloud \ --tags ssl-lb \ --zone ZONE_A \ --metadata startup-script="#! /bin/bash sudo apt-get update sudo apt-get install apache2 -y sudo a2ensite default-ssl sudo a2enmod ssl sudo service apache2 restart echo '<!doctype html><html><body><h1>vm-a1</h1></body></html>' | sudo tee /var/www/html/index.html EOF"
Crie
vm-a2
na zonaZONE_A
.gcloud compute instances create vm-a2 \ --image-family=debian-12 \ --image-project=debian-cloud \ --tags=ssl-lb \ --zone=ZONE_A \ --metadata=startup-script="#! /bin/bash sudo apt-get update sudo apt-get install apache2 -y sudo a2ensite default-ssl sudo a2enmod ssl sudo service apache2 restart echo '<!doctype html><html><body><h1>vm-a2</h1></body></html>' | sudo tee /var/www/html/index.html EOF"
Crie
vm-b1
na zonaZONE_B
.gcloud compute instances create vm-b1 \ --image-family=debian-12 \ --image-project=debian-cloud \ --tags=ssl-lb \ --zone=ZONE_B \ --metadata=startup-script="#! /bin/bash sudo apt-get update sudo apt-get install apache2 -y sudo a2ensite default-ssl sudo a2enmod ssl sudo service apache2 restart echo '<!doctype html><html><body><h1>vm-b1</h1></body></html>' | sudo tee /var/www/html/index.html EOF"
Crie
vm-b2
na zonaZONE_B
.gcloud compute instances create vm-b2 \ --image-family=debian-12 \ --image-project=debian-cloud \ --tags=ssl-lb \ --zone=ZONE_B \ --metadata=startup-script="#! /bin/bash sudo apt-get update sudo apt-get install apache2 -y sudo a2ensite default-ssl sudo a2enmod ssl sudo service apache2 restart echo '<!doctype html><html><body><h1>vm-b2</h1></body></html>' | sudo tee /var/www/html/index.html EOF"
Crie um grupo de instâncias para cada zona e adicione instâncias
Consola
Na Google Cloud consola, aceda à página Grupos de instâncias.
Clique em Criar grupo de instâncias.
Defina o Nome como
instance-group-a
.Defina a Zona como
ZONE_A
.Em Mapeamento de portas, clique em Adicionar porta. Um balanceador de carga envia tráfego para um grupo de instâncias através de uma porta designada. Crie uma porta com nome para mapear o tráfego de entrada para um número de porta específico.
- Introduza um Nome da porta de
ssl-lb
e Números da porta de443
.
- Introduza um Nome da porta de
Em Definição de instância, clique em Selecionar instâncias existentes.
Em Instâncias de VM, selecione
vm-a1
evm-a2
.Deixe as outras definições como estão.
Clique em Criar.
Repita os passos, mas defina o seguinte:
- Nome:
instance-group-b
- Zona:
ZONE_B
- Nome da porta de
ssl-lb
e números de portas de443
- Instâncias: vm-b1 e vm-b2.
- Nome:
Confirme que tem agora dois grupos de instâncias, cada um com duas instâncias.
gcloud
Crie o grupo de instâncias instance-group-a.
gcloud compute instance-groups unmanaged create instance-group-a --zone ZONE_A
Defina uma porta com nome para o grupo de instâncias.
gcloud compute instance-groups set-named-ports instance-group-a \ --named-ports=ssl-lb:443 \ --zone=ZONE_A
Adicione
vm-a1
evm-a2
a instance-group-agcloud compute instance-groups unmanaged add-instances instance-group-a \ --instances=vm-a1,vm-a2 \ --zone=ZONE_A
Crie o grupo de instâncias
instance-group-b
.gcloud compute instance-groups unmanaged create instance-group-b --zone ZONE_B
Defina uma porta com nome para o grupo de instâncias.
gcloud compute instance-groups set-named-ports instance-group-b \ --named-ports=ssl-lb:443 \ --zone=ZONE_B
Adicione
vm-b1
evm-b2
a instance-group-bgcloud compute instance-groups unmanaged add-instances instance-group-b \ --instances=vm-b1,vm-b2 \ --zone=ZONE_B
Agora, tem um grupo de instâncias em cada uma das duas regiões, cada um com duas instâncias.
Crie uma regra de firewall para o balanceador de carga SSL
Configure a firewall para permitir o tráfego do balanceador de carga e do verificador de estado para as instâncias.
Consola
Na Google Cloud consola, aceda à página Políticas de firewall.
Clique em Criar regra de firewall.
No campo Nome, introduza
allow-ssl-lb-and-health
.Selecione a rede.
Em Segmentações, selecione Etiquetas de segmentação especificadas.
Defina as etiquetas de destino como
ssl-lb
.Defina o Filtro de origem como Intervalos IPv4.
Defina os Intervalos IPv4 de origem como
130.211.0.0/22
e35.191.0.0/16
.Em Protocolos e portas, defina Protocolos e portas especificados como
tcp:443
.Clique em Criar.
gcloud
gcloud compute firewall-rules create allow-ssl-lb-and-health \ --source-ranges=130.211.0.0/22,35.191.0.0/16 \ --target-tags=ssl-lb \ --allow=tcp:443
Se estiver a usar um certificado gerido pela Google, confirme se o estado do recurso de certificado é ACTIVE. Para mais informações, consulte o estado do recurso de certificado SSL gerido pela Google.
gcloud compute ssl-certificates list
Configure o balanceador de carga
Consola
Inicie a configuração
Na Google 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 Proxy de balanceamento de carga e clique em Seguinte.
- Para Público ou interno, selecione Público (externo) e clique em Seguinte.
- Para a Implementação global ou de região única, selecione Melhor para cargas de trabalho globais e clique em Seguinte.
- Para Geração do balanceador de carga, selecione Proxy clássico Balanceador de carga de rede e clique em Seguinte.
- Clique em Configurar.
Configuração básica
Defina o Nome como my-ssl-lb
.
Configuração do back-end
- Clique em Configuração de back-end.
- Na lista Tipo de back-end, selecione Grupos de instâncias.
- Na lista Protocol (Protocolo), selecione SSL.
- No campo Porta com nome, introduza
ssl-lb
. - Aceite o valor predefinido para o Timeout.
- Configure a verificação de estado:
- Na lista Verificação de funcionamento, selecione Criar uma verificação de funcionamento.
- No campo Nome, introduza
my-ssl-health-check
. - Na lista Protocol (Protocolo), selecione SSL.
- Mantenha os restantes valores predefinidos.
- Clique em Criar.
- Configure o primeiro back-end:
- Em Novo back-end, selecione o grupo de instâncias
instance-group-a
. - Defina Transferir números como
443
. - Mantenha os restantes valores predefinidos.
- Em Novo back-end, selecione o grupo de instâncias
- Configure o segundo back-end:
- Clique em Adicionar back-end.
- Selecione o grupo de instâncias
instance-group-b
. - Defina Transferir números como
443
. - Clique em Concluído.
- Na Google Cloud consola, verifique se existe uma marca de verificação junto a Configuração de back-end. Caso contrário, verifique novamente se concluiu todos os passos.
Configuração do frontend
- Clique em Configuração do front-end.
- Introduza um Nome de
my-ssl-lb-forwarding-rule
. - Em Protocolo, selecione SSL.
- Em Endereço IP, selecione Criar endereço IP:
- Introduza um Nome de
ssl-lb-static-ipv4
. - Clique em Reservar.
- Introduza um Nome de
- Em Certificado, selecione Criar um novo certificado.
- Introduza um Nome de
my-ssl-cert
. - Se escolher Carregar o meu certificado, conclua estes passos:
- Cole o certificado ou clique em Carregar para navegar até ao ficheiro do certificado.
- Cole a chave privada ou clique em Carregar para navegar até ao ficheiro de chave privada.
- Se escolher Criar certificado gerido pela Google, introduza um
Domínio.
- Para introduzir domínios adicionais, clique em Adicionar domínio.
- Clique em Criar.
- Para adicionar recursos de certificados além do recurso de certificado SSL principal, clique em Certificados adicionais. Em seguida, selecione outro certificado no menu Certificados ou clique em Criar um novo certificado e siga as instruções acima.
- (Opcional) Para criar uma política de SSL:
- Em Política SSL, selecione Criar uma política.
- Introduza um Nome de
my-ssl-policy
. - Para Versão mínima de TLS, selecione TLS 1.0.
- Para Perfil, selecione Moderno. São apresentadas as Funcionalidades ativadas e as Funcionalidades desativadas.
- Clique em Guardar.
- Opcional: ative o Protocolo proxy.
- Clique em Concluído.
- Clique em Adicionar IP e porta do front-end.
- Introduza um Nome de
my-ssl-lb-ipv6-forwarding-rule
. - Defina a versão do IP como
IPv6
. - Em Endereço IP, clique em Criar endereço IP.
- Introduza um nome de
ssl-lb-static-ipv6
. - Clique em Reservar.
- Introduza um nome de
- Em Certificado, selecione
my-ssl-cert
. - Para adicionar recursos de certificados além do recurso de certificado SSL principal, selecione um certificado na lista Certificados ou clique em Criar um novo certificado.
- Opcional: use uma política SSL ou ative o protocolo proxy.
- Clique em Concluído.
- Verifique se existe uma marca de verificação verde junto a Configuração do front-end na Google Cloud consola. Caso contrário, verifique novamente se concluiu todos os passos anteriores.
- Clique em Concluído.
- Adicione a primeira regra de encaminhamento:
- Adicione a segunda regra de encaminhamento:
Reveja e finalize
- 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 balanceador de carga.
- Clique em Criar.
gcloud
- Crie uma verificação de funcionamento.
gcloud compute health-checks create ssl my-ssl-health-check --port=443
- Crie um serviço de back-end.
gcloud compute backend-services create my-ssl-lb \ --load-balancing-scheme EXTERNAL \ --global-health-checks \ --protocol=SSL \ --port-name=ssl-lb \ --health-checks=my-ssl-health-check \ --timeout=5m \ --global
Em alternativa, pode configurar a comunicação não encriptada do balanceador de carga para as instâncias através de
--protocol=TCP
. - Adicione grupos de instâncias ao seu serviço de back-end.
gcloud compute backend-services add-backend my-ssl-lb \ --instance-group=instance-group-a \ --instance-group-zone=ZONE_A \ --balancing-mode=UTILIZATION \ --max-utilization=0.8 \ --global
gcloud compute backend-services add-backend my-ssl-lb \ --instance-group=instance-group-b \ --instance-group-zone=ZONE_B \ --balancing-mode=UTILIZATION \ --max-utilization=0.8 \ --global
- Configure o recurso do certificado SSL.
Se estiver a usar certificados autogeridos, já tem de ter, pelo menos, um certificado SSL para carregar. Caso contrário, consulte o artigo Vista geral dos certificados SSL. Quando usa vários certificados SSL, tem de criá-los um de cada vez.
Se estiver a usar certificados SSL autogeridos e não tiver uma chave privada e um certificado assinado, pode criar e usar um certificado autoassinado para fins de teste.
Para criar um recurso de certificado SSL autogerido:
gcloud compute ssl-certificates create my-ssl-cert \ --certificate=CRT_FILE_PATH \ --private-key=KEY_FILE_PATH
Para criar um recurso de certificado SSL gerido pela Google:
gcloud compute ssl-certificates create www-ssl-cert \ --domains=DOMAIN_1,DOMAIN_2
- Configure um proxy SSL de destino.
Os balanceadores de carga de rede de proxy externos suportam a criação de um proxy SSL de destino que tem entre um e quinze certificados SSL. Antes de executar este comando, tem de criar um recurso de certificado SSL para cada certificado.
Se quiser ativar o cabeçalho do proxy, defina-o como
PROXY_V1
em vez denone
. Opcionalmente, pode anexar uma política SSL ao proxy de destino. Primeiro, crie a política.gcloud compute ssl-policies create my-ssl-policy \ --profile=MODERN \ --min-tls-version=1.0
Em seguida, anexe a política ao proxy de destino.
gcloud compute target-ssl-proxies create my-ssl-lb-target-proxy \ --backend-service=my-ssl-lb \ --ssl-certificates=[SSL_CERT_1][,[SSL_CERT_2],...] \ --ssl-policy=my-ssl-policy \ --proxy-header=NONE
- Reserve endereços IP estáticos globais.
Os seus clientes usam estes endereços IP para aceder ao seu serviço com balanceamento de carga.
gcloud compute addresses create ssl-lb-static-ipv4 \ --ip-version=IPV4 \ --global
gcloud compute addresses create ssl-lb-static-ipv6 \ --ip-version=IPV6 \ --global
- Configure regras de encaminhamento globais.
Crie regras de encaminhamento global associadas ao proxy de destino. Substitua LB_STATIC_IP e LB_STATIC_IPV6 pelos endereços IP que gerou em Reserve endereços IP estáticos globais.
gcloud compute forwarding-rules create my-ssl-lb-forwarding-rule \ --load-balancing-scheme EXTERNAL \ --global \ --target-ssl-proxy=my-ssl-lb-target-proxy \ --address=LB_STATIC_IP \ --ports=443
gcloud compute forwarding-rules create my-ssl-lb-ipv6-forwarding-rule \ --load-balancing-scheme EXTERNAL \ --global \ --target-ssl-proxy=my-ssl-lb-target-proxy \ --address=LB_STATIC_IPV6 \ --ports=443
Associe o seu domínio ao balanceador de carga
Após a criação do balanceador de carga, tome nota do endereço IP associado ao balanceador de carga, por exemplo, 30.90.80.100
. Para direcionar o seu domínio para o
equilibrador de carga, crie um registo A
através do serviço de registo de domínios. Se
adicionou vários domínios ao seu certificado SSL, tem de adicionar um registo A
para cada um, todos a apontar para o endereço IP do equilibrador de carga. Por exemplo, para criar registos A
para www.example.com
e example.com
, use o seguinte:
NAME TYPE DATA www A 30.90.80.100 @ A 30.90.80.100
Se usar o Cloud DNS como fornecedor de DNS, consulte o artigo Adicione, modifique e elimine registos.
Teste o balanceador de carga
No navegador de Internet, estabeleça ligação ao seu endereço IP estático através de HTTPS. Nesta configuração de teste, as instâncias estão a usar certificados autoassinados. Por conseguinte, vai ver um aviso no navegador na primeira vez que aceder a uma página. Clique no aviso para ver a página real. Substitua IP_ADDRESS pelo endereço IPv4 ou IPv6 que criou anteriormente.
https://IP_ADDRESS
Deve ver um dos anfitriões da região mais próxima de si. Atualize a página até ver a outra instância nessa região. Para ver instâncias da outra região, pare as instâncias na região mais próxima.
Em alternativa, pode usar curl
a partir da linha de comandos do seu computador local.
Se estiver a usar um certificado autoassinado no proxy SSL, também tem de especificar -k
. A opção curl -k
permite que o curl funcione mesmo que tenha um certificado autoassinado ou nenhum certificado. Se tiver um certificado normal, pode remover esse parâmetro. Só deve usar o parâmetro -k
para testar o seu próprio site. Em circunstâncias normais, um certificado válido é uma medida de segurança importante e os avisos de certificado não devem ser ignorados.
Substitua IP_ADDRESS pelo endereço IPv4 ou IPv6 que criou anteriormente.
curl -k https://IP_ADDRESS
Se não conseguir aceder ao equilibrador de carga, experimente os passos descritos em Resolução de problemas da configuração.
Opções de configuração adicionais
Esta secção expande o exemplo de configuração para oferecer opções de configuração alternativas e adicionais. Todas as tarefas são opcionais. Pode realizá-las por qualquer ordem.
Protocolo PROXY para reter informações de ligação do cliente
O Network Load Balancer de proxy termina as ligações TCP do cliente e cria novas ligações às instâncias. Por predefinição, as informações de porta e IP do cliente original não são preservadas.
Para preservar e enviar as informações de ligação originais para as suas instâncias, ative o protocolo PROXY versão 1. Este protocolo envia um cabeçalho adicional que contém o endereço IP de origem, o endereço IP de destino e os números das portas para a instância como parte do pedido.
Certifique-se de que as instâncias de back-end do balanceador de carga de rede do proxy estão a executar servidores que suportam cabeçalhos do protocolo PROXY. Se os servidores não estiverem configurados para suportar cabeçalhos do protocolo PROXY, as instâncias de back-end devolvem respostas vazias.
Se definir o protocolo PROXY para o tráfego de utilizadores, também o pode definir para as verificações de funcionamento. Se estiver a verificar o estado de funcionamento e a publicar conteúdo na mesma porta, defina o --proxy-header
da verificação de funcionamento de modo a corresponder à definição do balanceador de carga.
Normalmente, o cabeçalho do protocolo PROXY é uma única linha de texto legível pelo utilizador no seguinte formato:
PROXY TCP4 <client IP> <load balancing IP> <source port> <dest port>\r\n
O exemplo seguinte mostra um protocolo PROXY:
PROXY TCP4 192.0.2.1 198.51.100.1 15221 110\r\n
No exemplo anterior, o IP do cliente é 192.0.2.1
, o IP de equilíbrio de carga é 198.51.100.1
, a porta do cliente é 15221
e a porta de destino é 110
.
Quando o IP do cliente não é conhecido, o balanceador de carga gera um cabeçalho do protocolo PROXY no seguinte formato:
PROXY UNKNOWN\r\n
Atualize o cabeçalho do protocolo PROXY para o proxy de destino
A configuração de exemplo do balanceador de carga nesta página mostra como ativar o cabeçalho do protocolo PROXY durante a criação do balanceador de carga de rede do proxy. Use estes passos para alterar o cabeçalho do protocolo PROXY para um proxy de destino existente.
Consola
Na Google Cloud consola, aceda à página Equilíbrio de carga.
- Clique em Editar para o equilibrador de carga.
- Clique em Configuração do front-end.
- Altere o valor do campo Protocolo proxy para Ativado.
- Clique em Atualizar para guardar as alterações.
gcloud
No comando seguinte, edite o campo --proxy-header
e defina-o como NONE
ou PROXY_V1
, consoante o seu requisito.
gcloud compute target-ssl-proxies update TARGET_PROXY_NAME \ --proxy-header=[NONE | PROXY_V1]
Configure a afinidade de sessão
Estes procedimentos mostram como atualizar um serviço de back-end para o exemplo de equilibrador de carga do proxy SSL, de modo que o serviço de back-end use a afinidade de IP do cliente.
Quando a afinidade de IP do cliente está ativada, o balanceador de carga direciona os pedidos de um cliente específico para a mesma VM de back-end com base num hash criado a partir do endereço IP do cliente e do endereço IP do balanceador de carga (o endereço IP externo de uma regra de encaminhamento externo).
Consola
Para ativar a afinidade de sessão de IP do cliente:
Na Google Cloud consola, aceda à página Equilíbrio de carga.
Clique em Back-ends.
Clique em my-ssl-lb (o nome do serviço de back-end que criou para este exemplo) e clique em Editar.
Na página Detalhes do serviço de back-end, clique em Configuração avançada.
Em Afinidade de sessão, selecione IP do cliente no menu.
Clique em Atualizar.
gcloud
Use o seguinte comando para atualizar o serviço de back-end my-ssl-lb
, especificando a afinidade da sessão de IP do cliente:
gcloud compute backend-services update my-ssl-lb \ --global \ --session-affinity=CLIENT_IP
API
Para definir a afinidade de sessão do IP do cliente, faça um pedido PATCH
ao método
backendServices/patch
.
PATCH https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/global/us-west1/backendServices/my-ssl-lb
{
"sessionAffinity": "CLIENT_IP"
}
Ative a drenagem de ligações
Pode ativar a drenagem de ligações nos serviços de back-end para garantir uma interrupção mínima para os seus utilizadores quando uma instância que está a servir tráfego é terminada, removida manualmente ou removida por um escalador automático. Para saber mais sobre a drenagem de ligações, consulte a documentação Ativar drenagem de ligações.
O que se segue?
- Consulte o artigo Registo e monitorização do balanceador de carga de rede de proxy externo para obter informações sobre como funciona a monitorização para balanceadores de carga de rede de proxy externo.
- Consulte a vista geral da política de SSL para ver informações sobre como funcionam as políticas de SSL.
- Consulte o artigo Usar políticas de SSL para ver informações sobre a configuração de políticas de SSL.