Como engenheiro de nuvem, seu principal objetivo é criar sistemas na nuvem tolerantes a falhas, confiáveis, altamente disponíveis e econômicos. Você quer projetar soluções autoescalonáveis que possam responder a picos de demanda e garantir que o design da arquitetura não seja provisionado em excesso, ajudando a organização a otimizar os custos. Em geral, é necessário considerar estes pontos para concluir seus designs:
- Como adicionar alta disponibilidade (HA) às suas cargas de trabalho?
- Como alocar recursos dinamicamente para atender aos requisitos de capacidade em constante mudança?
- Como é possível distribuir o tráfego entre diferentes máquinas virtuais (VMs)?
Na AWS, você criou planos de escalonamento que automatizam como grupos de diferentes recursos do Elastic Compute Cloud (EC2) respondem às mudanças na demanda. Para isso, você usou o seguinte:
- Elastic Load Balancer (ELB) para distribuir o tráfego entre vários destinos em diversas zonas de disponibilidade e realizar verificações de integridade regularmente.
- Amazon Machine Images (AMI) personalizadas que contêm o sistema operacional das suas instâncias do EC2, além de diferentes configurações e aplicativos necessários para suas operações e que podem ser usados para inicializar VMs sem instalar manualmente todos os serviços necessários.
- Modelos de inicialização do EC2 para definir os parâmetros necessários para iniciar instâncias do EC2 em grupos de escalonamento automático, como o ID da AMI, o tipo de instância, o grupo de segurança e os dados do usuário.
- Grupos de escalonamento automático para aumentar e diminuir dinamicamente a capacidade dos destinos para atender à demanda de acordo com suas próprias políticas de escalonamento, bem como substituir instâncias não íntegras e otimizar os custos.

Agora você vai conhecer os diferentes serviços do Google Cloud que ajudam a criar uma solução altamente disponível e escalonável.
Visão geral
O balanceamento de carga de aplicativo (HTTP/HTTPS) é implementado nos pontos de presença (POP, na sigla em inglês) na borda da rede do Google no mundo todo. O tráfego de usuários direcionado para um balanceador de carga de aplicativo (HTTP/HTTPS) entra no POP mais próximo ao usuário. Depois a carga balanceada é enviada pela rede global do Google para o back-end com capacidade suficiente mais próximo.
Neste laboratório, você vai configurar um balanceador de carga de aplicativo (HTTP), conforme mostrado no diagrama abaixo. Depois você realizará um teste de estresse com o balanceador de carga para demonstrar o balanceamento de carga global e o escalonamento automático.

