Instruções e requisitos de configuração do laboratório
Proteja sua conta e seu progresso. Sempre use uma janela anônima do navegador e suas credenciais para realizar este laboratório.

Escalonamento automático de grupos gerenciados de instâncias com métricas personalizadas

Laboratório 15 minutos universal_currency_alt 5 créditos show_chart Intermediário
info Este laboratório pode incorporar ferramentas de IA para ajudar no seu aprendizado.
Este conteúdo ainda não foi otimizado para dispositivos móveis.
Para aproveitar a melhor experiência, acesse nosso site em um computador desktop usando o link enviado a você por e-mail.

GSP087

Logotipo dos laboratórios autoguiados do Google Cloud

Visão geral

Usar o escalonamento automático em um grupo gerenciado de instâncias (MIG) do Compute Engine garante que seu aplicativo seja confiável e econômico ao combinar automaticamente a capacidade dele com a demanda do usuário.

Diagrama da arquitetura do laboratório

  • Se uma instância de VM falhar ou ficar em estado não íntegro, o MIG a substituirá automaticamente.
  • Durante o pico de demanda, o grupo é escalonado horizontalmente para lidar com a carga. Já em períodos de baixa demanda, o escalonamento horizontal é reduzido para economizar dinheiro em recursos de computação.
  • Ao usar uma métrica personalizada, é possível escalonar com base em fatores exclusivos da integridade interna do seu aplicativo, não apenas no uso básico da CPU.

Neste laboratório, você vai implementar um grupo gerenciado de instâncias com escalonamento automático baseado em métricas e usará o Monitoring para confirmar que seu aplicativo está gerenciando a própria capacidade.

Objetivos

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

  • Implantar um grupo gerenciado de instâncias do Compute Engine com escalonamento automático.
  • Criar uma métrica personalizada que será usada para escalonar o grupo de instâncias.
  • Observar o sistema com o Monitoring.

Configuração e requisitos

Antes de clicar no botão Começar o Laboratório

Leia estas instruções. Os laboratórios são cronometrados e não podem ser pausados. O timer é ativado quando você clica em Iniciar 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, e 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 (recomendado) ou uma janela anônima do navegador. Isso evita conflitos entre sua conta pessoal e de estudante, o que poderia causar cobranças extras na sua conta pessoal.
  • Tempo para concluir o laboratório: não se esqueça que, depois de começar, não será possível pausar o laboratório.
Observação: use apenas a conta de estudante neste laboratório. Se usar outra conta do Google Cloud, você poderá receber cobranças nela.

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 por ele, uma caixa de diálogo vai aparecer para você 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
  2. 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.
  3. Se necessário, copie o Nome de usuário abaixo e cole na caixa de diálogo Fazer login.

    {{{user_0.username | "Username"}}}

    Você também encontra o nome de usuário no painel Detalhes do Laboratório.

  4. Clique em Próxima.

  5. Copie a Senha abaixo e cole na caixa de diálogo de Olá.

    {{{user_0.password | "Password"}}}

    Você também encontra a senha no painel Detalhes do Laboratório.

  6. Clique em Próxima.

    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.
  7. 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: para acessar os produtos e serviços do Google Cloud, clique no Menu de navegação ou digite o nome do serviço ou produto no campo Pesquisar. Ícone do menu de navegação e campo de pesquisa

Ativar o Cloud Shell

O Cloud Shell é uma máquina virtual com várias ferramentas de desenvolvimento. Ele tem um diretório principal permanente de 5 GB e é executado no Google Cloud. O Cloud Shell oferece acesso de linha de comando aos recursos do Google Cloud.

  1. Clique em Ativar o Cloud Shell Ícone "Ativar o Cloud Shell" na parte de cima do console do Google Cloud.

  2. Clique nas seguintes janelas:

    • Continue na janela de informações do Cloud Shell.
    • Autorize o Cloud Shell a usar suas credenciais para fazer chamadas de APIs do Google Cloud.

Depois de se conectar, você verá que sua conta já está autenticada e que o projeto está configurado com seu Project_ID, . A saída contém uma linha que declara o projeto PROJECT_ID para esta sessão:

Your Cloud Platform project in this session is set to {{{project_0.project_id | "PROJECT_ID"}}}

A gcloud é a ferramenta de linha de comando do Google Cloud. Ela vem pré-instalada no Cloud Shell e aceita preenchimento com tabulação.

  1. (Opcional) É possível listar o nome da conta ativa usando este comando:
gcloud auth list
  1. Clique em Autorizar.

