O balanceador de carga de proxy TCP regional interno é um balanceador de carga de Camada 4 regional e baseado em proxy. Com ele, é possível executar e escalonar o tráfego do serviço TCP atrás de um endereço IP interno acessível apenas a clientes na mesma rede VPC ou aos clientes conectados à rede VPC. Se você quiser disponibilizar o serviço para clientes em outras redes VPC, use o Private Service Connect para publicar o serviço.
Nesta página, descrevemos como configurar um balanceador de carga de rede regional de proxy interno regional para balancear a carga do tráfego para back-ends no local ou em outros ambientes de nuvem que estão conectados por meio de conectividade híbrida. do Google Analytics. A configuração da conectividade híbrida para conectar suas redes ao Google Cloud não está no escopo desta página.
Visão geral
Neste exemplo, usaremos o balanceador de carga para distribuir o tráfego TCP nas VMs de back-end localizadas no local ou em outros ambientes de nuvem.
Neste exemplo, você configura o seguinte:
O balanceador de carga de rede do proxy interno regional é regional. Todos os componentes do balanceador de carga (grupos de instâncias de back-end, serviço de back-end, proxy de destino e regra de encaminhamento) precisam estar na mesma região.
Permissões
Para configurar o balanceamento de carga híbrido, você precisa ter as seguintes permissões:
No Google Cloud
- Permissões para estabelecer conectividade híbrida entre o Google Cloud e seu ambiente local ou outros ambientes de nuvem. Confira a lista de permissões necessárias na documentação relevante do produto Conectividade de rede.
- Permissões para criar um NEG de conectividade híbrida e o balanceador de carga.
O papel Administrador do balanceador de carga do Compute (
roles/compute.loadBalancerAdmin
) contém a permissão necessária para executar as tarefas descritas neste guia.
No local ou em outro ambiente de nuvem que não seja o Google Cloud
- Permissões para configurar endpoints de rede que
autorizam os serviços no local ou em outros ambientes de nuvem a serem acessados
pelo Google Cloud com uma combinação de
IP:Port
. Para mais informações, entre em contato com o administrador de rede do ambiente. - Permissões para criar regras de firewall no seu ambiente local ou em outros ambientes de nuvem para que as sondagens de verificação de integridade do Google alcancem os endpoints.
- Permissões para configurar endpoints de rede que
autorizam os serviços no local ou em outros ambientes de nuvem a serem acessados
pelo Google Cloud com uma combinação de
Além disso, para concluir as instruções nesta página, você precisa criar um NEG híbrido de conectividade, um balanceador de carga e NEGs zonais (e os respectivos endpoints) para servir como back-ends baseados no Google Cloud para o balanceador de carga.
É necessário ser proprietário ou editor de um projeto ou ter os seguintes papéis de IAM do Compute Engine.
Tarefa | Papel necessário |
---|---|
Criar redes, sub-redes e componentes do balanceador de carga | Administrador de rede do Compute
(roles/compute.networkAdmin ) |
Adicionar e remover regras de firewall | Administrador de segurança do Compute
(roles/compute.securityAdmin ) |
Criar instâncias | Administrador da instância do Compute
(roles/compute.instanceAdmin ) |
Estabelecer conectividade híbrida
O Google Cloud e os ambientes locais ou em nuvem precisam ser conectados por uma conectividade híbrida usando anexos da VLAN do Cloud Interconnect ou túneis do Cloud VPN com o Cloud Router. Recomendamos que você use uma conexão de alta disponibilidade.
Um Cloud Router ativado com roteamento dinâmico global aprende sobre o endpoint específico usando o Border Gateway Protocol (BGP) e o programa na sua rede VPC do Google Cloud. O roteamento dinâmico regional não é compatível. Rotas estáticas também não são compatíveis.
A rede VPC que você usa para configurar o Cloud Interconnect ou o Cloud VPN é a mesma rede usada para configurar a implantação do balanceamento de carga híbrido. Verifique se os intervalos de CIDR da sub-rede da rede VPC não entram em conflito com os intervalos CIDR remotos. Quando os endereços IP se sobrepõem, as rotas de sub-rede são priorizadas em relação à conectividade remota.
Para receber instruções, consulte a seguinte documentação:
Configurar o ambiente fora do Google Cloud
Execute as etapas a seguir para configurar seu ambiente local ou outro ambiente de nuvem para balanceamento de carga híbrido:
- Configure endpoints da rede para expor serviços locais ao
Google Cloud (
IP:Port
). - Configure regras de firewall no seu ambiente local ou em outro ambiente de nuvem
- Configurar o Cloud Router para divulgar determinadas rotas necessárias para seu ambiente particular.
Configurar endpoints da rede
Depois de configurar a conectividade híbrida, você configura um ou mais endpoints de rede no seu ambiente local ou em outros ambientes de nuvem acessíveis pelo Cloud Interconnect ou pelo Cloud VPN usando uma combinação de IP:port
. Essa combinação de IP:port
é configurada como um ou
mais endpoints para o NEG de conectividade híbrida criado no
Google Cloud posteriormente neste processo.
Se houver vários caminhos para o endpoint do IP, o roteamento seguirá o comportamento descrito na Visão geral do Cloud Router.
Configurar regras de firewall
As regras de firewall a seguir precisam ser criadas no ambiente local ou em outro ambiente de nuvem:
- Crie uma regra de firewall de permissão de entrada no ambiente local ou em outros ambientes de nuvem para permitir que o tráfego da sub-rede somente proxy da região chegue aos endpoints.
Não é necessário adicionar intervalos de sondagem de verificação de integridade do Google à lista de permissões para NEGs híbridos. No entanto, se você estiver usando uma combinação de NEGs híbridos e zonais em um único serviço de back-end, será necessário usar lista de permissões dos intervalos de sondagem de verificação de integridade do Google para NEGs zonais.
Divulgar rotas
Configure o Cloud Router para divulgar os seguintes intervalos de IP personalizados no local ou outro ambiente de nuvem:
- O intervalo da sub-rede somente proxy da região.
Configurar ambiente do Google Cloud
Para as etapas a seguir, certifique-se de usar a mesma rede VPC (chamada NETWORK neste procedimento) usada para configurar a conectividade híbrida entre os ambientes. É possível selecionar qualquer sub-rede dessa rede para reservar o endereço IP do balanceador de carga e criar o balanceador. Ela será chamada de LB_SUBNET neste procedimento.
Além disso, verifique se a região usada (chamada REGION neste procedimento) é a mesma usada para criar o túnel do Cloud VPN ou o anexo da VLAN do Cloud Interconnect.
Configurar a sub-rede somente proxy
Uma sub-rede somente proxy fornece um conjunto de endereços IP que o Google usa para executar proxies Envoy em seu nome. Os proxies encerram as conexões do cliente e criam novas conexões com os back-ends.
A sub-rede somente proxy é usada por todos os balanceadores de carga regionais baseados no Envoy na região REGION da rede VPC NETWORK.
Só pode haver uma sub-rede somente proxy ativa por região, por rede VPC. Pule esta etapa se já houver uma sub-rede somente proxy nessa região.
Console
Se você estiver usando o console do Google Cloud, é possível esperar e criar a sub-rede somente proxy depois na página Balanceamento de carga.
Se você quiser criar a sub-rede somente proxy agora, siga estas etapas:
No Console do Google Cloud, acesse a página Redes VPC.
Acesse a rede usada para configurar a conectividade híbrida entre os ambientes.
Clique em Add subnet.
Digite um Nome: PROXY_ONLY_SUBNET_NAME.
Selecionar uma região: REGION.
Defina Finalidade como Proxy gerenciado regional.
Digite um Intervalo de endereço IP: PROXY_ONLY_SUBNET_RANGE.
Clique em Adicionar.
gcloud
Crie a sub-rede somente proxy com o comando gcloud compute networks subnets
create
.
gcloud compute networks subnets create PROXY_ONLY_SUBNET_NAME \ --purpose=REGIONAL_MANAGED_PROXY \ --role=ACTIVE \ --region=REGION \ --network=NETWORK \ --range=PROXY_ONLY_SUBNET_RANGE
Reserve o endereço IP do balanceador de carga
Por padrão, um endereço IP é usado para cada regra de encaminhamento. É possível reservar um endereço IPv4 compartilhado para usar o mesmo endereço IPv4 com várias regras de encaminhamento. No entanto, se você quiser usar o Private Service Connect para publicar o balanceador de carga, não use um endereço IPv4 compartilhado para a regra de encaminhamento.
Para reservar um endereço IPv4 interno estático para o balanceador de carga, consulte Reservar um novo endereço IPv4 ou IPv6 interno estático.
Configurar o NEG de conectividade híbrida
Ao criar o NEG, use uma ZONE que minimize a distância geográfica
entre o Google Cloud e o ambiente
local ou de outra nuvem. Por exemplo, se você estiver hospedando um serviço em um ambiente
local em Frankfurt, na Alemanha, será possível
especificar a zona europe-west3-a
do Google Cloud ao criar o NEG.
Além disso, o ZONE usado para criar o NEG precisa estar na mesma região em que o túnel do Cloud VPN ou o anexo da VLAN do Cloud Interconnect foram configurados para conectividade híbrida.
Para ver as regiões e zonas disponíveis, consulte a documentação do Compute Engine: regiões e zonas disponíveis.
Console
Para criar um NEG de conectividade híbrida:
No console do Google Cloud, acesse a página Grupos de endpoints da rede.
Clique em Criar grupo de endpoints de rede.
Insira um Nome para o NEG híbrido. Chamado de HYBRID_NEG_NAME neste procedimento.
Selecione o Tipo de grupo de endpoints da rede: grupo de endpoints da rede de conectividade híbrida (zonal).
Selecione a Rede: NETWORK
Selecione a Sub-rede: LB_SUBNET
Selecione a Zona: HYBRID_NEG_ZONE
Insira a Porta padrão.
Clique em Criar.
Adicione endpoints ao NEG de conectividade híbrida:
No console do Google Cloud, acesse a página Grupos de endpoints da rede.
Clique no Nome do grupo de endpoints da rede criado na etapa anterior (HYBRID_NEG_NAME). Você verá a página Detalhes do grupo de endpoints da rede.
Na seção Endpoints da rede neste grupo, clique em Adicionar endpoint da rede. Você verá a página Adicionar endpoint de rede.
Insira o endereço IP do novo endpoint da rede.
Selecione o Tipo de porta.
- Se você selecionar Padrão, o endpoint usará a porta padrão para todos os endpoints no grupo de endpoints da rede.
- Se você selecionar Personalizado, insira um Número de porta diferente para ser usado pelo endpoint.
Para adicionar mais endpoints, clique em Adicionar endpoint da rede e repita as etapas anteriores.
Depois de adicionar todos os endpoints que não são do Google Cloud, clique em Criar.
gcloud
Crie um NEG de conectividade híbrida usando o comando
gcloud compute network-endpoint-groups create
.gcloud compute network-endpoint-groups create HYBRID_NEG_NAME \ --network-endpoint-type=NON_GCP_PRIVATE_IP_PORT \ --zone=HYBRID_NEG_ZONE \ --network=NETWORK
Adicione o endpoint IP:Porta local ao NEG híbrido:
gcloud compute network-endpoint-groups update HYBRID_NEG_NAME \ --zone=HYBRID_NEG_ZONE \ --add-endpoint="ip=ENDPOINT_IP_ADDRESS,port=ENDPOINT_PORT"
Use esse comando para adicionar os endpoints de rede que você configurou
anteriormente no local ou no seu ambiente de nuvem.
Repita --add-endpoint
quantas vezes forem necessárias.
Repita essas etapas para criar vários NEGs híbridos se necessário.
Configurar o balanceador de carga
Console
Iniciar a configuração
No console do Google Cloud, acesse a página Balanceamento de carga.
- Clique em Criar balanceador de carga.
- Em Tipo de balanceador de carga, selecione Balanceador de carga de rede (TCP/UDP/SSL) e clique em Próxima.
- Em Proxy ou passagem, selecione Balanceador de carga de proxy e clique em Próxima.
- Em Voltado ao público ou interno, selecione Interno e clique em Próxima.
- Em Implantação entre regiões ou região única, selecione Melhor para cargas de trabalho regionais e clique em Próxima.
- Clique em Configurar.
Configuração básica
- Digite um Nome para o balanceador de carga.
- Selecione a regiãoREGION.
- Selecione a Rede: NETWORK
Reservar uma sub-rede somente proxy
Para reservar uma sub-rede somente proxy:
- Clique em Reservar sub-rede.
- Insira o nome PROXY_ONLY_SUBNET_NAME.
- Digite um Intervalo de endereço IP: PROXY_ONLY_SUBNET_RANGE.
- Clique em Adicionar.
Configuração de back-end
- Clique em Configuração de back-end.
- Em Tipo de back-end, selecione Grupo de endpoints de rede de conectividade híbrida (zonal).
- Em Protocol, selecione TCP.
- Em Novo back-end, selecione o NEG híbrido criado anteriormente: HYBRID_NEG_NAME. Se preferir, clique em Criar um grupo de endpoints da rede para criar o NEG híbrido agora. Para saber como configurar o NEG, consulte Configurar o NEG híbrido.
- Mantenha os valores padrão restantes e clique em Concluído.
- Configure a verificação de integridade:
- Em Verificação de integridade, selecione Criar verificação de integridade.
- Digite um Nome para a verificação de integridade.
- Em Protocol, selecione TCP.
- Em Porta, insira
80
.
- Mantenha os valores padrão restantes e clique em Salvar.
- No Console do Google Cloud, verifique se há uma marca de seleção ao lado de Configuração do back-end. Se não houver, verifique se você concluiu todas as etapas.
Configuração de front-end
- Clique em Configuração de front-end.
- Insira um nome para a regra de encaminhamento: .
- Em Sub-rede, selecione LB_SUBNET.
- Em Endereço IP, selecione LB_IP_ADDRESS.
- Em Número da porta, digite um número de porta de 1 a 65535. A regra de encaminhamento encaminha pacotes com uma porta de destino correspondente.
- Ative o Protocolo de proxy somente se ele funcionar com o serviço em execução nos seus endpoints locais ou em outros endpoints da nuvem. Por exemplo, o protocolo PROXY não funciona com o software servidor Apache HTTP. Para mais informações, consulte Protocolo de proxy.
- Clique em Concluído.
- No Console do Google Cloud, verifique se há uma marca de seleção ao lado de Configuração do front-end. Se não houver, verifique se você concluiu todas as etapas anteriores.
Revisar e finalizar
- Clique em Revisar e finalizar.
- Verifique suas configurações.
- Clique em Criar.
gcloud
Crie uma verificação de integridade para os back-ends.
gcloud compute health-checks create tcp TCP_HEALTH_CHECK_NAME \ --region=REGION \ --use-serving-port
As sondagens de verificação de integridade para back-ends de NEG híbridos são originadas de proxies Envoy na sub-rede somente proxy.
Crie um serviço de back-end.
gcloud compute backend-services create BACKEND_SERVICE_NAME \ --load-balancing-scheme=INTERNAL_MANAGED \ --protocol=TCP \ --region=REGION \ --health-checks=TCP_HEALTH_CHECK_NAME \ --health-checks-region=REGION
Adicione o back-end NEG híbrido ao serviço de back-end.
gcloud compute backend-services add-backend BACKEND_SERVICE_NAME \ --network-endpoint-group=HYBRID_NEG_NAME \ --network-endpoint-group-zone=HYBRID_NEG_ZONE \ --region=REGION \ --balancing-mode=CONNECTION \ --max-connections=MAX_CONNECTIONS
Para
MAX_CONNECTIONS
, digite o máximo de conexões simultâneas que o back-end deve processar.Crie o proxy TCP de destino.
gcloud compute target-tcp-proxies create TARGET_TCP_PROXY_NAME \ --backend-service=BACKEND_SERVICE_NAME \ --region=REGION
Crie a regra de encaminhamento.
Crie a regra de encaminhamento usando o comando
gcloud compute forwarding-rules create
.Substitua FWD_RULE_PORT por um único número de porta de 1 a 65535. A regra de encaminhamento encaminha pacotes com uma porta de destino correspondente.
gcloud compute forwarding-rules create FORWARDING_RULE \ --load-balancing-scheme=INTERNAL_MANAGED \ --network=NETWORK \ --subnet=LB_SUBNET \ --address=LB_IP_ADDRESS \ --ports=FWD_RULE_PORT \ --region=REGION \ --target-tcp-proxy=TARGET_TCP_PROXY_NAME \ --target-tcp-proxy-region=REGION
Testar o balanceador de carga
Para testar o balanceador de carga, crie uma VM cliente na mesma região que o balanceador de carga. Em seguida, envie o tráfego do cliente para o balanceador de carga.
Criar uma VM cliente
Crie uma VM cliente (client-vm
) na mesma região do balanceador de carga.
Console
No console do Google Cloud, acesse a página Instâncias de VMs.
Clique em Criar instância.
Defina o Nome como
client-vm
.Defina Zona como CLIENT_VM_ZONE.
Clique em Opções avançadas.
Clique em Rede e configure os seguintes campos:
- Em Tags de rede, insira
allow-ssh
. - Em Interfaces de rede, selecione o seguinte:
- Rede: NETWORK
- Sub-rede: LB_SUBNET
- Em Tags de rede, insira
Clique em Criar.
gcloud
A VM do cliente precisa estar na mesma rede e região VPC que o balanceador de carga. Ele não precisa estar na mesma sub-rede ou zona. O cliente usa a mesma sub-rede que as VMs de back-end.
gcloud compute instances create client-vm \ --zone=CLIENT_VM_ZONE \ --image-family=debian-10 \ --image-project=debian-cloud \ --tags=allow-ssh \ --subnet=LB_SUBNET
Permitir tráfego SSH para a VM de teste
Neste exemplo, você criará a regra de firewall:
fw-allow-ssh
: uma regra de entrada que permite a conectividade SSH de entrada na porta TCP 22 de qualquer endereço. Escolha um intervalo de IP de origem mais restritivo para esta regra. Por exemplo, é possível especificar apenas os intervalos de IP do sistema do qual você inicia sessões SSH. Neste exemplo, usamos a tag de destinoallow-ssh
para identificar a VM do cliente de teste a que ela se aplicará.
Console
- No Console do Google Cloud, acesse a página políticas de Firewall. Acessar as políticas de firewall
- Clique em Criar regra de firewall novamente para criar uma regra que autorize conexões SSH de entrada:
- Nome:
fw-allow-ssh
- Rede: NETWORK
- Prioridade:
1000
- Direção do tráfego: entrada
- Ação se houver correspondência: permitir
- Destinos: tags de destino especificadas
- Tags de meta:
allow-ssh
- Filtro de origem: intervalos IPv4
- Intervalos IPv4 de origem:
0.0.0.0/0
- Portas e protocolos: escolha Portas e protocolos especificados e insira
tcp:22
. - Clique em Criar.
- Nome:
gcloud
Crie a regra de firewall
fw-allow-ssh
que permita a conectividade SSH para VMs com a tag de redeallow-ssh
.gcloud compute firewall-rules create fw-allow-ssh \ --network=NETWORK \ --action=allow \ --direction=ingress \ --target-tags=allow-ssh \ --rules=tcp:22
Enviar tráfego ao balanceador de carga
Agora que você configurou o balanceador de carga, é possível testar o envio de tráfego para o endereço IP dele.
Conecte-se via SSH à instância do cliente.
gcloud compute ssh client-vm \ --zone=CLIENT_VM_ZONE
Verifique se o balanceador de carga está disponibilizando nomes de host de back-end conforme o esperado.
Use o comando
compute addresses describe
para ver o endereço IP do balanceador de carga:gcloud compute addresses describe LB_IP_ADDRESS \ --region=REGION
Anote o endereço IP.
Envie tráfego para o balanceador de carga no endereço IP e na porta especificados ao criar a regra de encaminhamento do balanceador de carga. Testar se os back-ends NEG híbridos estão respondendo a solicitações depende do serviço em execução nos endpoints que não são do Google Cloud.
Opcional: publique o serviço usando o Private Service Connect
Um balanceador de carga de rede regional de proxy interno com conectividade híbrida permite disponibilizar um serviço hospedado no local ou em outros ambientes de nuvem para clientes na rede VPC.
Se você quiser disponibilizar o serviço híbrido em outras redes VPC, use o Private Service Connect para publicar o serviço. Ao colocar um anexo de serviço na frente do balanceador de carga do proxy TCP regional interno, é possível permitir que clientes em outras redes VPC alcancem os serviços híbridos executados no local ou em outros ambientes de nuvem.
A seguir
- Para configurar o monitoramento do balanceador de carga de rede do proxy interno regional, consulte Como usar o monitoramento.
- Para saber como funciona um balanceador de carga de rede de proxy interno regional, consulte a Visão geral do balanceador de carga de rede de proxy interno regional.
- Limpe a configuração do balanceador de carga.