Como configurar um balanceador de carga HTTPS externo

Mantenha tudo organizado com as coleções Salve e categorize o conteúdo com base nas suas preferências.

O balanceamento de carga HTTP(S) externo com o Identity-Aware Proxy (IAP) é compatível com os tipos de back-end a seguir:

Neste guia de configuração, mostramos como criar um balanceador de carga HTTP(S) externo com um back-end de grupo gerenciado de instâncias do Compute Engine com o IAP ativado.

Se esse exemplo não corresponder ao caso de uso em questão, consulte uma destas páginas:

Para conceitos gerais, consulte a Visão geral do balanceamento de carga HTTP(S) externo.

Se você já é usuário do balanceador de carga HTTP(S) externo global (clássico), consulte Planejar a migração para o balanceador de carga HTTP(S) externo global ao planejar uma nova implantação com o balanceador de carga HTTP(S) externo global.

Topologias do balanceador de carga

Para um balanceador de carga HTTPS, crie a configuração mostrada no diagrama a seguir.

Balanceador de carga HTTPS com um back-end de grupo gerenciado de instâncias (MIG, na sigla em inglês).
Figura 1. Balanceador de carga HTTPS com um back-end de grupo gerenciado de instâncias (MIG) (clique para ampliar)

Para um balanceador de carga HTTP, crie a configuração mostrada no diagrama a seguir.

Balanceador de carga HTTP com um back-end de grupo gerenciado de instâncias (MIG).
Figura 2. Balanceador de carga HTTP com um back-end de grupo gerenciado de instâncias (MIG) (clique para ampliar)

A sequência de eventos nos diagramas é a seguinte:

  1. Um cliente envia uma solicitação de conteúdo para o endereço IPv4 externo definido na regra de encaminhamento.
  2. Para um balanceador de carga HTTPS, a regra de encaminhamento direciona a solicitação para o proxy HTTPS de destino.

    Para um balanceador de carga HTTP, a regra de encaminhamento direciona a solicitação para o proxy HTTP de destino.

  3. O proxy de destino usa a regra no mapa de URLs para determinar que o único serviço de back-end receba todas as solicitações.

  4. O balanceador de carga determina que o serviço de back-end tenha apenas um grupo de instâncias e direciona a solicitação para uma instância de máquina virtual (VM) nesse grupo.

  5. A VM exibe o conteúdo solicitado pelo usuário.

Antes de começar

Conclua as etapas a seguir antes de criar o balanceador de carga.

Configurar um recurso de certificado SSL

Para um balanceador de carga HTTPS, crie um recurso de certificado SSL, conforme descrito a seguir:

Recomendamos o uso de um certificado gerenciado pelo Google.

Este exemplo pressupõe que você já tenha um recurso de certificado SSL chamado www-ssl-cert.

Configurar permissões

Para concluir as etapas neste guia, é preciso ter permissão para criar instâncias do Compute Engine, regras de firewall e endereços IP reservados em um projeto. Você precisa ter um papel de proprietário ou editor do projeto ou os seguintes papéis do IAM do Compute Engine.

Tarefa Papel necessário
Criar instâncias Administrador de instâncias
Adicionar e remover regras de firewall Administrador de segurança
Criar componentes do balanceador de carga Administrador de rede
Criar um projeto (opcional) Criador do projeto

Para mais informações, consulte estes guias:

Criar um grupo gerenciado de instâncias

Para configurar um balanceador de carga com um back-end do Compute Engine, suas VMs precisam estar em um grupo de instâncias. Neste guia, descrevemos como criar um grupo de instâncias gerenciadas usando VMs do Linux com o Apache em execução para, em seguida, configurar o balanceamento. Um grupo gerenciado de instâncias cria cada uma das instâncias gerenciadas com base nos modelos de instância que você especifica.

O grupo gerenciado de instâncias fornece VMs que executam os servidores de back-end de um balanceador de carga HTTP(S) externo. Para fins de demonstração, os back-ends exibem os próprios nomes de host.

