arrow_back

Crie um balanceador de carga interno

Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

Crie um balanceador de carga interno

Lab 50 minutos universal_currency_alt 5 créditos show_chart Intermediário
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

GSP216

Laboratórios autoguiados do Google Cloud

Visão geral

O Google Cloud oferece balanceamento de carga interno para o tráfego baseado em TCP/UDP. Com ele, é possível executar e escalonar os serviços por trás de um endereço IP particular de balanceamento de carga, acessível somente por instâncias internas de máquina virtual.

Neste laboratório, você vai criar dois grupos gerenciados de instâncias na mesma região. Depois, você vai configurar e testar um balanceador de carga interno com os grupos de instâncias como back-ends, conforme exibido neste diagrama de rede:

Network_Diagram.png

Objetivos

Neste laboratório, você aprenderá a fazer o seguinte:

  • Criar regras de firewall de HTTP e verificação de integridade
  • Configurar dois modelos de instâncias
  • Criar dois grupos gerenciados de instâncias
  • Configurar e testar um balanceador de carga interno

Configuração e requisitos

Antes de clicar no botão Start Lab

Leia estas instruções. Os laboratórios são cronometrados e não podem ser pausados. O timer é iniciado quando você clica em Começar o laboratório e mostra por quanto tempo os recursos do Google Cloud vão ficar disponíveis.

Este laboratório prático permite que você realize as atividades em um ambiente real de nuvem, não em uma simulação ou demonstração. Você vai receber novas credenciais temporárias para fazer login e acessar o Google Cloud durante o laboratório.

Confira os requisitos para concluir o laboratório:

  • Acesso a um navegador de Internet padrão (recomendamos o Chrome).
Observação: para executar este laboratório, use o modo de navegação anônima ou uma janela anônima do navegador. Isso evita conflitos entre sua conta pessoal e a conta de estudante, o que poderia causar cobranças extras na sua conta pessoal.
  • Tempo para concluir o laboratório---não se esqueça: depois de começar, não será possível pausar o laboratório.
Observação: não use seu projeto ou conta do Google Cloud neste laboratório para evitar cobranças extras na sua conta.

Como iniciar seu laboratório e fazer login no console do Google Cloud

  1. Clique no botão Começar o laboratório. Se for preciso pagar, você verá um pop-up para selecionar a forma de pagamento. No painel Detalhes do laboratório à esquerda, você verá o seguinte:

    • O botão Abrir Console do Cloud
    • Tempo restante
    • As credenciais temporárias que você vai usar neste laboratório
    • Outras informações se forem necessárias
  2. Clique em Abrir Console do Google. O laboratório ativa recursos e depois abre outra guia com a página Fazer login.

    Dica: coloque as guias em janelas separadas lado a lado.

    Observação: se aparecer a caixa de diálogo Escolher uma conta, clique em Usar outra conta.
  3. Caso seja preciso, copie o Nome de usuário no painel Detalhes do laboratório e cole esse nome na caixa de diálogo Fazer login. Clique em Avançar.

  4. Copie a Senha no painel Detalhes do laboratório e a cole na caixa de diálogo Olá. Clique em Avançar.

    Importante: você precisa usar as credenciais do painel à esquerda. Não use suas credenciais do Google Cloud Ensina. Observação: se você usar sua própria conta do Google Cloud neste laboratório, é possível que receba cobranças adicionais.
  5. Acesse as próximas páginas:

    • Aceite os Termos e Condições.
    • Não adicione opções de recuperação nem autenticação de dois fatores (porque essa é uma conta temporária).
    • Não se inscreva em testes gratuitos.

Depois de alguns instantes, o console do GCP vai ser aberto nesta guia.

Observação: para ver uma lista dos produtos e serviços do Google Cloud, clique no Menu de navegação no canto superior esquerdo. Ícone do menu de navegação

Tarefa 1. Configure regras de firewall de verificação de integridade e HTTP.

Defina regras de firewall para permitir o tráfego HTTP para os back-ends e o tráfego TCP do verificador de integridade do Google Cloud.

Acessar a rede my-internal-app