Saída:

ACTIVE: * ACCOUNT: {{{user_0.username | "ACCOUNT"}}} To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. (Opcional) É possível listar o ID do projeto usando este comando:
gcloud config list project

Saída:

[core] project = {{{project_0.project_id | "PROJECT_ID"}}} Observação: consulte a documentação completa da gcloud no Google Cloud no guia de visão geral da gcloud CLI.

Criar o aplicativo

O modelo de instância precisa de uma maneira de instalar o aplicativo e os scripts necessários em cada VM criada. O Cloud Storage funciona como uma fonte estável e acessível para o script de inicialização (startup.sh), que será executado quando uma nova instância for iniciada.

Você vai fazer uma cópia do script de inicialização e dos arquivos de aplicativo para um app de exemplo usado neste laboratório, que envia um padrão de dados para uma métrica personalizada. Depois, é possível usar essa métrica para configurar o comportamento do escalonamento automático.

Observação: um modelo de instância preexistente e um grupo criado automaticamente pelo laboratório. O escalonamento automático requer pelo menos 30 minutos para demonstrar os aumentos e reduções. Você analisará esse grupo mais tarde para conferir como o escalonamento é controlado pelas variações nos valores da métrica personalizada, gerados pelos scripts dessa métrica.

Tarefa 1: criar um bucket

  1. No console do Cloud, em Menu de navegação, selecione Cloud Storage > Buckets e clique em Criar.

  2. Dê ao bucket um nome exclusivo, mas não use um nome que você queira usar em outro projeto. Para saber como nomear um bucket, consulte as diretrizes para nomeação de buckets. Você pode usar o ID do projeto + "bucket" como o nome do bucket. Esse bucket será mencionado como YOUR_BUCKET em todo o laboratório.

  3. Aceite os valores padrão e clique em Criar.

  4. Se for solicitado, clique em Confirmar no pop-up O acesso público será impedido.

Quando o bucket for criado, a página Detalhes do bucket será aberta.

Teste a tarefa concluída

Clique em Verificar meu progresso para conferir a tarefa realizada. Se o bucket do Cloud Storage foi criado, você recebe uma pontuação de avaliação.

Crie um bucket do Cloud Storage
  1. Depois, execute o comando a seguir no Cloud Shell a fim de copiar os arquivos do script de inicialização do bucket padrão do laboratório do Cloud Storage para o bucket do Cloud Storage. Substitua <YOUR BUCKET> pelo nome do bucket que você criou:
gsutil cp -r gs://spls/gsp087/* gs://<YOUR BUCKET>
  1. Depois do upload dos scripts, clique em Atualizar na página Detalhes do bucket. Os arquivos adicionados vão aparecer listados no bucket.

Noções básicas sobre os componentes do código

  • Startup.sh: um script de shell que instala os componentes necessários em cada instância do Compute Engine assim que ela é adicionada ao grupo gerenciado de instâncias.
  • writeToCustomMetric.js: um snippet em Node.js que cria uma métrica de monitoramento personalizada com um valor que aciona o escalonamento. Em um ambiente de produção, esse seria o código real do aplicativo, e o valor informado (appdemo_queue_depth_01) seria uma métrica de negócios crítica, como o número de mensagens pendentes em uma fila, o número de conexões abertas em um banco de dados ou o tamanho de um backlog de processamento em lote.
  • Config.json: um arquivo de configuração em Node.js que especifica os valores da métrica de monitoramento personalizada e é usado em writeToCustomMetric.js.
  • Package.json: um arquivo de pacote em Node.js que especifica a instalação padrão e as dependências de writeToCustomMetric.js.
  • writeToCustomMetric.sh: um script de shell que executa continuamente o programa writeToCustomMetric.js em cada instância do Compute Engine.

Tarefa 2: criae um modelo de instância

Esse é o esquema de todas as VMs no grupo. O escalonamento automático funciona destruindo e criando instâncias, e precisa saber exatamente como recriá-las. O modelo define o tipo de máquina, a imagem do SO e, mais importante, os metadados que apontam para o script startup.sh no bucket do Cloud Storage.

  1. No console do Cloud, clique em Menu de navegação > Compute Engine > Modelos de instância.

  2. Clique em Criar modelo de instância na parte superior da página.

  3. Nomeie o modelo de instância como autoscaling-instance01.

  4. Defina o Local como Global.

  5. Role a tela para baixo e clique em Opções avançadas.

  6. Na seção Metadados da guia Gerenciamento, insira as chaves e os valores de metadados e clique no botão + Adicionar item para adicionar cada um deles. Lembre-se de substituir o marcador de posição [YOUR_BUCKET_NAME] pelo nome do bucket:

Chave Valor
startup-script-url gs://[YOUR_BUCKET_NAME]/startup.sh
gcs-bucket gs://[YOUR_BUCKET_NAME]

Página &quot;Metadados&quot;

  1. Clique em Criar.

Teste a tarefa concluída

Clique em Verificar meu progresso para conferir a tarefa realizada. Se você tiver criado um modelo de instância, verá uma pontuação de avaliação.

Crie um modelo de instância

Tarefa 3: criar o grupo de instâncias

O grupo de instâncias atua como o contêiner e o controlador da frota de VMs. O modo de escalonamento automático é definido como Desativado inicialmente para controlar o ambiente e garantir que a primeira instância esteja executando o script de métrica personalizada antes de ativar o escalonamento automático.

  1. No painel à esquerda, clique em Grupos de instâncias.

  2. Clique em Criar grupo de instâncias na parte superior da página.

  3. Nome: autoscaling-instance-group-1.

  4. Em Modelo de instância, selecione o modelo de instância que você acabou de criar.

  5. Em Local, selecione Única zona e use e , respectivamente, para a região e a zona.

  6. Defina Modo de escalonamento automático como Desativado: não fazer o escalonamento automático.

Você vai editar a configuração de escalonamento automático após a criação do grupo de instâncias. Mantenha os valores padrão das outras configurações.

  1. Clique em Criar.
Observação: é possível ignorar o aviso Autoscaling is turned off. The number of instances in the group won't change automatically. The autoscaling configuration is preserved. ao lado do grupo de instâncias.

Teste a tarefa concluída

Clique em Verificar meu progresso para conferir a tarefa realizada. Se você tiver criado um grupo de instâncias, verá uma pontuação de avaliação.

Criar um grupo de instâncias

Tarefa 4: verificar se o grupo de instâncias foi criado

Aguarde até que apareça uma marca de seleção verde ao lado do novo grupo de instâncias que você acabou de criar. O script de inicialização pode levar alguns minutos para concluir a instalação e começar a informar os valores.

Confirme se a única instância de teste está executando o script writeToCustomMetric.js e se os dados estão sendo enviados para o Cloud Monitoring. Se os dados de métricas não forem informados, o escalonador automático não terá nada para reagir. Verificar os registros da VM em busca de nodeapp: available confirma que esse pipeline de dados está operacional.

Clique em Atualizar se estiver demorando mais do que alguns minutos.

Observação: se um ícone vermelho aparecer ao lado do outro grupo de instâncias que foi pré-criado pelo laboratório, ignore o aviso. Esse é o comportamento esperado pelo grupo de instâncias, que emite um alerta por até 10 a 15 minutos durante a inicialização.
  1. Ainda na janela "Grupos de instâncias", clique no nome do grupo autoscaling-instance-group-1 para exibir as instâncias que estão em execução nele.

  2. Role para baixo e clique no nome da instância. Como o escalonamento automático não iniciou instâncias adicionais, somente uma instância está em execução.

  3. Na seção Registros da guia Detalhes, clique no link Logging a fim de exibir os registros da instância de VM.

  4. Aguarde alguns minutos para que alguns dados sejam acumulados. Ative Mostrar consulta para que resource.type e resource.labels.instance_id apareçam na caixa de visualização Consulta.

 Caixa de visualização &quot;Consulta&quot;

  1. Adicione "nodeapp" como a linha 3 para que o código seja semelhante ao seguinte:

Linha 1: resource.type=&quot;gce.instance&quot;. Linha 2: resource.labels.instance_id=&quot;4519089149916136834&quot;. Linha 3: &quot;nodeapp&quot;

  1. Clique em Executar consulta.

Se o script em Node.js estiver em execução na instância do Compute Engine, uma solicitação será enviada à API, e as entradas de registro com o texto nodeapp: available vão aparecer.

Observação: quando essa entrada de registro não é mostrada, isso significa que o script em Node.js não está relatando os valores da métrica personalizada. Verifique se os metadados foram inseridos corretamente. Se os metadados estiverem incorretos, talvez seja mais fácil reiniciar o laboratório. Pode levar cerca de 10 minutos para que o app seja iniciado.

Tarefa 6: configurar o escalonamento automático para os grupos de instâncias