Antes de criar um grupo gerenciado de instâncias, crie um modelo de instância.

Console

  1. No Console do Google Cloud, acesse a página Modelos de instância.

    Acesse "Modelos de instância"

  2. Clique em Criar modelo de instância.

  3. Em Nome, insira lb-backend-template.

  4. Verifique se o disco de inicialização está definido como uma imagem Debian. Por exemplo, Debian GNU/Linux 10 (buster). Estas instruções usam comandos que estão disponíveis apenas no Debian, como apt-get.

  5. Não configure a opção Firewall.

    Como o balanceador de carga HTTP(S) externo é um proxy, não é necessário selecionar Permitir tráfego HTTPS ou Permitir tráfego HTTP em Firewall. Em Como configurar uma regra de firewall, crie a única regra de firewall necessária para esse balanceador de carga.

  6. Na guia Gerenciamento, insira o seguinte script no campo Script de inicialização em Gerenciamento, segurança, discos, rede, locatário único.

    #! /bin/bash
    sudo apt-get update
    sudo apt-get install apache2 -y
    sudo a2ensite default-ssl
    sudo a2enmod ssl
    vm_hostname="$(curl -H "Metadata-Flavor:Google" \
    http://169.254.169.254/computeMetadata/v1/instance/name)"
    sudo echo "Page served from: $vm_hostname" | \
    tee /var/www/html/index.html
    
  7. Na guia Rede, adicione as tags de rede: allow-health-check

  8. Clique em Criar.

gcloud

  1. Crie o modelo.

    gcloud compute instance-templates create TEMPLATE_NAME \
       --region=us-east1 \
       --network=default \
       --subnet=default \
       --tags=allow-health-check \
       --image-family=debian-10 \
       --image-project=debian-cloud \
       --metadata=startup-script='#! /bin/bash
         sudo apt-get update
         sudo apt-get install apache2 -y
         sudo a2ensite default-ssl
         sudo a2enmod ssl
         sudo vm_hostname="$(curl -H "Metadata-Flavor:Google" \
       http://169.254.169.254/computeMetadata/v1/instance/name)"
       sudo echo "Page served from: $vm_hostname" | \
       tee /var/www/html/index.html
       sudo systemctl restart apache2'
    

Terraform

Para criar o modelo de instância, use o recurso google_compute_instance_template.

resource "google_compute_instance_template" "default" {
  name = "lb-backend-template"
  disk {
    auto_delete  = true
    boot         = true
    device_name  = "persistent-disk-0"
    mode         = "READ_WRITE"
    source_image = "projects/debian-cloud/global/images/family/debian-11"
    type         = "PERSISTENT"
  }
  labels = {
    managed-by-cnrm = "true"
  }
  machine_type = "n1-standard-1"
  metadata = {
    startup-script = "#! /bin/bash\n     sudo apt-get update\n     sudo apt-get install apache2 -y\n     sudo a2ensite default-ssl\n     sudo a2enmod ssl\n     vm_hostname=\"$(curl -H \"Metadata-Flavor:Google\" \\\n   http://169.254.169.254/computeMetadata/v1/instance/name)\"\n   sudo echo \"Page served from: $vm_hostname\" | \\\n   tee /var/www/html/index.html\n   sudo systemctl restart apache2"
  }
  network_interface {
    access_config {
      network_tier = "PREMIUM"
    }
    network    = "global/networks/default"
    subnetwork = "regions/us-east1/subnetworks/default"
  }
  region = "us-east1"
  scheduling {
    automatic_restart   = true
    on_host_maintenance = "MIGRATE"
    provisioning_model  = "STANDARD"
  }
  service_account {
    email  = "default"
    scopes = ["https://www.googleapis.com/auth/devstorage.read_only", "https://www.googleapis.com/auth/logging.write", "https://www.googleapis.com/auth/monitoring.write", "https://www.googleapis.com/auth/pubsub", "https://www.googleapis.com/auth/service.management.readonly", "https://www.googleapis.com/auth/servicecontrol", "https://www.googleapis.com/auth/trace.append"]
  }
  tags = ["allow-health-check"]
}