A rede my-internal-app, com as sub-redes subnet-a e subnet-b, e as regras de firewall de tráfego RDP, SSH e ICMP foram configuradas para você.

  1. No console, acesse Menu de navegação > Rede VPC > Redes VPC.

  2. Role para baixo até encontrar my-internal-app com estas sub-redes: subnet-a e subnet-b.

    Todo projeto do Google Cloud começa com a rede default. Além disso, a rede my-internal-app foi criada para você, como parte do seu diagrama de rede.

    Você vai criar os grupos gerenciados de instâncias nas sub-redes subnet-a e subnet-b. Elas estão na região porque o balanceador de carga interno é um serviço regional. Os grupos gerenciados de instâncias vão ficar em zonas diferentes, tornando o serviço imune a falhas relacionadas à zona.

Crie a regra de firewall HTTP

Crie uma regra de firewall para permitir que o tráfego HTTP do balanceador de carga e da Internet chegue aos back-ends (para instalar o Apache neles).

  1. Ainda na Rede VPC, clique em Firewall no painel à esquerda.

  2. Encontre as regras de firewall app-allow-icmp e app-allow-ssh-rdp.

    Elas foram criadas para você.

  3. Clique em Criar regra de firewall.

  4. Defina os valores a seguir e mantenha os demais como padrão:

    Propriedade Valor (digite o valor ou selecione a opção conforme especificado)
    Nome app-allow-http
    Rede my-internal-app
    Destinos Tags de destino especificadas
    Tags de destino lb-backend
    Filtro de origem Intervalos IPv4
    Intervalos IPv4 de origem 0.0.0.0/0
    Protocolos e portas Em "Portas e protocolos especificados", marque tcp e digite: 80
Observação: inclua /0 nos intervalos IPv4 de origem para especificar todas as redes.
  1. Clique em Criar.

Criar as regras de firewall de verificação de integridade

As verificações de integridade determinam quais instâncias de um balanceador de carga podem receber novas conexões. No balanceamento de carga interno, as sondagens de verificação de integridade para as instâncias com carga balanceada são provenientes de endereços nos intervalos entre 130.211.0.0/22 e 35.191.0.0/16. Suas regras de firewall precisam permitir essas conexões.

  1. Ainda na página Regras de firewall, clique em Criar regra de firewall.

  2. Defina os seguintes valores e mantenha o restante como padrão:

    Propriedade Valor (digite o valor ou selecione a opção conforme especificado)
    Nome app-allow-health-check
    Destinos Tags de destino especificadas
    Tags de destino lb-backend
    Filtro de origem Intervalos IPv4
    Intervalos IPv4 de origem 130.211.0.0/22 e 35.191.0.0/16
    Protocolos e portas Em "Portas e protocolos especificados", marque tcp.
Observação: insira os dois intervalos IPv4 de origem um de cada vez e adicione um espaço entre eles.
  1. Clique em Criar.

Clique em "Verificar meu progresso" para conferir o objetivo.

Configure regras de firewall de verificação de integridade e HTTP

Tarefa 2. Configure os modelos e crie grupos de instâncias

Um grupo gerenciado de instâncias usa um modelo para criar um grupo de instâncias idênticas. Use-os para criar os back-ends do balanceador de carga interno.

Configurar os modelos de instâncias

Um modelo de instância é um recurso da API que pode ser usado para criar instâncias de VMs e grupos gerenciados. Esses modelos definem o tipo de máquina, a imagem do disco de inicialização, as sub-redes, os rótulos e outras propriedades da instância. Crie um modelo de instância para as duas sub-redes da rede my-internal-app.

  1. No console, acesse Menu de navegação > Compute Engine > Modelos de instância.

  2. Clique em Criar modelo de instância.

  3. Em Nome, digite instance-template-1.

  4. Em Série, selecione E2.

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

  6. Clique em Rede.

  7. Em Tags de rede, especifique lb-backend.

    Observação: a tag de rede lb-backend garante que as regras de firewall HTTP e Verificação de integridade sejam aplicadas a essas instâncias.
  8. Em Interfaces de rede, clique no ícone de menu suspenso para editar.

  9. Defina os seguintes valores e mantenha o restante como padrão:

    Propriedade Valor (digite o valor ou selecione a opção conforme especificado)
    Rede my-internal-app
    Sub-rede subnet-a
  10. Clique em Concluir.

  11. Clique em Gerenciamento.

  12. Em Metadados, selecione Adicionar item e especifique o seguinte:

    Chave 1 Valor 1
    startup-script-url gs://cloud-training/gcpnet/ilb/startup.sh