Objetivos
Neste laboratório, você aprenderá a fazer o seguinte:
- Criar uma regra de firewall de verificação de integridade
- Criar uma configuração NAT usando o Cloud Router
- Criar uma imagem personalizada para um servidor da Web
- Criar um modelo de instância com base na imagem personalizada
- Criar dois grupos gerenciados de instâncias
- Configurar um balanceador de carga de aplicativo (HTTP) com IPv4 e IPv6
- Fazer um teste de estresse em um balanceador de carga de aplicativo (HTTP)
Para cada laboratório, você recebe um novo projeto do Google Cloud e um conjunto de recursos por um determinado período sem custo financeiro.
-
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ê vai encontrar o seguinte:
- O botão Abrir console do Google Cloud
- O tempo restante
- As credenciais temporárias que você vai usar neste laboratório
- Outras informações, se forem necessárias
-
Se você estiver usando o navegador Chrome, clique em Abrir console do Google Cloud ou clique com o botão direito do mouse e selecione Abrir link em uma janela anônima.
O laboratório ativa os recursos e depois abre a página Fazer login em outra guia.
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.
-
Se necessário, copie o Nome de usuário abaixo e cole na caixa de diálogo Fazer login.
{{{user_0.username | "Nome de usuário"}}}
Você também encontra o Nome de usuário no painel Detalhes do laboratório.
-
Clique em Seguinte.
-
Copie a Senha abaixo e cole na caixa de diálogo de boas-vindas.
{{{user_0.password | "Senha"}}}
Você também encontra a Senha no painel Detalhes do laboratório.
-
Clique em Seguinte.
Importante: você precisa usar as credenciais fornecidas no laboratório, e não as da sua conta do Google Cloud.
Observação: se você usar sua própria conta do Google Cloud neste laboratório, é possível que receba cobranças adicionais.
-
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 Google Cloud será aberto nesta guia.
Observação: clique em Menu de navegação no canto superior esquerdo para acessar uma lista de produtos e serviços do Google Cloud.
Tarefa 1: configurar uma regra de firewall de verificação de integridade
Nesta tarefa, você vai configurar uma regra de firewall para permitir o tráfego de verificação de integridade nas suas instâncias.
As verificações de integridade determinam quais instâncias de um balanceador de carga de aplicativo (HTTP) podem receber novas conexões. As sondagens de verificação de integridade para as instâncias com carga balanceada vêm de endereços nos intervalos 130.211.0.0/22 e 35.191.0.0/16. Suas regras de firewall precisam permitir essas conexões.
Crie uma regra de verificação de integridade
Crie uma regra de firewall para permitir verificações de integridade.
-
No console do Cloud, acesse o menu de navegação (
) e clique em Rede VPC > Firewall.
Observe as regras de firewall ICMP, interno, RDP e SSH.
Cada projeto do Google Cloud começa com a rede default e essas regras de firewall.
-
Clique em Criar regra de firewall.
-
Especifique os seguintes valores e não mude as configurações restantes:
Propriedade |
Valor (digite o valor ou selecione a opção conforme especificado) |
Nome |
fw-allow-health-checks |
Rede |
default |
Destinos |
Tags de destino especificadas |
Tags de destino |
allow-health-checks |
Filtro de origem |
Intervalos IPv4 |
Intervalos IPv4 de origem |
130.211.0.0/22 e 35.191.0.0/16 |
Protocolos e portas |
Portas e protocolos especificados |
Observação: inclua /22 e /16 nos Intervalos de IP de origem.
- Selecione tcp e especifique a porta 80.
- Clique em Criar.
Clique em Verificar meu progresso para conferir o objetivo.
Configure uma regra de firewall de verificação de integridade
Tarefa 2: criar uma configuração NAT usando o Cloud Router
Nesta tarefa, você vai criar uma instância do Cloud Router e configurar um gateway do Cloud NAT para ativar a conectividade de saída da Internet para suas instâncias de VM.
As instâncias de back-end da VM do Google Cloud que você configurou na tarefa 3 não terão endereços IP externos.
Em vez disso, configure o serviço Cloud NAT para permitir que essas instâncias de VM enviem tráfego de saída somente pelo Cloud NAT e recebam tráfego de entrada pelo balanceador de carga.
Crie a instância do Cloud Router
-
Na barra de título do console do Google Cloud, digite Serviços de rede no campo de pesquisa e clique em Serviços de rede na seção Ferramentas de gerenciamento de rede.
-
Na página Serviços de rede, clique em Fixar ao lado desse item.
-
Clique em Cloud NAT.
-
Selecione Comece agora para configurar um gateway do NAT.
-
Especifique os valores abaixo e não mude as outras configurações padrão:
Propriedade |
Valor (digite o valor ou selecione a opção conforme especificado) |
Nome do gateway |
nat-config |
Rede |
default |
Região |
|
-
Clique em Cloud Router e selecione Criar novo roteador.
-
Em Nome, digite nat-router-us1.
-
Clique em Criar.
-
Em Criar um gateway NAT, clique em Criar.
Observação: antes de começar a próxima tarefa, aguarde o status do gateway NAT mudar para "Em execução".
Clique em Verificar meu progresso para conferir o objetivo.
Crie uma configuração NAT com o Cloud Router
Tarefa 3: criar uma imagem personalizada para um servidor da Web
Nesta tarefa, você vai criar uma imagem personalizada de servidor da Web para o back-end do balanceador de carga.
Criar uma VM
-
No console do Cloud, acesse o menu de navegação (
) e clique em Compute Engine > Instâncias de VM.
-
Clique em Criar instância.
-
Especifique os seguintes valores e não mude as configurações restantes:
Propriedade |
Valor (digite o valor ou selecione a opção conforme especificado) |
Nome |
webserver |
Região |
|
Zona |
|
-
Clique em SO e armazenamento e selecione Mudar.
-
Clique em Mostrar configuração avançada.
-
Em Regra de exclusão, selecione Manter disco de inicialização.
-
Clique em Selecionar.
-
Clique em Rede.
- Em Tags de rede, digite allow-health-checks.
- Em Interfaces de rede, clique em padrão.
- No menu suspenso IP IPv4 externo, selecione Nenhum.
-
Clique em Concluído.
-
Clique em Criar.
Personalize a VM
- Em servidor da Web, clique em SSH para iniciar um terminal e se conectar.
- Se solicitado, permita que o SSH no navegador se conecte a VMs clicando em Autorizar.
- Para instalar o Apache2, execute os seguintes comandos:
sudo apt-get update
sudo apt-get install -y apache2
- Para iniciar o servidor Apache, execute o seguinte comando:
sudo service apache2 start
- Para testar a página padrão do servidor Apache2, execute o seguinte comando:
curl localhost
A página padrão do servidor Apache2 será exibida.
Configure o serviço Apache para abrir na inicialização
A instalação do software foi concluída. No entanto, quando uma nova VM é criada usando essa imagem, o servidor da Web Apache não entra em execução para essa nova VM. Use o seguinte comando e configure o serviço Apache para que ele seja aberto automaticamente após a inicialização. Depois, faça um teste para verificar se está tudo funcionando.
- No terminal SSH de webserver, configure o serviço para que ele seja aberto na inicialização:
sudo update-rc.d apache2 enable
-
No console do Cloud, selecione webserver e clique em Mais ações
.
-
Clique em Redefinir.
-
Na caixa de diálogo de confirmação, clique em Redefinir.
Observação: a redefinição vai interromper a máquina e começar a reinicialização dela. Ela mantém os mesmos IPs e o mesmo disco de inicialização permanente, mas a memória é apagada. Portanto, a disponibilidade do serviço Apache após a redefinição indica que o comando update-rc foi executado corretamente.
- Para verificar o servidor, conecte-se via SSH à VM e insira o seguinte comando:
sudo service apache2 status
Observação: se o pop-up Falha na conexão via Cloud Identity-Aware Proxy aparecer, clique em Tentar novamente.
- O resultado será Apache HTTP Server iniciado.
Prepare o disco para criar uma imagem personalizada
Preste atenção para que o disco de inicialização não seja excluído após a remoção da instância.
- Na página Instâncias de VM, clique em webserver para ver os detalhes da instância.
- Em Armazenamento > Disco de inicialização, verifique se a opção Ao excluir uma instância está configurada como Manter disco.
- Volte à página de instâncias de VM, selecione webserver e clique em Mais ações (
).
- Clique em Excluir.
- Na caixa de diálogo de confirmação, clique em Excluir.
- No painel à esquerda, clique em Discos e verifique se o disco webserver existe.
Crie a imagem personalizada
-
No painel à esquerda, clique em Imagens.
-
Clique em Criar imagem.
-
Especifique o seguinte e não mude as outras configurações:
Propriedade |
Valor (digite o valor ou selecione a opção conforme especificado) |
Nome |
mywebserver |
Origem |
Disco |
Disco de origem |
webserver |
-
Clique em Criar.
Observação: você criou uma imagem personalizada que pode ser usada para iniciar vários servidores da Web idênticos. Neste ponto, é possível excluir o disco webserver.
A próxima etapa consiste em usar a imagem para definir um modelo de instância que será usado nos grupos gerenciados de instâncias.
Clique em Verificar meu progresso para conferir o objetivo.
Crie uma imagem personalizada para um servidor da Web
Tarefa 4: configurar um modelo de instância e criar grupos de instâncias
Nesta tarefa, você vai configurar modelos de instâncias e criar grupos gerenciados de instâncias para seu servidor da Web com balanceamento de carga.
Um grupo gerenciado de instâncias usa um modelo para criar um grupo de instâncias idênticas. Use as instâncias para criar os back-ends do balanceador de carga de aplicativo (HTTP).
Configure o modelo de instância
Um modelo de instância é um recurso de API que pode ser usado para criar instâncias de VM e grupos gerenciados de instâncias. 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.
- No console do Cloud, acesse o menu de navegação (
), clique em Compute Engine > Modelos de instância.
- Selecione Criar modelo de instância.
- Em Nome, digite mywebserver-template.
- Em Local, selecione Global.
- Em Série, selecione E2.
- Em Tipo de máquina > Núcleo compartilhado, selecione e2-micro (2 vCPU, 1 núcleo, 1 GB de memória).
- Em Disco de inicialização, clique em Alterar.
- Clique em Imagens personalizadas, verifique se o ID do projeto do Qwiklabs está selecionado em Projeto de origem para imagens.
- Em Imagem, selecione mywebserver.
- Clique em Selecionar.
- Clique em Opções avançadas.
- Clique em Rede.
- Em Tags de rede, digite allow-health-checks.
- Em Interfaces de rede, clique em default.
- No menu suspenso IP IPv4 externo, selecione Nenhum.
- Clique em Concluído.
- Clique em Criar.
Crie uma verificação de integridade para grupos gerenciados de instâncias
-
No Menu de navegação, clique em Compute Engine > Verificações de integridade.
-
Clique em Criar verificação de integridade.
-
Especifique o seguinte e não mude as outras configurações:
Propriedade |
Valor (selecione a opção conforme especificado) |
Nome |
http-health-check |
Protocolo |
TCP |
Porta |
80 |
-
Clique em Criar.
As verificações de integridade dos grupos gerenciados de instâncias avisam você de modo proativo para excluir e recriar as instâncias com problemas.
Crie os grupos gerenciados de instâncias
Crie um grupo gerenciado de instâncias em e outro em .
-
No Menu de navegação, clique em Compute Engine > Grupos de instâncias.
-
Selecione Criar grupo de instâncias.
-
Especifique o seguinte e não mude as outras configurações:
Propriedade |
Valor (digite o valor ou selecione a opção conforme especificado) |
Nome |
us-1-mig |
Modelo de instância |
mywebserver-template |
Local |
Várias zonas |
Região |
|
-
Em Escalonamento automático, insira 1
como o número mínimo de instâncias e 2
como o número máximo.
-
Em Indicadores de escalonamento automático, clique em Uso da CPU.
-
Em Tipo de indicador, selecione Uso do balanceamento de carga HTTP.
-
Defina o Uso do balanceamento de carga HTTP de destino como 80
.
-
Clique em Concluído.
-
Selecione Período de inicialização e o defina como 60
segundos.
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. Para isso, basta definir a política de escalonamento automático, e ela vai ser aplicada pelo escalonador com base na carga avaliada.
-
Em Recuperação automática, digite http-health-check
em Verificação de integridade.
-
Selecione http-health-check (TCP)
.
-
Em Atraso inicial, digite 60
.
Esse é o tempo que o grupo de instâncias aguarda após a inicialização de uma VM, antes de executar uma verificação de integridade. Defina 1 minuto neste campo para não ter que esperar 5 minutos.
-
Clique em Criar.
-
Selecione Confirmar na janela de diálogo.
Observação: antes de repetir o mesmo procedimento para asia-1-mig em , aguarde alguns minutos para o grupo de instâncias ser criado. Depois, clique em Atualizar até o status mudar para Transformando.
Observação: se aparecer uma janela de aviso ou um ponto de exclamação vermelho à esquerda do grupo de instâncias com a mensagem Não há serviço de back-end conectado ao grupo de instâncias, ignore. O balanceador de carga será configurado com um serviço de back-end na próxima seção do laboratório.
-
Selecione Criar grupo de instâncias.
-
Especifique o seguinte e não mude as outras configurações:
Propriedade |
Valor (digite o valor ou selecione a opção conforme especificado) |
Nome |
notus-1-mig |
Modelo de instância |
mywebserver-template |
Local |
Várias zonas |
Região |
|
Escalonamento automático > Número mínimo de instâncias |
1 |
Escalonamento automático > Número máximo de instâncias |
2 |
Indicadores de escalonamento automático > Tipo de indicador |
Uso do balanceamento de carga HTTP |
Uso do balanceamento de carga HTTP de destino |
80 |
Período de inicialização |
60 |
-
Em Verificação de integridade, selecione http-health-check (TCP).
-
Em Atraso inicial, digite 60
.
-
Clique em Criar.
-
Selecione Confirmar na janela de diálogo.
Clique em Verificar meu progresso para conferir o objetivo.
Configure um modelo de instância e crie grupos de instâncias
Verifique os back-ends
Verifique se as instâncias da VM estão sendo criadas nas duas regiões.
- No Menu de navegação, clique em Compute Engine > Instâncias de VM.
Confira as instâncias que começam com us-1-mig e notus-1-mig. Elas fazem parte dos grupos de instâncias gerenciadas.
Tarefa 5: configurar o balanceador de carga de aplicativo (HTTP)
Nesta tarefa, você vai configurar o balanceador de carga de aplicativo (HTTP) para equilibrar o tráfego entre os dois back-ends (us-1-mig em e notus-1-mig em ), conforme ilustrado no diagrama de rede:

Inicie a configuração
- No Menu de navegação, clique em Serviços de rede > Balanceamento de carga.
- Selecione 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 Voltado ao público (externo) e clique em Próxima.
- Em Implantação global ou de região única, selecione Melhor para cargas de trabalho globais e clique em Próxima.
- Em Geração do balanceador de carga, selecione Balanceador de carga de aplicativo externo global e clique em Próxima.
- Em Criar balanceamento de carga, clique em Configurar.
- Em Nome do balanceador de carga, digite http-lb.
Configurar o front-end
As regras de host e caminho determinam como o tráfego será direcionado. Por exemplo, é possível direcionar o tráfego de vídeo para um back-end e o tráfego estático para outro back-end. Porém, as regras de host e de caminho não serão configuradas neste laboratório.
-
Clique em Configuração de front-end.
-
Especifique os seguintes valores e não mude as configurações restantes:
Propriedade |
Valor (digite o valor ou selecione a opção conforme especificado) |
Protocolo |
HTTP |
Versão do IP |
IPv4 |
Endereço IP |
Temporário |
Porta |
80 |
-
Clique em Concluído.
-
Selecione Adicionar IP e porta de front-end.
-
Especifique o seguinte e não mude as outras configurações:
Propriedade |
Valor (digite o valor ou selecione a opção conforme especificado) |
Protocolo |
HTTP |
Versão do IP |
IPv6 |
Endereço IP |
Alocação automática |
Porta |
80 |
-
Clique em Concluído.
O balanceamento de carga de aplicativos (HTTP/HTTPS) aceita endereços IPv4 e IPv6 para o tráfego do cliente. As solicitações IPv6 do cliente são encerradas na camada de balanceamento de carga global e, em seguida, encaminhadas por proxy via IPv4 para seus back-ends.
Configure o back-end
Os serviços de back-end direcionam o tráfego de entrada para um ou mais back-ends anexados. Cada back-end é composto de um grupo de instâncias e metadados com capacidade adicional de serviço.
-
Clique em Configuração de back-end.
-
Clique em Serviços e buckets de back-end > Criar um serviço de back-end.
-
Especifique o seguinte e não mude as outras configurações:
Propriedade |
Valor (selecione a opção conforme especificado) |
Nome |
http-backend |
Tipo de back-end |
Grupo de instâncias |
Grupo de instâncias |
us-1-mig |
Números de portas |
80 |
Modo de balanceamento |
Taxa |
RPS máximo |
50 |
Capacidade |
100 |
Observação: essa configuração significa que o balanceador de carga tenta manter cada instância de us-1-mig com até 50 solicitações por segundo (RPS).
-
Clique em Concluído.
-
Selecione Adicionar back-end.
-
Especifique o seguinte e não mude as outras configurações:
Propriedade |
Valor (selecione a opção conforme especificado) |
Grupo de instâncias |
notus-1-mig |
Números de portas |
80 |
Modo de balanceamento |
Utilização |
Utilização máxima de back-end |
80 |
Capacidade |
100 |
Observação: essa configuração significa que o balanceador de carga tenta manter cada instância de notus-1-mig com o uso da CPU em até 80%.
- Clique em Concluído.
- Em Verificação de integridade, selecione http-health-check.
- Clique na caixa de seleção Ativar geração de registros.
- Especifique a Taxa de amostragem como
1
.
- Clique em Criar.
- Clique em OK.
Analise e crie o balanceador de carga HTTP
- Clique em Analisar e finalizar.
- Confira os Serviços de back-end e Front-end.
- Clique em Criar. Aguarde o balanceador de carga ser criado.
- Clique no nome do balanceador de carga (http-lb).
- Anote os endereços IPv4 e IPv6 do balanceador de carga para usá-los na próxima tarefa. Eles aparecerão como
[LB_IP_v4]
e [LB_IP_v6]
, respectivamente.
Observação:
o endereço IPv6 está no formato hexadecimal.
Clique em Verificar meu progresso para conferir o objetivo.
Configurar o balanceador de carga de aplicativo (HTTP)
Tarefa 6: fazer um teste de estresse no balanceador de carga de aplicativo (HTTP)
Nesta tarefa, você vai fazer um teste de estresse no balanceador de carga de aplicativo (HTTP) para verificar se o tráfego está sendo encaminhado ao serviço de back-end.
Acesse o balanceador de carga HTTP
- Na barra de título do console do Google Cloud, clique em Ativar o Cloud Shell (
).
- Se for solicitado, clique em Continuar.
- Para verificar o status do balanceador de carga, execute o comando a seguir substituindo [LB_IP_v4] pelo endereço IPv4:
LB_IP=[LB_IP_v4]
while [ -z "$RESULT" ] ;
do
echo "Waiting for Load Balancer";
sleep 5;
RESULT=$(curl -m1 -s $LB_IP | grep Apache);
done
Observação: assim que o balanceador de carga estiver pronto, o comando será encerrado.
- Em uma nova guia do navegador, acesse
http://[LB_IP_v4]
. Substitua [LB_IP_v4]
pelo endereço IPv4 do balanceador de carga.
Fazer um teste de estresse no balanceador de carga de aplicativo (HTTP)
Crie uma VM para simular uma carga no balanceador de carga de aplicativo (HTTP). Depois verifique se o tráfego está balanceado entre os dois back-ends quando a carga estiver alta.
-
No console do Cloud, acesse o Menu de navegação (
) e clique em Compute Engine > Instâncias de VM.
-
Clique em Criar instância.
-
Especifique os seguintes valores e não mude as outras configurações:
Propriedade |
Valor (digite o valor ou selecione a opção conforme especificado) |
Nome |
stress-test |
Região |
Uma região diferente, mas próxima de
|
Zona |
Uma zona da região |
-
Em Série, selecione E2.
-
Em Tipo de máquina, selecione e2-micro (2 vCPUs, 1 núcleo, 1 GB de memória).
Observação: porque uma região nos EUA está mais próxima de do que notus-1, o tráfego deve ser encaminhado apenas para us-1-mig (a menos que a carga seja muito alta).
- Clique em SO e armazenamento e selecione Mudar.
- Clique em Imagens personalizadas.
- Clique em Imagens personalizadas e verifique se o ID do projeto do Qwiklabs está selecionado em Projeto de origem para imagens.
- Em Imagem, selecione mywebserver.
- Clique em Selecionar.
- Clique em Criar.
- Aguarde a criação da instância stress-test.
- Em stress-test, clique em SSH para iniciar um terminal e conectar.
- Se solicitado, permita que o SSH no navegador se conecte a VMs clicando em Autorizar.
- Crie uma variável de ambiente para o endereço IP do seu balanceador de carga executando o seguinte comando:
export LB_IP=<Enter your [LB_IP_v4] here>
- Verifique usando o comando "echo":
echo $LB_IP
- Para inserir uma carga no balanceador de carga, execute o seguinte comando:
ab -n 500000 -c 1000 http://$LB_IP/
Clique em Verificar meu progresso para conferir o objetivo.
Fazer um teste de estresse no balanceador de carga de aplicativo (HTTP)
- No Menu de navegação (
) do console do Cloud, clique em Serviços de rede > Balanceamento de carga.
- Clique em http-lb.
- Clique em Monitoring.
- Observe a coluna Local de front-end (total de tráfego de entrada) entre a América do Norte e os dois back-ends por alguns minutos.
Observação: no começo, o tráfego precisa ser direcionado apenas para us-1-mig, mas, conforme o RPS aumenta, ele também é direcionado para notus-1-mig. Isso mostra que, por padrão, o tráfego é encaminhado para o back-end mais próximo, mas, se a carga for muito alta, ele poderá ser distribuído entre os back-ends.
- No console do Cloud, acesse o Menu de navegação (
) e clique em Compute Engine > Grupos de instâncias.
- Clique em us-1-mig para abrir a página do grupo de instâncias.
- Clique em Monitoramento para controlar o número de instâncias e a capacidade do balanceador de carga.
- Repita o procedimento com o grupo de instâncias notus-1-mig.
Observação: os back-ends serão escalonados para acomodar a carga, se ela aumentar.
Tarefa 7: revisão
Neste laboratório, você configurou um balanceador de carga de aplicativo (HTTP) com back-ends em e . Depois, você fez um teste de estresse no balanceador de carga de aplicativo com uma VM para demonstrar o balanceamento de carga global e o escalonamento automático.
Na AWS, um padrão comum para uma arquitetura altamente disponível inclui:
- Grupos de escalonamento automático que estão iniciando novas instâncias do Elastic Compute Cloud (EC2), com base em verificações de integridade e políticas de escalonamento, fazendo ou reduzindo o escalonamento horizontal conforme necessário e substituindo instâncias não íntegras.
- Amazon Machine Images (AMI) e modelos de inicialização personalizados que definem os parâmetros das instâncias do EC2 iniciadas em um grupo de escalonamento automático, como:
- Sistema operacional
- Apps pré-configurados
- Tipo de instância
- Dados do usuário
- Tipo de armazenamento instalado
- Segurança
- Elastic Load Balancers (ELBs) que podem distribuir o tráfego entre grupos de destino em diferentes zonas de disponibilidade.
No Google Cloud, é possível usar estes serviços para conseguir alta disponibilidade (HA) nas suas cargas de trabalho:
- Imagens personalizadas de sistema operacional (SO) para o Compute Engine: são imagens do SO reutilizáveis que você cria usando o disco de inicialização da sua VM ou outras imagens. Elas são pré-configuradas com os apps que sua organização precisa. Essas imagens do SO podem ser usadas para iniciar novas instâncias.
- Grupo gerenciado de instâncias (MIG): é um conjunto de VMs que podem ser gerenciadas como uma única entidade e que se adaptam automaticamente à demanda, aumentando o número de instâncias no grupo. Quando os recursos não são mais necessários, os MIGs com escalonamento automático podem excluir instâncias extras para reduzir os custos.
Outro recurso dos MIGs é a capacidade de executar verificações de integridade que sinalizam proativamente para substituir instâncias com estado não íntegro.
- O balanceador de carga do Google Cloud distribui o tráfego de entrada entre várias instâncias. Isso reduz o risco de problemas de desempenho e aumenta a disponibilidade.
No Google Cloud, há dois tipos principais de balanceadores de carga:
- Internos: distribuem o tráfego para instâncias dentro do Google Cloud.
- Externos: distribuem o tráfego proveniente da Internet pública para sua rede de nuvem privada virtual (VPC) do Google Cloud.
Além disso, é possível escolher entre opções regionais ou, no caso de um balanceador de carga externo, globais.
Outro aspecto a ser considerado ao selecionar um balanceador de carga apropriado é o tipo de tráfego, por exemplo, TCP/UDP, HTTP e HTTPS ou SSL.
Finalize o laboratório
Após terminar seu laboratório, clique em End Lab. O Qwiklabs removerá os recursos usados e limpará a conta para você.
Você poderá avaliar sua experiência neste laboratório. Basta selecionar o número de estrelas, digitar um comentário e clicar em Submit.
O número de estrelas indica o seguinte:
- 1 estrela = muito insatisfeito
- 2 estrelas = insatisfeito
- 3 estrelas = neutro
- 4 estrelas = satisfeito
- 5 estrelas = muito satisfeito
Feche a caixa de diálogo se não quiser enviar feedback.
Para enviar seu feedback, fazer sugestões ou correções, use a guia Support.
Copyright 2020 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.