Crie o grupo gerenciado de instâncias e selecione o modelo de instância.

Console

  1. No Console do Google Cloud, acesse a página Grupos de instâncias.

    Acessar a página "Grupos de instâncias"

  2. Clique em Criar grupo de instâncias.
  3. À esquerda, escolha Novo grupo gerenciado de instâncias (sem estado).
  4. Em Nome, insira lb-backend-example.
  5. Em Local, selecione Única zona.
  6. Em Região, selecione a região de sua preferência. O exemplo usa us-east1.
  7. Em Zona, selecione us-east1-b.
  8. Em Modelo de instância, selecione o modelo de instância lb-backend-template.
  9. Em Modo de escalonamento automático, selecione Ativado: adicionar e remover instâncias do grupo.

    Defina o Número mínimo de instâncias como 2 e o Número máximo de instâncias como 2 ou mais.

  10. Para criar o novo grupo de instâncias, clique em Criar.

gcloud

  1. Crie o grupo gerenciado de instâncias com base no modelo.

    gcloud compute instance-groups managed create lb-backend-example \
    --template=TEMPLATE_NAME --size=2 --zone=us-east1-b
    

Terraform

Para criar o grupo gerenciado de instâncias, use o recurso google_compute_instance_group_manager.

resource "google_compute_instance_group_manager" "default" {
  name = "lb-backend-example"
  zone = "us-east1-b"
  named_port {
    name = "http"
    port = 80
  }
  version {
    instance_template = google_compute_instance_template.default.id
    name              = "primary"
  }
  base_instance_name = "vm"
  target_size        = 2
}

Para saber como aplicar ou remover uma configuração do Terraform, consulte Trabalhar com uma configuração do Terraform.

Como adicionar uma porta nomeada ao grupo de instâncias

Para o grupo de instâncias, defina um serviço HTTP e associe um nome à porta relevante. O serviço de balanceamento de carga encaminha o tráfego para a porta nomeada. Para mais informações, consulte Portas nomeadas.

Console

  1. No Console do Google Cloud, acesse a página Grupos de instâncias.

    Acessar a página "Grupos de instâncias"

  2. Clique no nome do grupo de instâncias (neste exemplo, lb-backend-example).
  3. Na página Visão geral do grupo de instâncias, clique em Editar .
  4. Em Mapeamento de portas, clique em Adicionar porta.
    1. Para o nome da porta, insira http. Como número de porta, insira 80.
  5. Clique em Save.

gcloud

Use o comando gcloud compute instance-groups set-named-ports.

gcloud compute instance-groups set-named-ports lb-backend-example \
    --named-ports http:80 \
    --zone us-east1-b

Terraform

O atributo named_port está incluído na amostra de grupo de instâncias gerenciadas.

Configurar uma regra de firewall

Neste exemplo, você criará a regra de firewall fw-allow-health-check. Essa é uma regra de entrada que permite o tráfego dos sistemas de verificação de integridade do Google Cloud (130.211.0.0/22 e 35.191.0.0/16). Este exemplo usa a tag de destino allow-health-check para identificar as VMs.

Console

  1. No Console do Google Cloud, acesse a página Firewall.

    Acesse a página "Firewall"

  2. Clique em Criar regra de firewall para gerar a segunda regra.
  3. Em Nome, insira fw-allow-health-check.
  4. Em Rede, selecione Default.
  5. Em Destinos, selecione Tags de destino especificadas.
  6. Preencha o campo Tags de destino com allow-health-check.
  7. Defina Filtro de origem como Intervalos IPv4.
  8. Defina Intervalos IPv4 de origem como 130.211.0.0/22 e 35.191.0.0/16.
  9. Em Protocolos e portas, selecione Portas e protocolos especificados.
  10. Marque a caixa de seleção TCP e digite 80 para os números de porta.
  11. Clique em Criar.