Observação: startup-script-url especifica um script que vai ser executado quando as instâncias forem iniciadas. Esse script instala o Apache e altera a página de boas-vindas para incluir o IP do cliente e o nome, a região e a zona da instância de VM. Se quiser, analise o script.
  1. Clique em Criar.
  2. Aguarde a criação do modelo de instância.

Configure o próximo modelo de instância

Crie outro modelo de instância para subnet-b. Para isso, copie instance-template-1:

  1. Ainda nos Modelos de instância, marque a caixa ao lado de instance-template-1 e depois clique em Copiar. Você verá que o nome da instância nova é instance-template-2.
  2. Clique em Opções avançadas.
  3. Clique na guia Rede.
  4. Em Interfaces de rede, clique no ícone de menu suspenso para editar.
  5. Selecione subnet-b como a Sub-rede.
  6. Clique em Concluído e depois em Criar.

Crie os grupos gerenciados de instâncias

Crie um grupo gerenciado de instâncias na sub-rede subnet-a e outro em subnet-b.

Observação: identifique uma das outras zonas da mesma região como subnet-a. Por exemplo, se a zona da sub-rede subnet-a é us-west2-a, é possível selecionar us-west2-b para subnet-b.
  1. Ainda no Compute Engine, no painel esquerdo, clique em Grupos de instâncias e em Criar grupo de instâncias.

  2. Defina os seguintes valores e mantenha o restante como padrão:

    Propriedade Valor (digite o valor ou selecione a opção conforme especificado)
    Nome instance-group-1
    Modelo de instância instance-template-1
    Local Única zona
    Região
    Zona
    Escalonamento automático > Número mínimo de instâncias 1
    Escalonamento automático > Número máximo de instâncias 5
    Escalonamento automático > Indicadores de escalonamento automático (clique no ícone de menu suspenso para editar) > Tipo de indicador Utilização de CPU
    Uso pretendido de CPU 80
    Período de inicialização 45
Observação: os grupos gerenciados de instâncias têm recursos de escalonamento automático para você adicionar ou remover instâncias de um grupo automaticamente com base nos aumentos ou nas reduções da carga. O escalonamento automático reduz o custo quando a necessidade de recursos é menor e ajuda a lidar com aumentos de tráfego de maneira prática. Você só precisa definir a política de escalonamento automático, e ela vai ser aplicada pelo escalonador com base na carga avaliada.
  1. Clique em Criar.

    Repita o mesmo procedimento com instance-group-2 em uma zona diferente na mesma região que subnet-a:

  2. Clique em Criar grupo de instâncias.

  3. Defina os seguintes valores e mantenha o restante como padrão:

    Propriedade Valor (digite o valor ou selecione a opção conforme especificado)
    Nome instance-group-2
    Modelo de instância instance-template-2
    Local Única zona
    Região
    Zona Zona (use uma zona diferente na mesma região que subnet-a)
    Escalonamento automático > Número mínimo de instâncias 1
    Escalonamento automático > Número máximo de instâncias 5
    Escalonamento automático > Indicadores de escalonamento automático (clique no ícone de menu suspenso para editar) > Tipo de indicador Utilização de CPU
    Uso pretendido de CPU 80
    Período de inicialização 45
  4. Clique em Criar.

Verificar os back-ends

