GSP510

Introdução
Nos laboratórios com desafio, apresentamos uma situação e um conjunto de tarefas. Para concluí-las, em vez de seguir instruções detalhadas, você usará o que aprendeu nos laboratórios do curso. Um sistema automático de pontuação (mostrado nesta página) vai avaliar seu desempenho.
Nos laboratórios com desafio, não ensinamos novos conceitos do Google Cloud. O objetivo dessas tarefas é aprimorar aquilo que você já aprendeu, como a alteração de valores padrão ou a leitura e pesquisa de mensagens para corrigir seus próprios erros.
Para alcançar a pontuação de 100%, você precisa concluir todas as tarefas no tempo definido.
Este laboratório é recomendado para estudantes que se inscreveram no curso com o selo de habilidade Gerenciar o Kubernetes no Google Cloud. Tudo pronto para começar o desafio?
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.
Cenário do desafio
Sua integração à Cymbal Shops ocorreu há apenas alguns meses. Você dedicou bastante tempo trabalhando com contêineres no Docker e no Artifact Registry, e aprendeu os conceitos básicos sobre como gerenciar implantações novas e existentes no GKE. Você já praticou a atualização de manifestos, além do escalonamento, do monitoramento e da depuração dos aplicativos que estão em execução nos seus clusters.

Sua equipe gostaria que você começasse a gerenciar as implantações no Kubernetes para garantir lançamentos e atualizações de aplicativos sem interrupções no novo site de e-commerce. Antes de você assumir essa nova função, a equipe de desenvolvimento gostaria que você demonstrasse suas novas habilidades. Como parte dessa demonstração, a equipe preparou uma lista de tarefas que gostaria que você completasse em um ambiente de sandbox durante um período de tempo determinado.
Seu desafio
Como parte do ambiente de sandbox, os desenvolvedores já criaram um repositório no Artifact Registry, chamado . Esse repositório contém um código com um aplicativo de exemplo básico que você vai implantar em um cluster.
Observação: a imagem criada no repositório corresponde a uma versão conteinerizada do código do qual você vai fazer o download posteriormente no laboratório, que é o bucket spls/gsp510/hello-app
.
Você terá as seguintes tarefas:
- Criação de um cluster do GKE com base em um conjunto de configurações fornecido.
- Ativação do Prometheus gerenciado no cluster dedicado ao monitoramento de métricas.
- Implantação de um manifesto do Kubernetes no cluster e realização da depuração dos erros.
- Criação de uma métrica com base em registros e de uma política de alertas para os erros presentes no cluster do Kubernetes.
- Correção dos erros presentes no manifesto, realização da conteinerização do código do aplicativo e envio para o Artifact Registry usando o Docker.
- Exposição de um serviço para o aplicativo no cluster e verificação das atualizações.
Tarefa 1: criar um cluster do GKE
O novo site de e-commerce da Cymbal Shops será executado de forma nativa no GKE, e a equipe gostaria de avaliar sua experiência com a criação e com a configuração de clusters. Nesta seção, você vai precisar criar um cluster do Kubernetes com base em um conjunto de configurações fornecido para executar os aplicativos de demonstração.
- Crie um cluster do GKE chamado , com a seguinte configuração:
Configuração |
Valor |
Zona |
|
Canal de lançamento |
Normal |
Versão do cluster |
1.27.8 ou versões mais recentes
|
Escalonador automático de cluster |
Ativado |
Número de nós |
3 |
Número mínimo de nós |
2 |
Número máximo de nós |
6 |
Clique em Verificar meu progresso para conferir o objetivo.
Criar um cluster do GKE
Tarefa 2: ativar o Prometheus gerenciado no cluster do GKE
Como parte da estratégia do site de e-commerce, a Cymbal Shops quer começar a usar o Prometheus gerenciado para coletar métricas e realizar o monitoramento do cluster. Isso garante uma boa experiência para os clientes. Nesta seção, você vai ativar o Prometheus gerenciado no cluster para realizar o monitoramento de métricas e criar um namespace para implantar um aplicativo de amostra do Prometheus com monitoramento de pods.
-
Ative a coleta do Prometheus gerenciado no cluster do GKE.
-
Crie um namespace no cluster chamado .
-
Faça o download de um aplicativo de amostra do Prometheus:
gsutil cp gs://spls/gsp510/prometheus-app.yaml.
-
Atualize as seções <todo>
(linhas 35 a 38) com a configuração apresentada a seguir.
-
containers.image:
nilebox/prometheus-example-app:latest
-
containers.name:
prometheus-test
-
ports.name:
metrics
-
Implante o aplicativo no namespace no cluster do GKE.
-
Faça o download do arquivo pod-monitoring.yaml
:
gsutil cp gs://spls/gsp510/pod-monitoring.yaml.
-
Atualize as seções <todo>
(linhas 18 a 24) com a seguinte configuração:
-
metadata.name:
prometheus-test
-
labels.app.kubernetes.io/name:
prometheus-test
-
matchLabels.app:
prometheus-test
-
endpoints.interval:
-
Aplique o recurso de monitoramento de pods no namespace no seu cluster do GKE.
Clique em Verificar meu progresso para conferir o objetivo.
Ativar o Prometheus gerenciado no cluster do GKE
Tarefa 3: implantar um aplicativo no cluster do GKE
A equipe de desenvolvimento da Cymbal Shops estará constantemente liberando novas versões do código do aplicativo para o cluster. Sua função é garantir que essas versões sejam implantadas com sucesso no ambiente de produção. Nesta seção, você vai implantar um manifesto do Kubernetes no cluster e investigar o problema.
- Faça o download dos arquivos do manifesto de implantação da demonstração:
gsutil cp -r gs://spls/gsp510/hello-app/.
-
Crie uma implantação no namespace no cluster do GKE usando o arquivo de manifesto helloweb-deployment.yaml
. Este arquivo está localizado na pasta hello-app/manifests
.
-
Verifique se você criou a implantação e navegue para a página de detalhes da implantação helloweb. Você deve ver o seguinte erro:

Esse erro parece ser causado por um nome de imagem inválido presente no manifesto que você acabou de implantar. Antes de corrigir o nome da imagem, crie uma métrica com base em registros e uma política de alertas para garantir que sua equipe receba notificações caso isso aconteça novamente no futuro.
Clique em Verificar meu progresso para conferir o objetivo.
Implantar um aplicativo no cluster do GKE
Tarefa 4: criar uma métrica com base em registros e uma política de alertas
A Cymbal Shops gostaria de configurar algumas métricas com base em registros e políticas de alertas para agregar o número de erros e alertas nos pods do Kubernetes. Além disso, a intenção seria criar um mecanismo de alerta para os clusters que será acionado quando uma determinada quantidade de erros ultrapassar um limite específico. Nesta seção, você vai demonstrar seus conhecimentos sobre a criação dessas métricas e políticas de alertas para a equipe.
Crie uma métrica com base em registros
- Na Análise de Registros, crie uma consulta que exponha os alertas e erros que você observou na seção anterior no cluster.
Dica: sua consulta deve ter apenas um Tipo de recurso e um Nível de severidade selecionados.
Se a consulta estiver correta, ao executá-la você verá os seguintes erros nos registros:
Error: InvalidImageName
Failed to apply default image tag "<todo>": couldn't parse image reference "<todo>": invalid reference format
- Crie uma métrica com base em registros usando essa consulta. Em Tipo de métrica, use Contador e, em Nome da métrica de registro, use
pod-image-errors
.
Crie uma política de alertas
- Crie uma política de alertas fundamentada na métrica com base em registros que você acabou de criar. Use os seguintes detalhes para configurar sua política:
-
Janela contínua:
10 min
-
Função de janela contínua:
Count
-
Agregação de série temporal:
Sum
-
Tipo de condição:
Threshold
-
Gatilho de alerta:
Any time series violates
-
Posição do limite:
Above threshold
-
Valor do limite:
0
-
Uso do canal de notificação: desativar
-
Nome da política de alertas:
Pod Error Alert
Clique em Verificar meu progresso para conferir o objetivo.
Criar uma métrica com base em registros e uma política de alertas
Tarefa 5: atualizar e implantar novamente o aplicativo
A equipe de desenvolvimento gostaria que você demonstrasse seus conhecimentos sobre como excluir e atualizar implantações no cluster em casos de erro. Nesta seção, você vai atualizar um manifesto do Kubernetes com a referência correta da imagem, excluir uma implantação e implantar o aplicativo atualizado no cluster.
-
Substitua <todo>
na seção da imagem no manifesto de implantação helloweb-deployment.yaml
pela seguinte imagem:
us-docker.pkg.dev/google-samples/containers/gke/hello-app:1.0
-
Exclua a implantação helloweb do cluster.
-
Implante o manifesto helloweb-deployment.yaml
atualizado no seu cluster no namespace .
Você deve verificar se a implantação foi realizada corretamente e sem erros. A página Cargas de Trabalho do Kubernetes deve ser semelhante a esta:

Clique em Verificar meu progresso para conferir o objetivo.
Atualizar e implantar novamente o aplicativo
Tarefa 6: transformar o código em um contêiner e fazer a implantação no cluster
Para encerrar, como parte da estratégia de e-commerce da Cymbal Shops, a equipe responsável pelos aplicativos vai fornecer um código que você precisará transformar em contêiner e armazenar em um registro. Depois sua tarefa será atualizar o cluster com a versão mais recente desse código.
Nesta seção, você vai transformar o código do aplicativo em um contêiner, atualizar uma imagem no Artifact Registry e configurar essa imagem para uso no seu cluster. Sua equipe tem um repositório no Artifact Registry chamado , que contém uma versão conteinerizada do app de exemplo hello-app
no Docker. Agora você vai atualizar o código para criação localmente e publicar uma nova versão nesse repositório.
-
No diretório hello-app
, atualize o arquivo main.go para usar a Version: 2.0.0
na linha 49.
-
Use o hello-app/Dockerfile
para criar uma imagem Docker com a tag v2
.
Observação: siga as convenções de nomenclatura do Artifact Registry, conforme os detalhes apresentados aqui.
-
Envie a imagem Docker recém-criada para o repositório no Artifact Registry usando a tag v2
.
-
Configure a imagem na implantação helloweb para refletir a imagem v2
que você enviou para o Artifact Registry.
-
Configure a exposição da implantação helloweb em um serviço do tipo LoadBalancer chamado , na porta 8080, e defina a porta de destino do contêiner de acordo com a especificação apresentada no Dockerfile.
-
Navegue até o endereço IP externo do balanceador de carga do serviço . Você deverá ver o seguinte texto retornado pelo serviço:
Hello, World!
Version: 2.0.0
Hostname: helloweb-6fc7476576-cvv5f
Observação: o carregamento da página da Web pode demorar alguns minutos.
Clique em Verificar meu progresso para conferir o objetivo.
Transformar o código em um contêiner e fazer a implantação no cluster
Parabéns!
Parabéns! Neste laboratório, você verificou suas habilidades na criação de um cluster do GKE com base em um conjunto de configurações e na ativação da coleta do Prometheus gerenciado. Você também solucionou erros em um cluster e criou uma métrica com base em registros e uma política de alertas. Além disso, atualizou os manifestos do Kubernetes para corrigir o problema. Por fim, você transformou o código do aplicativo em um contêiner e enviou uma nova versão para um repositório no Artifact Registry usando o Docker, atualizou o cluster para refletir a nova imagem e realizou a exposição de um serviço no cluster. Agora você está com tudo pronto para começar a gerenciar o Kubernetes nos seus próprios ambientes!
Conquiste seu próximo selo de habilidade
Este laboratório autoguiado faz parte da Quest com o selo de habilidade Gerenciar o Kubernetes no Google Cloud. Após a conclusão desta Quest, você conquistará o selo de habilidade acima como reconhecimento. Compartilhe essa conquista no seu currículo e nas mídias sociais usando #GoogleCloudBadge.
Essa Quest com selo de habilidade faz parte do programa de aprendizado Hybrid and Multi-Cloud Cloud Architect do Google Cloud. Se você já tiver concluído outras Quests com selo de habilidade neste programa de aprendizado, faça uma pesquisa no catálogo do Google Cloud Skills Boost para encontrar mais de 20 Quests com selo de habilidade para se inscrever.
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 pela última vez em 11 de agosto de 2023
Laboratório testado pela última vez em 11 de agosto de 2023
Copyright 2025 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.