gcloud

gcloud compute firewall-rules create fw-allow-health-check \
    --network=default \
    --action=allow \
    --direction=ingress \
    --source-ranges=130.211.0.0/22,35.191.0.0/16 \
    --target-tags=allow-health-check \
    --rules=tcp:80

Terraform

Para criar a regra de firewall, use o recurso google_compute_firewall.

resource "google_compute_firewall" "default" {
  name          = "fw-allow-health-check"
  direction     = "INGRESS"
  network       = "global/networks/default"
  priority      = 1000
  source_ranges = ["130.211.0.0/22", "35.191.0.0/16"]
  target_tags   = ["allow-health-check"]
  allow {
    ports    = ["80"]
    protocol = "tcp"
  }
}

Para saber como aplicar ou remover uma configuração do Terraform, consulte Trabalhar com uma configuração do Terraform.

Reservar um endereço IP externo

Agora que suas instâncias estão funcionando, configure um endereço IP externo, estático e global que seus clientes possam usar para alcançar seu balanceador de carga.

Console

  1. No console do Google Cloud, acesse a página Endereços IP externos.

    Acessar a página "Endereços IP externos"

  2. Para reservar um endereço IPv4, clique em Reservar endereço estático.
  3. Em Nome, insira lb-ipv4-1.
  4. Defina o Nível de serviço de rede como Premium.
  5. Defina Versão IP como IPv4.
  6. Configure Tipo como Global.
  7. Clique em Reservar.

gcloud

gcloud compute addresses create lb-ipv4-1 \
    --ip-version=IPV4 \
    --network-tier=PREMIUM \
    --global

Anote o endereço IPv4 que foi reservado:

gcloud compute addresses describe lb-ipv4-1 \
    --format="get(address)" \
    --global

Terraform

Para reservar o endereço IP, use o recurso google_compute_global_address.

resource "google_compute_global_address" "default" {
  name       = "lb-ipv4-1"
  ip_version = "IPV4"
}

Para saber como aplicar ou remover uma configuração do Terraform, consulte Trabalhar com uma configuração do Terraform.

Configurar o balanceador de carga

Neste exemplo, você está usando HTTP ou HTTPS entre o cliente e o balanceador de carga. Para HTTPS, você precisa de um ou mais recursos de certificado SSL para configurar o proxy. Recomendamos o uso de um certificado gerenciado pelo Google.

Mesmo se você estiver usando HTTPS no front-end, poderá usar HTTP no back-end. O Google criptografa automaticamente o tráfego entre os Google Front Ends (GFEs) e seus back-ends que residem em redes VPC do Google Cloud.

Console

Inicie a configuração
  1. No Console do Google Cloud, acesse a página Balanceamento de carga.
    Acesse o balanceamento de carga
  2. Em Balanceamento de carga HTTP(S), clique em Iniciar configuração.
  3. Em Somente voltado para a Internet ou interno, selecione Da Internet para minhas VMs.
  4. Em Global ou regional, selecione Balanceador de carga HTTP(S) global (versão clássica).
  5. Clique em Continuar.
  6. No campo Nome do balanceador de carga, insira algo como web-map-https ou web-map-http.
