Antes de seguir este guia, familiarize-se com a documentação de visão geral do NEG na Internet, incluindo as limitações.
O diagrama de arquitetura a seguir mostra um front-end do balanceador de carga de aplicativo interno regional com um back-end externo.Permissões
Para seguir este guia, você precisa criar uma NEG da Internet e criar ou modificar um balanceador de carga de aplicativo em um projeto. É necessário ser proprietário ou
editor (roles/owner
ou roles/editor
) de um projeto ou ter os seguintes
papéis de IAM do Compute Engine.
Tarefa | Papel necessário |
---|---|
Criar e modificar componentes do balanceador de carga | Administrador de rede do Compute ( roles/compute.networkAdmin )
|
Criar e modificar NEGs | Administrador da instância do Compute ( roles/compute.instanceAdmin )
|
Configurar seu ambiente de back-end externo fora do Google Cloud
Para configurar seu ambiente de back-end externo, consulte as seções a seguir.
Configurar endpoints da rede
Configure um endpoint de rede para expor seu back-end externo ao Google Cloud. Verifique se o endpoint, que pode ser uma combinação de IP:Porta ou um nome de domínio totalmente qualificado (FQDN, na sigla em inglês) e porta, pode ser acessado pela Internet. Posteriormente, esse endpoint será referenciado pelo NEG da Internet.
Para requisitos de configuração detalhados para endpoints NEG da Internet, consulte a Visão geral de NEGs da Internet.
Permitir que o back-end externo receba tráfego do Google Cloud
Esta etapa pode ser concluída após a criação da sub-rede somente proxy e a configuração do gateway do Cloud NAT.
Para permitir que as solicitações do Google Cloud alcancem seu back-end externo, você precisa executar as seguintes etapas:
- Configure um gateway do Cloud NAT com endereços IP usados para o tráfego de saída do Google Cloud. O gateway mapeia o intervalo de sub-rede somente proxy para os endereços IP externos. Para ver as etapas, consulte Configurar um gateway do Cloud NAT.
- Verifique se o ambiente de back-end externo está configurado para permitir que o tráfego do Google Cloud alcance o back-end externo. Por exemplo, se você usou endereços IP pré-reservados para o gateway NAT, use a lista de permissões desses endereços no seu ambiente externo. Provavelmente, você precisará trabalhar com o administrador de segurança ou de rede do seu ambiente externo para configurar isso.
Configurar ambiente do Google Cloud
Você precisará de uma rede VPC com duas sub-redes: uma para os componentes do balanceador de carga e outra para a sub-rede somente proxy da região. Em seguida, crie o balanceador de carga com um back-end de NEG da Internet.
Criar a rede VPC e sub-rede
Essa sub-rede é usada para criar os componentes do balanceador de carga.
console do Cloud
- No Console do Google Cloud, acesse a página Redes VPC.
Acessar redes VPC - Clique em Criar rede VPC.
- Digite um Nome: LB_NETWORK.
- Na seção Sub-redes:
- Defina o Modo de criação de sub-rede como Personalizado.
- Na seção Nova sub-rede, insira as informações a seguir:
- Name: LB_SUBNET_NAME
- Região: REGION
- Intervalo de endereços IP: LB_SUBNET_RANGE
- Clique em Concluído.
- Clique em Criar.
gcloud
Crie a rede VPC personalizada usando o comando
gcloud compute networks create
:gcloud compute networks create LB_NETWORK \ --subnet-mode=custom
Crie uma sub-rede na rede LB_NETWORK.
gcloud compute networks subnets create LB_SUBNET_NAME \ --network=LB_NETWORK \ --range=LB_SUBNET_RANGE \ --region=REGION
Configurar a sub-rede somente proxy
Essa sub-rede somente proxy é usada por todos os balanceadores de carga regionais baseados no Envoy na região REGION.
Console
- No Console do Google Cloud, acesse a página Redes VPC.
Acessar redes VPC - Selecione uma Rede na lista.
- 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=LB_NETWORK \ --range=PROXY_ONLY_SUBNET_RANGE
Configurar um gateway do Cloud NAT
Antes de configurar o gateway do Cloud NAT, revise as limitações e considerações sobre preço associadas. Para detalhes, consulte NEGs regionais: usar um gateway do Cloud NAT.Os comandos a seguir descrevem como configurar um gateway do Cloud NAT. O gateway do Cloud NAT pode ser configurado para usar endereços IP externos NAT automáticos, em que a alocação é baseada na demanda, ou para usar um conjunto pré-reservado manualmente de endereços IP externos. O gateway mapeia o intervalo de sub-rede somente proxy para os endereços IP externos.
Configurar endereços IP alocados NAT automáticos
Ao criar um gateway do Cloud NAT com alocação automática de endereço IP NAT, é possível especificar os Níveis de serviço de rede (nível Premium ou Standard) com os quais o gateway do Cloud NAT aloca os endereços IP.
Console
No Console do Google Cloud, acesse a página do Cloud NAT.
Clique em Primeiros passos ou Criar gateway Cloud NAT.
Digite um nome de gateway LB_NAT_CONFIG.
Em Tipo de NAT, selecione Público.
Na lista Rede, selecione LB_NETWORK.
Na lista Região, selecione REGION.
Crie um Cloud Router na região.
Em Tipo de endpoint de origem, selecione Balanceadores de carga de proxy gerenciados.
Na lista Origem, selecione Personalizado.
- Em Sub-redes, selecione PROXY_ONLY_SUBNET_NAME.
Na lista Endereços IP do Cloud NAT, selecione Automático (recomendado).
Em Nível de serviço de rede, escolha Premium ou Standard.
Clique em Criar.
gcloud
Use endereços IP alocados dinamicamente se o ambiente de back-end externo não precisar de uma lista de permissões de endereços IP específicos do Google Cloud que podem enviar tráfego ao back-end externo.
Criar um Cloud Router
gcloud beta compute routers create ROUTER_NAME \ --network=LB_NETWORK \ --region=REGION
Configure o gateway do Cloud NAT.
gcloud beta compute routers nats create LB_NAT_CONFIG \ --router=ROUTER_NAME \ --endpoint-types=ENDPOINT_TYPE_MANAGED_PROXY_LB \ --nat-custom-subnet-ip-ranges=PROXY_ONLY_SUBNET_NAME \ --auto-allocate-nat-external-ips \ --region=REGION
Substitua:
LB_NAT_CONFIG
: o nome da configuração NAT.ROUTER_NAME
: o nome do seu Cloud Router.REGION
: a região do NAT a ser excluída. Se não for especificado, talvez seja solicitado que você selecione uma região (apenas no modo interativo).PROXY_ONLY_SUBNET_NAME
: o nome da sub-rede somente proxy.
Configurar endereços IP alocados manualmente
Use endereços IP alocados manualmente somente se o ambiente de back-end externo exigir o uso de uma lista de permissões de endereços IP específicos do Google Cloud. Se o ambiente de back-end externo não precisar de uma lista de permissões, use a alocação dinâmica, conforme mostrado anteriormente.
Ao criar um gateway do Cloud NAT, você tem a opção de atribuir manualmente endereços IP NAT de nível Premium, Standard ou ambos, sujeitos a determinadas condições.
Console
No Console do Google Cloud, acesse a página do Cloud NAT.
Clique em Primeiros passos ou Criar gateway Cloud NAT.
Digite um nome de gateway LB_NAT_CONFIG.
Na lista Rede, selecione LB_NETWORK.
Na lista Região, selecione REGION.
Selecione ou crie um Cloud Router na região.
Em Tipo de endpoint de origem, selecione Balanceadores de carga de proxy gerenciados.
Na lista Origem, selecione Personalizado.
- Em Sub-redes, selecione PROXY_ONLY_SUBNET_NAME.
Na lista Endereços IP do Cloud NAT, selecione Manual.
Em Nível de serviço de rede, escolha Premium ou Standard.
Selecione ou crie um endereço IP externo estático reservado para usar para NAT.
Se desejar especificar endereços IP adicionais, clique em Adicionar endereço IP e selecione ou crie um endereço IP externo estático adicional reservado.
Clique em Criar.
gcloud
Crie os endereços IP. Como o gateway faz a conversão NAT um para um, é preciso garantir que o pool de endereços IP reservados seja grande o suficiente para processar a quantidade de tráfego que você espera. A insuficiência de endereços IP NAT alocados pode resultar em perda de tráfego.
gcloud compute addresses create IP_ADDRESS_NAME_1 IP_ADDRESS_NAME_2 [IP_ADDRESS_NAME_3 ...] \ --region=REGION
Criar um Cloud Router
gcloud compute routers create ROUTER_NAME \ --network=LB_NETWORK \ --region=REGION
Configure o gateway do Cloud NAT.
gcloud beta compute routers nats create LB_NAT_CONFIG \ --router=ROUTER_NAME \ --endpoint-types=ENDPOINT_TYPE_MANAGED_PROXY_LB \ --nat-custom-subnet-ip-ranges=PROXY_ONLY_SUBNET_NAME \ --nat-external-ip-pool=IP_ADDRESS_NAME_1,IP_ADDRESS_NAME_2,[IP_ADDRESS_NAME_3 ...] \ --region=REGION
Substitua:
LB_NAT_CONFIG
: o nome da configuração NAT.ROUTER_NAME
: o nome do seu Cloud Router.PROXY_ONLY_SUBNET_NAME
: o nome da sub-rede somente proxy.REGION
: a região do NAT a ser excluída. Se não for especificado, talvez seja solicitado que você selecione uma região (apenas no modo interativo).
Para mais informações, consulte Especificar intervalos de sub-rede para NAT na documentação do Cloud NAT.
Use uma lista de permissões dos intervalos de endereços IP NAT no ambiente de back-end externo, para que o back-end externo possa receber tráfego do Google Cloud.
Reserve o endereço IP do balanceador de carga
Reserve um endereço IP interno para o balanceador de carga.
Console
É possível reservar um endereço IP interno independente usando o Console do Google Cloud.
- Acesse a página Redes VPC.
- Clique na rede usada para configurar a conectividade híbrida entre os ambientes.
- Clique em Endereços IP internos estáticos e em Reservar endereço estático.
- Digite um Nome: LB_IP_ADDRESS.
- Em Sub-rede, selecione LB_SUBNET_NAME.
- Se quiser especificar o endereço IP a ser reservado, em Endereço IP estático , selecioneDeixe-me escolher e preencha com um Endereço IP personalizado. Caso contrário, o sistema atribui automaticamente um endereço IP na sub-rede para você.
- Se você quiser usar esse endereço IP com várias regras de encaminhamento, em Objetivo, escolha Compartilhado.
- Clique em Reservar para concluir o processo.
gcloud
Usando a CLI gcloud, execute o comando
compute addresses create
:gcloud compute addresses create LB_IP_ADDRESS \ --region=REGION \ --subnet=LB_SUBNET_NAME
Use o comando
compute addresses describe
para ver o endereço IP alocado:gcloud compute addresses describe LB_IP_ADDRESS \ --region=REGION
Configurar o NEG da Internet
É possível criar um NEG da Internet com endpoints INTERNET_FQDN_PORT
ou INTERNET_IP_PORT
.
Console
Criar um NEG com endpoints INTERNET_FQDN_PORT
No console do Google Cloud, acesse a página Grupo de endpoints de rede.
Clique em Criar grupo de endpoints de rede.
Especifique um INTERNET_NEG_NAME para seu NEG da Internet. Saiba mais em Convenção de nomenclatura de recursos.
Na lista Tipo de grupo de endpoints de rede, selecione Grupo de endpoints de rede (Internet) e, em seguida, faça isto:
- Na lista Escopo, selecione Regional.
- Opcional: na lista Região, mude a REGION desse NEG.
- Na lista Rede, selecione LB_NETWORK.
- Na caixa Porta padrão, digite DEFAULT_PORT_NUMBER.
- Na lista Adicionar endpoints via, selecione Nome de domínio totalmente qualificado e porta.
- Selecione Criar.
Adicione INTERNET_FQDN_PORT
endpoints ao NEG
No console do Google Cloud, acesse a página Grupo de endpoints de rede.
- Clique em INTERNET_NEG_NAME.
Insira o Nome de domínio totalmente qualificado, como
myorg.example.com
. É preciso especificar objetos FQDN na sintaxe padrão de FQDN.Opcional: em Tipo de porta, selecione Personalizado. Se o Tipo de porta for
Default
, a porta padrão do NEG será usada.- Na caixa Número da porta, digite PORT_NUMBER_1.
- Selecione Criar.
Criar um NEG com endpoints INTERNET_IP_PORT
No console do Google Cloud, acesse a página Grupo de endpoints de rede.
Clique em Criar grupo de endpoints de rede.
Especifique um nome INTERNET_NEG_NAME para seu NEG da Internet. Saiba mais em Convenção de nomenclatura de recursos.
Na lista Tipo de grupo de endpoints de rede, selecione Grupo de endpoints de rede (Internet) e, em seguida, faça isto:
- Na lista Escopo, selecione Regional.
- Opcional: na lista Região, mude a REGION desse NEG.
- Na lista Rede, selecione LB_NETWORK.
- Na caixa Porta padrão, digite DEFAULT_PORT_NUMBER.
- Na lista Adicionar endpoints via, selecione IP e porta.
- Selecione Criar.
Adicione INTERNET_IP_PORT
endpoints ao NEG
No console do Google Cloud, acesse a página Grupo de endpoints de rede.
- Clique em INTERNET_NEG_NAME.
- No campo Endereço IP, digite IP_ADDRESS_1.
Opcional: na lista Tipo de porta, selecione Personalizado. Se o Tipo de porta for
Default
, a porta padrão do NEG será usada.- No campo Número da porta, digite PORT_NUMBER_1.
- Selecione Criar.
gcloud
Para criar um NEG com endpoints INTERNET_FQDN_PORT
:
Crie o recurso de NEG.
gcloud beta compute network-endpoint-groups create INTERNET_NEG_NAME \ --network-endpoint-type=INTERNET_FQDN_PORT \ --default-port=DEFAULT_PORT_NUMBER \ --network=LB_NETWORK \ --region=REGION
Adicione endpoints ao NEG. Se uma porta não for especificada, a porta padrão do NEG será usada.
gcloud beta compute network-endpoint-groups update INTERNET_NEG_NAME \ --add-endpoint="fqdn=FULLY_QUALIFIED_DOMAIN_NAME_1,port=PORT_NUMBER_1" \ [--add-endpoint="fqdn=FULLY_QUALIFIED_DOMAIN_NAME_2,port=PORT_NUMBER_2" \] --region=REGION
Substitua:
FULLY_QUALIFIED_DOMAIN_NAME
: o nome de domínio totalmente qualificado do endpointPORT_NUMBER
: o número da porta do endpoint
É possível adicionar até 256 endpoints por NEG.
Se seu domínio puder ser resolvido pela Internet, nenhuma outra configuração precisará ser definida no DNS. No entanto, se você estiver usando FQDNs particulares, será necessário configurar o Cloud DNS para facilitar a resolução de DNS. O nome precisa estar hospedado no Cloud DNS ou ser resolvido via encaminhamento de DNS do Cloud DNS para um DNS local.
Comece criando uma zona do Cloud DNS para hospedar os registros DNS no seu projeto. Em seguida, adicione os registros DNS a ele. Consulte a documentação do Cloud DNS para ver etapas de configuração específicas.
Para criar um NEG com endpoints INTERNET_IP_PORT
:
Crie o recurso de NEG.
gcloud beta compute network-endpoint-groups create INTERNET_NEG_NAME \ --network-endpoint-type=INTERNET_IP_PORT \ --default-port=DEFAULT_PORT_NUMBER \ --network=LB_NETWORK \ --region=REGION
Adicione endpoints ao NEG. Se uma porta não for especificada, a porta padrão do NEG será usada.
gcloud beta compute network-endpoint-groups update INTERNET_NEG_NAME \ --add-endpoint="ip=IP_ADDRESS_1,port=PORT_NUMBER_1" \ [--add-endpoint="ip=IP_ADDRESS_2,port=PORT_NUMBER_2" \] --region=REGION
Substitua:
IP_ADDRESS
: o endereço IP do endpointPORT_NUMBER
: o número da porta do endpoint
É possível repetir essa etapa para adicionar até 256 endpoints por NEG.
Criar 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 aplicativo (HTTP/HTTPS) 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 do balanceador de carga.
- Em Região, selecione REGION.
- Em Rede, selecione LB_NETWORK.
Reservar uma sub-rede somente proxy
Para reservar uma sub-rede somente proxy:
- Clique em Reservar sub-rede.
- Em Nome, insira PROXY_ONLY_SUBNET_NAME.
- Em Intervalo de endereços IP, insira PROXY_ONLY_SUBNET_RANGE.
- Clique em Adicionar.
Configuração de front-end
- Clique em Configuração de front-end.
- Digite um Nome.
- Em Sub-rede, selecione LB_SUBNET_NAME.
Para criar um balanceador de carga HTTPS, é necessário ter um certificado SSL. Recomendamos o uso de um certificado gerenciado pelo Google.
Propriedade Valor: digite um valor ou selecione uma opção conforme especificado Protocolo HTTPS Versão IP IPv4 Endereço IP Selecione o endereço IP reservado anteriormente: LB_IP_ADDRESS. Porta 443 Certificado Selecione um certificado SSL existente ou crie um novo.
Para criar um balanceador de carga HTTPS, você precisa ter um recurso de certificado SSL para usar no proxy HTTPS.
Se você quiser testar esse processo sem configurar um recurso de certificado SSL (ou um domínio conforme exigido pelos certificados gerenciados pelo Google), configure um balanceador de carga HTTP.
Para criar um balanceador de carga HTTP, verifique se as seguintes opções estão configuradas com estes valores:
Propriedade Valor: digite um valor ou selecione uma opção conforme especificado Protocolo HTTP Versão IP IPv4 Endereço IP Selecione o endereço IP reservado anteriormente: LB_IP_ADDRESS. Porta 80 Clique em Concluído.
Configuração de back-end
- Clique em Configuração de back-end.
- Clique em Serviços e buckets de back-end.
- Clique em Criar um serviço de back-end.
- Digite um nome.
- Para o tipo de back-end, selecione Grupo de endpoints da rede na Internet.
- Em Protocolo, selecione o protocolo que você pretende usar do balanceador de carga para o NEG na Internet.
- Em Back-ends, na janela Novo back-end, selecione o Grupo de endpoints de rede regional da Internet criado na etapa anterior.
- Clique em Concluído.
- Configure a verificação de integridade:
- Em Verificação de integridade, selecione Criar verificação de integridade.
- Defina o nome da verificação de integridade como HTTP_HEALTH_CHECK_NAME.
- Em Protocolo, selecione HTTP.
- Defina a Porta como
80
.
- Clique em Criar.
Revisar e finalizar
- Clique em Analisar e finalizar.
- Se estiver tudo certo, clique em Criar.
gcloud
- Opcional: crie uma verificação de integridade. As sondagens de verificação de integridade para back-ends externos usam as verificações de integridade distribuídas do Envoy e, posteriormente, são convertidas por NAT.
gcloud compute health-checks create http HTTP_HEALTH_CHECK_NAME \ --region=REGION \ --use-serving-port
- Crie um serviço de back-end:
gcloud compute backend-services create BACKEND_SERVICE \ --load-balancing-scheme=INTERNAL_MANAGED \ --protocol=HTTP \ --health-checks=HTTP_HEALTH_CHECK_NAME \ --health-checks-region=REGION \ --region=REGION
- Adicione o NEG da Internet ao serviço de back-end:
gcloud compute backend-services add-backend BACKEND_SERVICE \ --network-endpoint-group=INTERNET_NEG_NAME \ --network-endpoint-group-region=REGION \ --region=REGION
- Crie um mapa de URL para encaminhar solicitações recebidas para o
serviço de back-end :
gcloud compute url-maps create URL_MAP_NAME \ --default-service=BACKEND_SERVICE \ --region=REGION
- Opcional: execute esta etapa se você estiver usando HTTPS entre o cliente e o balanceador de carga. Ela não é necessário para balanceadores de carga HTTP.
É possível criar certificados do Compute Engine ou do Gerenciador de certificados. Use um dos métodos a seguir para criar certificados usando o Gerenciador de certificados:
- Certificados regionais autogerenciados. Para informações sobre como criar e usar certificados autogerenciados regionais, consulte Implantar um certificado autogerenciado regional. Mapas de certificados não são compatíveis.
Certificados regionais gerenciados pelo Google. Mapas de certificados não são compatíveis.
Os seguintes tipos de certificados regionais gerenciados pelo Google são aceitos pelo Gerenciador de certificados:
- Certificados regionais gerenciados pelo Google com autorização de DNS por projeto. Para mais informações, consulte Implantar um certificado regional gerenciado pelo Google.
- Certificados (particulares) regionais gerenciados pelo Google com o Certificate Authority Service. Para mais informações, consulte Implantar um certificado regional gerenciado pelo Google com o serviço de AC.
Crie um proxy de destino HTTP(S) para encaminhar solicitações ao mapa de URLs.
Para um balanceador de carga HTTP, crie um proxy de destino HTTP:
gcloud compute target-http-proxies create TARGET_HTTP_PROXY_NAME \ --url-map=URL_MAP_NAME \ --region=REGION
Para um balanceador de carga HTTPS, crie um proxy de destino HTTPS. O proxy é a parte do balanceador de carga onde é armazenado o certificado SSL para balanceamento de carga HTTPS. Portanto, nesta etapa, também é possível carregar o certificado.
gcloud compute target-https-proxies create TARGET_HTTPS_PROXY_NAME \ --ssl-certificates=SSL_CERTIFICATE_NAME \ --url-map=URL_MAP_NAME \ --region=REGION
Crie uma regra de encaminhamento para encaminhar as solicitações recebidas para o proxy.
Para um balanceador de carga HTTP:
gcloud compute forwarding-rules create HTTP_FORWARDING_RULE_NAME \ --load-balancing-scheme=INTERNAL_MANAGED \ --network-tier=PREMIUM \ --network=LB_NETWORK \ --subnet=LB_SUBNET_NAME \ --address=LB_IP_ADDRESS \ --target-http-proxy=TARGET_HTTP_PROXY_NAME \ --target-http-proxy-region=REGION \ --region=REGION \ --ports=80
Para um balanceador de carga HTTPS:
gcloud compute forwarding-rules create HTTPS_FORWARDING_RULE_NAME \ --load-balancing-scheme=INTERNAL_MANAGED \ --network-tier=PREMIUM \ --network=LB_NETWORK \ --subnet=LB_SUBNET_NAME \ --address=LB_IP_ADDRESS \ --target-https-proxy=TARGET_HTTPS_PROXY_NAME \ --target-http-proxy-region=REGION \ --region=REGION \ --ports=443
Depois de criar certificados, anexe o certificado diretamente ao proxy de destino.
Para criar um recurso de certificado SSL autogerenciado do Compute Engine:gcloud compute ssl-certificates create SSL_CERTIFICATE_NAME \ --certificate CRT_FILE_PATH \ --private-key KEY_FILE_PATH
Como conectar seu domínio ao balanceador de carga
Após a criação do balanceador de carga, anote o endereço IP associado a
ele, por exemplo, 30.90.80.100
. Para apontar seu domínio para o
balanceador de carga, crie um registro A
usando o serviço de registro de domínio. Se
você adicionou vários domínios ao certificado SSL, adicione um registro A
para cada um deles, todos apontando para o endereço IP do balanceador de carga. Por exemplo, para
criar registros 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 você usa o Cloud DNS como provedor de DNS, consulte Adicionar, modificar e excluir registros.
Testar o balanceador de carga
Agora que você configurou o balanceador de carga, é possível começar a enviar tráfego para o endereço IP dele.
Criar uma VM cliente
No exemplo, é criada uma VM de cliente (vm-client
) na mesma região do balanceador
de carga. O cliente é usado para validar a configuração
do balanceador de carga e demonstrar o comportamento esperado.
gcloud
A VM cliente pode estar em qualquer zona na mesma REGION que o balanceador de carga e usar qualquer sub-rede na mesma rede VPC.
gcloud compute instances create vm-client \ --image-family=debian-10 \ --image-project=debian-cloud \ --tags=allow-ssh \ --network=LB_NETWORK \ --subnet=LB_SUBNET_NAME \ --zone=ZONE
Enviar tráfego ao balanceador de carga
Pode levar alguns minutos para que a configuração do balanceador de carga seja propagada após sua primeira implantação.
Conectar-se à instância do cliente usando SSH.
gcloud compute ssh vm-client \ --zone=ZONE
Verifique se o balanceador de carga se conecta ao aplicativo que você está executando no back-end externo conforme o esperado.
Para fazer testes em HTTP, execute:
curl IP_ADDRESS
Para fazer testes em HTTPS, execute:
curl -k -s 'https://TEST_DOMAIN_URL:443' --connect-to TEST_DOMAIN_URL:443:IP_ADDRESS:443
Substitua TEST_DOMAIN_URL pelo domínio associado ao seu aplicativo. Por exemplo,
test.example.com
.A sinalização
-k
faz com que o curl ignore a validação do certificado.
Configurações avançadas
Nesta seção, o exemplo é detalhado para fornecer outras opções de configuração. Todas as tarefas são opcionais. É possível realizá-las em qualquer ordem.
Para ativar ainda mais funções no balanceador de carga de aplicativo interno, como acesso global (se os clientes estiverem em uma região diferente), consulte Configurar um balanceador de carga de aplicativo interno com back-ends de grupos de instâncias de VM: configuração adicional.Usar um cabeçalho personalizado para autenticar solicitações
Para autenticar solicitações enviadas ao back-end externo, defina um cabeçalho personalizado para indicar que a solicitação veio de um balanceador de carga do Google Cloud. Você também precisará configurar o back-end externo para que espere esse cabeçalho personalizado no tráfego proveniente do Google Cloud.
Para saber como configurar cabeçalhos personalizados, consulte Configurar gerenciamento de tráfego avançado.Para outros métodos de autenticação, consulte Autenticar solicitações no back-end externo.
Atualizar tempo limite do sinal de atividade HTTP do cliente
O balanceador de carga criado nas etapas anteriores foi configurado com um valor padrão para o tempo limite do sinal de atividade HTTP do cliente.Para atualizar o tempo limite do sinal de atividade HTTP do cliente, use as instruções a seguir.
Console
No Console do Google Cloud, acesse a página Balanceamento de carga.
- Clique no nome do balanceador de carga que você quer modificar.
- Clique em Editar.
- Clique em Configuração de front-end.
- Expanda Recursos avançados. Em Tempo limite de sinal de atividade HTTP, insira um valor de tempo limite.
- Clique em Atualizar.
- Para revisar as alterações, clique em Analisar e finalizar e depois em Atualizar.
gcloud
Para um balanceador de carga HTTP, atualize o proxy HTTP de destino usando o
comando gcloud compute target-http-proxies update
.
gcloud compute target-http-proxies update TARGET_HTTP_PROXY_NAME \ --http-keep-alive-timeout-sec=HTTP_KEEP_ALIVE_TIMEOUT_SEC \ --region=REGION
Para um balanceador de carga HTTPS, atualize o proxy HTTPS de destino usando o
comando gcloud compute target-https-proxies update
.
gcloud compute target-https-proxies update TARGET_HTTP_PROXY_NAME \ --http-keep-alive-timeout-sec=HTTP_KEEP_ALIVE_TIMEOUT_SEC \ --region REGION
Substitua:
TARGET_HTTP_PROXY_NAME
: o nome do proxy HTTP de destino.TARGET_HTTPS_PROXY_NAME
: o nome do proxy HTTPS de destino.HTTP_KEEP_ALIVE_TIMEOUT_SEC
: o valor do tempo limite do sinal de atividade HTTP de 5 a 600 segundos.