Verifique se as instâncias de VM estão sendo criadas nas duas sub-redes e crie uma VM utilitária para acessar os sites HTTP dos back-ends.

  1. Ainda no Compute Engine, clique em Instâncias de VM.

  2. Encontre as duas instâncias que começam com instance-group-1 e instance-group-2.

    Essas instâncias estão em zonas separadas e os endereços IP internos delas fazem parte dos blocos CIDR da subnet-a e da subnet-b.

  3. Clique em Criar instância.

  4. Defina os valores a seguir e mantenha os demais como padrão:

    Propriedade Valor (digite o valor ou selecione a opção conforme especificado)
    Nome utility-vm
    Região
    Zona
    Série E2
    Tipo de máquina Núcleo compartilhado > e2-micro (1 vCPU compartilhada)
  5. Clique em Opções avançadas.

  6. Clique em Rede.

  7. Em Interfaces de rede, clique no ícone de menu suspenso para editar.

  8. Defina os seguintes valores e mantenha o restante como padrão:

    Propriedade Valor (digite o valor ou selecione a opção conforme especificado)
    Rede my-internal-app
    Sub-rede subnet-a
    Endereço IPv4 interno principal Temporário (personalizado)
    Endereço IP temporário e personalizado 10.10.20.50
  9. Clique em Concluído e depois em Criar.

Clique em "Verificar meu progresso" para conferir o objetivo.

Configure modelos e crie grupos de instâncias
  1. Os endereços IP internos dos back-ends são 10.10.20.2 e 10.10.30.2.
Observação: se os endereços IP forem diferentes, substitua-os nos dois comandos curl abaixo.
  1. Em utility-vm, clique em SSH para iniciar um terminal e se conectar.
  2. Para verificar a página de boas-vindas de instance-group-1-xxxx, execute este comando:
curl 10.10.20.2

O resultado vai ser parecido com este:

<h1>Internal Load Balancing Lab</h1><h2>Client IP</h2>Your IP address : 10.10.20.50<h2>Hostname</h2>Server Hostname: instance-group-1-1zn8<h2>Server Location</h2>Region and Zone: us-central1-a
  1. Para verificar a página de boas-vindas de instance-group-2-xxxx, execute este comando:
curl 10.10.30.2

O resultado vai ser parecido com este:

<h1>Internal Load Balancing Lab</h1><h2>Client IP</h2>Your IP address : 10.10.20.50<h2>Hostname</h2>Server Hostname: instance-group-2-q5wp<h2>Server Location</h2>Region and Zone: us-central1-b

Observação: os comandos curl mostram que cada instância de VM lista o IP do cliente, além do nome e da localização dele. Isso vai ser útil ao verificar se o balanceador de carga interno envia o tráfego para os dois back-ends.
  1. Feche o terminal SSH para utility-vm:
exit

Tarefa 3. Configure o balanceador de carga interno

Configure o balanceador de carga interno para equilibrar o tráfego entre os dois back-ends (instance-group-1 e instance-group-2), conforme o diagrama abaixo:

Diagrama de rede mostrando o balanceamento interno do tráfego entre dois back-ends

Iniciar a configuração

  1. No console do Cloud, selecione Menu de navegação > Serviços de rede > Balanceamento de carga e clique em Criar balanceador de carga.
  2. Em Balanceador de carga de rede (TCP/SSL), clique em Iniciar configuração.
  3. Em Para a Internet ou somente interno, selecione Apenas entre minhas VMs.
Observação: ao escolher a opção Apenas entre minhas VMs, o balanceador de carga se tornará interno. Essa escolha exige que os back-ends estejam em uma região única e não permite que o processamento TCP seja transferido para o balanceador de carga.
  1. Clique em Continuar.
  2. Em Nome, digite my-ilb.
  3. Em Região, selecione .
  4. Em Rede, selecione my-internal-app.

Configurar o serviço de back-end regional

O serviço de back-end monitora grupos de instâncias e os impede de exceder o uso configurado.

  1. Clique em Configuração de back-end.

  2. Defina os seguintes valores e mantenha o restante como padrão:

    Propriedade Valor (selecione a opção conforme especificado)
    Grupo de instâncias instance-group-1
  3. Clique em Adicionar back-end.

  4. Em Grupo de instâncias, selecione instance-group-2.

  5. Em Verificação de integridade, selecione Criar verificação de integridade.

  6. Defina os valores a seguir e mantenha os demais como padrão:

    Propriedade Valor (selecione a opção conforme especificado)
    Nome my-ilb-health-check
    Protocolo TCP
    Porta 80