Depois que você verificar se a métrica personalizada está relatando dados da primeira instância, o grupo de instâncias poderá ser configurado para ser escalonado automaticamente com base no valor da métrica personalizada.

  1. No console do Cloud, acesse Compute Engine > Grupos de instâncias.

  2. Clique no grupo autoscaling-instance-group-1.

  3. Clique em Editar.

  4. Em Escalonamento automático, defina Modo de escalonamento automático como Ativado: adicionar e remover instâncias do grupo.

  5. Defina Número mínimo de instâncias como 1 e Número máximo de instâncias como 3. Isso define os limites inferior e superior da sua garantia de custo e desempenho. Você paga por pelo menos uma instância e tem a garantia de nunca escalonar além de três instâncias, o que gerencia sua exposição a custos.

  6. Em Sinais de escalonamento automático, clique em ADICIONAR SINAL para editar a métrica. Defina os campos a seguir e deixe todos os demais com o valor padrão.

    • Tipo de sinal: Cloud Monitoring metric new. Clique em Configurar.
    • Em Recurso e métrica, clique em SELECIONAR UMA MÉTRICA e acesse Instância de VM > Métricas personalizadas > Custom/appdemo_queue_depth_01.
    • Clique em Aplicar.
    • Meta de utilização: 150

    Quando os valores das métricas de monitoramento personalizadas são maiores ou menores do que o valor da Meta, o escalonador automático faz o escalonamento do grupo gerenciado de instâncias, aumentando ou reduzindo o número de instâncias. A meta pode ter qualquer valor duplo. Neste laboratório, o valor 150 foi escolhido por corresponder aos valores relatados pela métrica de monitoramento personalizada.

    • Tipo de meta de utilização: Gauge. Clique em Selecionar.

    GAUGE: escalona com base no valor médio atual da métrica em todas as instâncias. (ex., "A profundidade média da fila é de 200, o que está acima da minha meta de 150. Portanto, preciso de outra máquina.") Isso é adequado para métricas como profundidade da fila ou uso da CPU. Por outro lado, definir Modo da meta como DELTA_PER_MINUTE ou DELTA_PER_SECOND resulta em um escalonamento automático baseado na taxa de alteração observada, e não em um valor médio.

  7. Clique em Salvar.

Observação: depois de selecionar Gauge, clique no menu suspenso novamente e selecione Gauge. Às vezes, isso força a UI a registrar o valor corretamente.

Testar a tarefa concluída

Clique em Verificar meu progresso para conferir a tarefa realizada. Se você tiver configurado o escalonamento automático para o grupo de instâncias, verá uma pontuação de avaliação.

Configurar o escalonamento automático para o grupo de instâncias

Tarefa 7: observar o escalonamento automático no grupo de instâncias

Às vezes, o script em Node.js varia os valores da métrica personalizada que ele informa de cada instância. À medida que o valor da métrica aumenta, o grupo de instâncias é escalonado verticalmente com a adição de VMs. Se o valor diminuir, o grupo de instâncias vai detectar a alteração e reduzir a escala vertical removendo VMs. O script simula uma métrica real com um valor que também pode aumentar e diminuir.

Agora observe como o grupo de instâncias é escalonado em resposta à métrica clicando na guia Monitoramento para ver o gráfico Tamanho com escalonamento automático.

  1. No painel à esquerda, clique em Grupos de instâncias.
  2. Clique no grupo de instâncias builtin-igm da lista.
  3. Clique na guia Monitoramento.
  4. Ative a Atualização automática.

Como esse grupo de instâncias teve uma vantagem, será possível conferir os detalhes do escalonamento automático desse grupo no gráfico de escalonamento automático. O escalonador automático reconhece corretamente a métrica personalizada em cerca de cinco minutos e pode levar até 10 a 15 minutos para o script gerar dados suficientes a fim de acionar o escalonamento automático.

Página com a guia &quot;Monitoramento&quot; exibindo dois gráficos de monitoramento

Passe o cursor sobre os gráficos para ver mais detalhes.

Você pode voltar ao grupo de instâncias que criou para analisar o desempenho (talvez não haja tempo suficiente no laboratório para conferir o escalonamento automático do grupo de instâncias).

Durante o restante do tempo do laboratório, você vai analisar aumentos e reduções no gráfico de escalonamento automático conforme as instâncias são adicionadas e removidas.

Tarefa 8: exemplo de escalonamento automático

Neste exemplo de escalonamento automático, confira como a capacidade e o número de instâncias com escalonamento automático podem funcionar em um ambiente maior.