Configuração de back-end
  1. Clique em Configuração de back-end.
  2. Em Criar ou selecionar serviços de back-end e buckets de back-end, selecione Serviços de back-end > Criar um serviço de back-end.
  3. Adicione um nome para o serviço de back-end, como web-backend-service.
  4. Em Protocolo, selecione HTTP.
  5. Em Porta nomeada, insira http.
  6. Em Back-ends > Novo back-end > Grupo de instâncias, selecione o grupo de instâncias, lb-backend-example.
  7. Em Número da porta, insira 80.
  8. Mantenha as outras configurações padrão.
  9. Em Verificação de integridade, selecione Criar verificação de integridade e adicione um nome para ela, como http-basic-check.
  10. Opcional: configure uma política de segurança de back-end padrão. A política de segurança padrão limita o tráfego acima de um limite configurado pelo usuário. Para mais informações sobre as políticas de segurança padrão, consulte a Visão geral de limitação de taxa.

    1. Para desativar a política de segurança padrão do Google Cloud Armor, selecione None no menu da lista de políticas de segurança do back-end.
    2. Na seção Segurança, selecione Política de segurança padrão.
    3. No campo Nome da política, aceite o nome gerado automaticamente ou insira um nome para a política de segurança.
    4. No campo Contagem de solicitações, aceite a contagem de solicitações padrão ou insira um número inteiro entre 1 e 10,000.
    5. No campo Intervalo, selecione um intervalo.
    6. No campo Aplicar na chave, escolha um dos seguintes valores: Todos, Endereço IP ou Endereço IP X-Forwarded-For. Para mais informações sobre essas opções, consulte Identificar clientes para a limitação de taxa.
  11. Defina o protocolo como HTTP e clique em Salvar e continuar.
  12. Mantenha as outras configurações padrão.
  13. Clique em Criar.

Em Regras de host e caminho, mantenha as configurações padrão.

Configuração de front-end
  1. Clique em Configuração de front-end.
  2. Defina Protocolo como HTTPS ou HTTP.
  3. Defina o endereço IP como lb-ipv4-1, que você criou anteriormente.
  4. Verifique se a Porta está definida como 443 para permitir tráfego HTTPS ou 80 para tráfego HTTP.
  5. Se você selecionou HTTPS, faça o seguinte:
    1. Clique em Certificado e selecione seu certificado SSL principal.
    2. (Opcional) Para criar uma política de SSL:
      1. Na lista Política de SSL, selecione Criar uma política.
      2. Defina o nome da política de SSL como my-ssl-policy.
      3. Em Versão mínima de TLS, selecione TLS 1.0.
      4. Em Perfil, selecione Moderno. Serão exibidos Recursos ativados e Recursos desativados.
      5. Clique em Save.
      Se você não criou nenhuma política de SSL, uma política padrão de SSL do GCP será aplicada.
    3. (Opcional) Marque a caixa de seleção Ativar redirecionamento HTTP para HTTPS para permitir redirecionamentos da porta 80 para a porta 443.

      Ativar esta caixa de seleção cria outro balanceador de carga HTTP parcial que usa o mesmo endereço IP do balanceador de carga HTTPS e redireciona as solicitações HTTP recebidas para o front-end HTTPS do balanceador de carga.

      Essa caixa de seleção só poderá ser marcada quando o protocolo HTTPS estiver selecionado e um endereço IP reservado for utilizado.

  6. Clique em Concluído.
Analisar e finalizar
  1. Clique em Analisar e finalizar.
  2. Revise suas configurações do balanceador de carga.
  3. Clique em Criar.

Aguarde o balanceador de carga ser criado.

Se você tiver criado um balanceador de carga HTTPS e marcado a caixa de seleção Ativar redirecionamento HTTP para HTTPS, você também verá um balanceador de carga HTTP criado com um sufixo redirecionar.

  1. Clique no nome do balanceador de carga.
  2. Na tela Detalhes do balanceador de carga, anote o IP:Porta do balanceador de carga.