Observação: as verificações de integridade determinam quais instâncias podem receber novas conexões. A verificação de integridade HTTP sonda instâncias a cada 5 segundos e espera por uma resposta por até 5 segundos. A instância será considerada íntegra se responder duas vezes ou não íntegra se deixar de responder duas vezes.
  1. Clique em Salvar.
  2. Verifique se há uma marca de seleção azul ao lado de Configuração de back-end no console do Cloud. Se não houver, verifique se você concluiu todas as etapas acima.

Configurar o front-end

O front-end encaminha o tráfego ao back-end.

  1. Clique em Configuração de front-end.

  2. Especifique o seguinte e não altere os outros valores:

    Propriedade Valor (digite o valor ou selecione a opção conforme especificado)
    Sub-rede subnet-b
    IP interno Em Endereço IP, selecione Criar endereço IP.
  3. Especifique o seguinte e não altere os outros valores:

    Propriedade Valor (digite o valor ou selecione a opção conforme especificado)
    Nome my-ilb-ip
    Endereço IP estático Quero escolher
    Endereço IP personalizado 10.10.30.5
  4. Clique em Reservar.

  5. Em Número da porta, insira 80.

  6. Clique em Concluído.

Analise e crie o balanceador de carga interno

  1. Clique em Analisar e finalizar.

  2. Analise o Back-end e o Front-end.

  3. Clique em Criar. Antes de passar para a próxima tarefa, aguarde a criação do balanceador de carga.

Clique em "Verificar meu progresso" para conferir o objetivo.

Configure o balanceador de carga interno

Tarefa 4. Teste o balanceador de carga interno

Verifique se o endereço IP my-ilb está encaminhando o tráfego para instance-group-1 e instance-group-2.

Acesse o balanceador de carga interno

  1. No console do Cloud, acesse Menu de navegação > Compute Engine > Instâncias de VM.
  2. Em utility-vm, clique em SSH para iniciar um terminal e se conectar.
  3. Para verificar se o balanceador de carga interno encaminha o tráfego, execute o seguinte comando:
curl 10.10.30.5

O resultado vai ser parecido com este:

<h1>Internal Load Balancing Lab</h1><h2>Client IP</h2>Your IP address : 10.10.20.50<h2>Hostname</h2>Server Hostname: instance-group-1-1zn8<h2>Server Location</h2>Region and Zone: us-central1-a Observação: conforme esperado, o tráfego é encaminhado do balanceador de carga interno (10.10.30.5) para o back-end.
  1. Execute o mesmo comando mais algumas vezes.

Na saída, as respostas de instance-group-1 vão aparecer em e instance-group-2 na outra zona da mesma região.

Parabéns!

Neste laboratório, você criou dois grupos gerenciados de instâncias na região , além de regras de firewall que permitem o tráfego HTTP para essas instâncias e o tráfego TCP do verificador de integridade do Google Cloud. Depois, você configurou e testou um balanceador de carga interno para os grupos de instâncias.

Próximas etapas / Saiba mais

Confira os conceitos básicos do balanceamento de carga na documentação do Google Cloud Load Balancing.

Treinamento e certificação do Google Cloud

Esses treinamentos ajudam você a aproveitar as tecnologias do Google Cloud ao máximo. Nossas aulas incluem habilidades técnicas e práticas recomendadas para ajudar você a alcançar rapidamente o nível esperado e continuar sua jornada de aprendizado. Oferecemos treinamentos que vão do nível básico ao avançado, com opções de aulas virtuais, sob demanda e por meio de transmissões ao vivo para que você possa encaixá-las na correria do seu dia a dia. As certificações validam sua experiência e comprovam suas habilidades com as tecnologias do Google Cloud.

Manual atualizado em 2 de fevereiro de 2024

Laboratório testado em 20 de novembro de 2023

Copyright 2024 Google LLC. Todos os direitos reservados. Google e o logotipo do Google são marcas registradas da Google LLC. Todos os outros nomes de produtos e empresas podem ser marcas registradas das respectivas empresas a que estão associados.