O número de instâncias representadas no gráfico superior muda como resultado do nível variável de agregação dos valores de propriedade da métrica personalizada informados no gráfico inferior. Há um pequeno atraso de até cinco minutos depois que cada instância é iniciada, antes de relatar os valores da métrica personalizada. Enquanto o escalonamento automático é iniciado, confira este gráfico para entender o que vai acontecer:

Página com a guia &quot;Membros&quot; exibindo um gráfico com diversos pontos de dados

O script começa gerando valores altos por aproximadamente 15 minutos para acionar o comportamento de escalonamento vertical.

  • 11:27 O grupo de escalonamento automático começa com uma única instância. A meta da métrica personalizada agregada é 150.
  • 11:31 Os dados iniciais da métrica são adquiridos. Como a métrica é maior do que 150, o grupo de escalonamento automático inicia uma segunda instância.
  • 11:33 Os dados da métrica personalizada da segunda instância começam a ser adquiridos. A meta agregada agora é 300. Como o valor da métrica está acima de 300, o grupo de escalonamento automático inicia a terceira instância.
  • 11:37 Os dados da métrica personalizada da terceira instância começam a ser adquiridos. A meta agregada agora é 450. Como o valor da métrica cumulativa está acima de 450, o grupo de escalonamento automático inicia a quarta instância.
  • 11:42 Os dados da métrica personalizada da quarta instância começam a ser adquiridos. A meta agregada agora é 600. O valor da métrica cumulativa agora está acima de 600, o novo nível da meta. Porém, como o limite de tamanho do grupo de escalonamento automático foi atingido, não haverá nenhum escalonamento vertical adicional.
  • 11:44 O script do aplicativo mudou para um período de métrica baixo de 15 minutos. Embora o valor da métrica cumulativa esteja abaixo da meta de 600, é necessário aguardar dez minutos para a redução integrada antes de fazer alterações.
  • 11:54 Os dados da métrica personalizada agora estão abaixo de 600, o nível da meta agregada, por mais de 10 minutos para um cluster de quatro nós. A redução removerá duas instâncias em rápida sucessão.
  • 11:56 Os dados da métrica personalizada dos nós removidos são eliminados do cálculo de escalonamento automático, e a meta agregada é reduzida para 300.
  • 12:00 O script do aplicativo voltou para um período de métrica alto de 15 minutos. O valor da métrica personalizada cumulativa ultrapassou novamente o nível da meta agregada de 300. Portanto, o grupo de escalonamento automático inicia uma terceira instância.
  • 12:03 Os dados da métrica personalizada da nova instância foram adquiridos, mas os valores cumulativos informados permanecem abaixo da meta de 450. Portanto, o escalonamento automático não faz alterações.
  • 12:04 Os valores cumulativos da métrica personalizada ultrapassam a meta de 450, portanto, o escalonamento automático inicia a quarta instância.

Parabéns!

Parabéns! Neste laboratório, você criou um grupo gerenciado de instâncias do Compute Engine em que o escalonamento automático ocorre com base no valor de uma métrica personalizada do Cloud Monitoring. Você também aprendeu a usar o console do Cloud para exibir a métrica personalizada e o tamanho do grupo de instâncias.

Próximas etapas/Saiba mais

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 23 de outubro de 2025

Laboratório testado em 25 de julho de 2024

Copyright 2026 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.

Antes de começar

  1. Os laboratórios criam um projeto e recursos do Google Cloud por um período fixo
  2. Os laboratórios têm um limite de tempo e não têm o recurso de pausa. Se você encerrar o laboratório, vai precisar recomeçar do início.
  3. No canto superior esquerdo da tela, clique em Começar o laboratório

Usar a navegação anônima

  1. Copie o nome de usuário e a senha fornecidos para o laboratório
  2. Clique em Abrir console no modo anônimo

Fazer login no console

  1. Faça login usando suas credenciais do laboratório. Usar outras credenciais pode causar erros ou gerar cobranças.
  2. Aceite os termos e pule a página de recursos de recuperação
  3. Não clique em Terminar o laboratório a menos que você tenha concluído ou queira recomeçar, porque isso vai apagar seu trabalho e remover o projeto

Este conteúdo não está disponível no momento

Você vai receber uma notificação por e-mail quando ele estiver disponível

Ótimo!

Vamos entrar em contato por e-mail se ele ficar disponível

Um laboratório por vez

Confirme para encerrar todos os laboratórios atuais e iniciar este

Use a navegação anônima para executar o laboratório

Using an Incognito or private browser window is the best way to run this lab. This prevents any conflicts between your personal account and the Student account, which may cause extra charges incurred to your personal account.