gcloud

  1. Crie uma verificação de integridade.
      gcloud compute health-checks create http http-basic-check \
          --port 80
      
  2. Crie um serviço de back-end.
      gcloud compute backend-services create web-backend-service \
          --load-balancing-scheme=EXTERNAL \
          --protocol=HTTP \
          --port-name=http \
          --health-checks=http-basic-check \
          --global
      
  3. Adicione o grupo de instâncias como o back-end ao serviço de back-end.
      gcloud compute backend-services add-backend web-backend-service \
          --instance-group=lb-backend-example \
          --instance-group-zone=us-east1-b \
          --global
      
  4. Para HTTP, crie um mapa de URLs para encaminhar as solicitações recebidas para o serviço de back-end padrão.
      gcloud compute url-maps create web-map-http \
          --default-service web-backend-service
      
  5. Para HTTPS, crie um mapa de URLs para encaminhar as solicitações recebidas para o serviço de back-end padrão.
      gcloud compute url-maps create web-map-https \
          --default-service web-backend-service
      

Como configurar um front-end HTTPS

Pule esta seção para balanceadores de carga HTTP.
  1. Para HTTPS, crie o recurso de certificado SSL global, caso ainda não tenha feito isso, conforme mostrado em:
  2. Para HTTPS, crie um proxy HTTPS de destino para encaminhar solicitações ao mapa de URL. O proxy é a parte do balanceador de carga que armazena o certificado SSL de um balanceador de carga HTTPS. Portanto, nesta etapa, também é possível carregar o certificado.
      gcloud compute target-https-proxies create https-lb-proxy \
          --url-map=web-map-https \
          --ssl-certificates=www-ssl-cert
      
  3. Para HTTPS, crie uma regra de encaminhamento global para encaminhar as solicitações recebidas para o proxy.
      gcloud compute forwarding-rules create https-content-rule \
          --load-balancing-scheme=EXTERNAL \
          --network-tier=PREMIUM \
          --address=lb-ipv4-1 \
          --global \
          --target-https-proxy=https-lb-proxy \
          --ports=443
      

Como configurar um front-end HTTP

Pule esta seção para balanceadores de carga HTTPS.

  1. Para HTTP, crie um proxy HTTP de destino para encaminhar solicitações ao mapa de URLs.
      gcloud compute target-http-proxies create http-lb-proxy \
          --url-map=web-map-http
      
  2. Para HTTP, crie uma regra de encaminhamento global para encaminhar as solicitações recebidas para o proxy.
      gcloud compute forwarding-rules create http-content-rule \
          --load-balancing-scheme=EXTERNAL \
          --address=lb-ipv4-1 \
          --global \
          --target-http-proxy=http-lb-proxy \
          --ports=80
      

Terraform

  1. Para criar a verificação de integridade, use o recurso google_compute_health_check.

    resource "google_compute_health_check" "default" {
      name               = "http-basic-check"
      check_interval_sec = 5
      healthy_threshold  = 2
      http_health_check {
        port               = 80
        port_specification = "USE_FIXED_PORT"
        proxy_header       = "NONE"
        request_path       = "/"
      }
      timeout_sec         = 5
      unhealthy_threshold = 2
    }
  2. Para criar o serviço de back-end, use o recurso google_compute_backend_service.

    Este exemplo usa load_balancing_scheme="EXTERNAL_MANAGED", que configura um balanceador de carga HTTP(S) externo global com recurso avançado de gerenciamento de tráfego. Para criar um balanceador de carga HTTP(S) externo global (clássico), altere o load_balancing_scheme para EXTERNAL antes de executar o script.

    resource "google_compute_backend_service" "default" {
      name                            = "web-backend-service"
      connection_draining_timeout_sec = 0
      health_checks                   = [google_compute_health_check.default.id]
      load_balancing_scheme           = "EXTERNAL_MANAGED"
      port_name                       = "http"
      protocol                        = "HTTP"
      session_affinity                = "NONE"
      timeout_sec                     = 30
      backend {
        group           = google_compute_instance_group_manager.default.instance_group
        balancing_mode  = "UTILIZATION"
        capacity_scaler = 1.0
      }
    }
  3. Para criar o mapa de URL, use o recurso google_compute_url_map.

    resource "google_compute_url_map" "default" {
      name            = "web-map-http"
      default_service = google_compute_backend_service.default.id
    }
  4. Para criar o proxy HTTP de destino, use o recurso google_compute_target_http_proxy.

    resource "google_compute_target_http_proxy" "default" {
      name    = "http-lb-proxy"
      url_map = google_compute_url_map.default.id
    }
  5. Para criar a regra de encaminhamento, use o recurso google_compute_global_forwarding_rule.

    Este exemplo usa load_balancing_scheme="EXTERNAL_MANAGED", que configura um balanceador de carga HTTP(S) externo global com recurso avançado de gerenciamento de tráfego. Para criar um balanceador de carga HTTP(S) externo global (clássico), altere o load_balancing_scheme para EXTERNAL antes de executar o script.

    resource "google_compute_global_forwarding_rule" "default" {
      name                  = "http-content-rule"
      ip_protocol           = "TCP"
      load_balancing_scheme = "EXTERNAL_MANAGED"
      port_range            = "80-80"
      target                = google_compute_target_http_proxy.default.id
      ip_address            = google_compute_global_address.default.id
    }

Para saber como aplicar ou remover uma configuração do Terraform, consulte Trabalhar com uma configuração do Terraform.

Ativar o IAP no balanceador de carga HTTP(S) externo

É possível configurar o IAP para ser ativado ou desativado (padrão). Se ativado, você precisa fornecer valores para oauth2-client-id e oauth2-client-secret.

Para ativar o IAP, atualize o serviço de back-end para incluir a sinalização --iap=enabled com o oauth2-client-id e oauth2-client-secret.

gcloud compute backend-services update BACKEND_SERVICE_NAME \
    --iap=enabled,oauth2-client-id=ID,oauth2-client-secret=SECRET \
    --global

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:

NAME                  TYPE     DATA
www                   A        30.90.80.100
@                     A        30.90.80.100

Se você estiver usando o Google Domains, consulte a página de Ajuda do Google Domains para ver mais informações.

Testar o tráfego enviado às suas instâncias

Agora que o serviço de balanceamento de carga está em execução, é possível enviar o tráfego para a regra de encaminhamento e observar como ele será distribuído em várias instâncias.

Console

  1. No Console do Google Cloud, acesse a página Balanceamento de carga.

    Acessar a página "Balanceamento de carga"

  2. Clique no balanceador de carga que você acabou de criar.
  3. Na seção Back-end, confirme se as VMs estão íntegras. A coluna Integridade deve estar preenchida, indicando que ambas as VMs estão íntegras (2/2). Caso contrário, primeiro tente recarregar a página. Pode levar alguns instantes para o Console do Google Cloud indicar que as VMs estão íntegras. Se os back-ends não aparecerem íntegros depois de alguns minutos, revise a configuração do firewall e a tag de rede atribuída às suas VMs de back-end.
  4. No caso de HTTPS, se você usa um certificado gerenciado pelo Google, confirme se o status do recurso do certificado é "ATIVO". Para mais informações, consulte Status do recurso de certificado SSL gerenciado pelo Google.
  5. Depois que o Console do Google Cloud mostrar que as instâncias de back-end estão íntegras, teste o balanceador de carga com um navegador da Web acessando https://IP_ADDRESS (ou http://IP_ADDRESS). Substitua IP_ADDRESS pelo endereço IP do balanceador de carga.
  6. Caso você tenha usado um certificado autoassinado durante o teste de HTTPS, o navegador exibirá um aviso. É preciso conceder permissão explícita para que seu navegador aceite um certificado autoassinado.
  7. Seu navegador deve renderizar uma página que mostre o nome da instância que a exibiu e a zona (por exemplo, Page served from: lb-backend-example-xxxx). Caso seu navegador não renderize essa página, revise as configuração mostradas neste guia.

gcloud

gcloud compute addresses describe lb-ipv4-1 \
   --format="get(address)" \
   --global

Após alguns minutos, é possível testar a configuração executando o seguinte comando curl.

curl http://IP_ADDRESS

-OU-

curl https://HOSTNAME

A seguir