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.

Desenvolvimento de aplicativos: como implantar aplicativos no Kubernetes Engine – Python

Laboratório 2 horas universal_currency_alt 5 créditos show_chart Introdutó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.

Informações gerais

O Google Kubernetes Engine oferece um ambiente gerenciado para implantação, gerenciamento e escalonamento dos aplicativos em contêiner usando a infraestrutura do Google. O ambiente do Kubernetes Engine consiste em várias máquinas (especificamente, instâncias do Google Compute Engine) agrupadas para formar um cluster.

O Kubernetes fornece os mecanismos para interagir com o cluster. Você usa os comandos e recursos do Kubernetes para implantar e gerenciar os aplicativos, executar tarefas administrativas, definir políticas e monitorar a integridade das cargas de trabalho implantadas.

Neste laboratório, você implantará o aplicativo de teste no Kubernetes Engine usando os recursos do Google Cloud Platform, como o Cloud Build e o Container Registry, além dos recursos do Kubernetes, como implantações, pods e serviços.

Objetivos

Neste laboratório, você aprenderá a realizar as seguintes tarefas:

  • Criar Dockerfiles para empacotar o código de front-end e back-end do aplicativo de teste para implantação.
  • Usar o Cloud Build para produzir imagens Docker.
  • Provisionar um cluster do Kubernetes Engine para hospedar o aplicativo de teste.
  • Usar implantações do Kubernetes para provisionar pods replicados no Kubernetes Engine.
  • Usar um serviço do Kubernetes para provisionar um balanceador de carga para o front-end de teste.

Configuração e requisitos

Para cada laboratório, você recebe um novo projeto do Google Cloud e um conjunto de recursos por um determinado período e sem custos financeiros.

  1. Faça login no Qwiklabs em uma janela anônima.

  2. Confira o tempo de acesso do laboratório (por exemplo, 1:15:00) e finalize todas as atividades nesse prazo.
    Não é possível pausar o laboratório. Você pode reiniciar o desafio, mas vai precisar refazer todas as etapas.

  3. Quando tudo estiver pronto, clique em Começar o laboratório.

  4. Anote as credenciais (Nome de usuário e Senha). É com elas que você vai fazer login no Console do Google Cloud.

  5. Clique em Abrir Console do Google.

  6. Clique em Usar outra conta, depois copie e cole as credenciais deste laboratório nos locais indicados.
    Se você usar outras credenciais, vai receber mensagens de erro ou cobranças.

  7. Aceite os termos e pule a página de recursos de recuperação.

Ative o Google Cloud Shell

O Google Cloud Shell é uma máquina virtual com 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. No console do Cloud, clique no botão "Abrir o Cloud Shell" na barra de ferramentas superior direita.

    Ícone do Cloud Shell em destaque

  2. Clique em Continuar.

O provisionamento e a conexão do ambiente podem demorar um pouco. Quando você estiver conectado, já estará autenticado, e o projeto estará definido com seu PROJECT_ID. Exemplo:

ID do projeto em destaque no terminal do Cloud Shell

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

  • Para listar o nome da conta ativa, use este comando:
gcloud auth list

Saída:

Credentialed accounts: - @.com (active)

Exemplo de saída:

Credentialed accounts: - google1623327_student@qwiklabs.net
  • Para listar o ID do projeto, use este comando:
gcloud config list project

Saída:

[core] project =

Exemplo de saída:

[core] project = qwiklabs-gcp-44776a13dea667a6 Observação: a documentação completa da gcloud está disponível no guia com informações gerais sobre a gcloud CLI .

Tarefa 1. Prepare o aplicativo de teste

Nesta seção, você acessará o Cloud Shell, clonará o repositório git que contém o aplicativo de teste, definirá as variáveis de ambiente e executará o aplicativo.

Clone o código-fonte no Cloud Shell

  1. Clone o repositório para o laboratório:
git clone https://github.com/GoogleCloudPlatform/training-data-analyst
  1. Crie um link flexível como atalho para o diretório de trabalho:
ln -s ~/training-data-analyst/courses/developingapps/v1.3/python/kubernetesengine ~/kubernetesengine

Configure o aplicativo de teste

  1. Mude para o diretório que contém os arquivos de amostra deste laboratório:
cd ~/kubernetesengine/start
  1. Configure o aplicativo de teste:
. prepare_environment.sh

Esse arquivo de script faz o seguinte:

  • Cria um aplicativo do Google App Engine.
  • Exporta as variáveis de ambiente GCLOUD_PROJECT e GCLOUD_BUCKET.
  • Cria um ambiente isolado virtualenv do Python 3 e o ativa.
  • Atualiza o pip e executa pip install -r requirements.txt.
  • Cria entidades no Google Cloud Datastore.
  • Cria um tópico do Google Cloud Pub/Sub.
  • Cria uma instância, um banco de dados e uma tabela do Cloud Spanner.
  • Imprime o ID do projeto do Google Cloud Platform.

O aplicativo de teste estará configurado quando a seguinte mensagem aparecer:

Exemplo de mensagem de saída:

Creating Cloud Pub/Sub topic Created topic [projects/qwiklabs-gcp-92b7e5716e0cbf7e/topics/feedback]. Created subscription [projects/qwiklabs-gcp-92b7e5716e0cbf7e/subscriptions/worker-subscription]. Creating Cloud Spanner Instance, Database, and Table Creating instance...done. Creating database...done. Project ID: qwiklabs-gcp-92b7e5716e0cbf7e

Tarefa 2. Revise o código

Nesta seção, você analisará os arquivos do aplicativo.

Você pode usar os editores de shell instalados no Cloud Shell, como nano ou vim, ou usar o editor de código do Cloud Shell para visualizar e editar arquivos. Este laboratório usa o editor de código do Cloud Shell.

Inicie o editor de código do Cloud Shell

  • No Cloud Shell, clique em Abrir editor para iniciar o editor de código.

Ícone "Abrir editor"

Analise o código

  • Acesse /kubernetesengine/start.

A estrutura de pastas do aplicativo de teste representa como ele será implantado no Kubernetes Engine.

O aplicativo da Web está em uma pasta chamada frontend.

O código do aplicativo do worker que se registra no Cloud Pub/Sub e processa mensagens está na pasta backend.

Você encontrará arquivos de configuração para o Docker (um Dockerfile nas pastas frontend e backend) e arquivos no formato .yaml do Kubernetes Engine chamados backend-deployment e frontend-deployment.

Tarefa 3. Crie um cluster do Kubernetes Engine e conecte-se a ele

Crie um cluster do Kubernetes Engine

  1. No console do Cloud Platform, clique em Menu de navegação > Kubernetes Engine > Clusters.

    O caminho de navegação para a opção "Clusters" é exibido

  2. Clique em Criar e depois em Configurar ao lado do modo de cluster Standard.

  3. Configure o cluster. Defina os campos a seguir com os valores fornecidos e deixe todos os demais com o valor padrão:

Propriedade

Valor

Name

quiz-cluster

Zone

us-central1-b

default-pool > Segurança > Escopos de acesso

Selecione Permitir acesso completo a todas as APIs do Cloud

  1. Clique em Criar. O provisionamento do cluster leva alguns minutos.

Conexão ao cluster

Nesta seção, você conectará o aplicativo de teste ao cluster do Kubernetes.

  1. Quando o cluster estiver pronto, clique no botão Ação (três pontos verticais) e depois em Conectar.

  2. Em Conexão ao cluster, clique em Executar no Cloud Shell.

  3. Pressione Enter no Cloud Shell para executar o comando previamente preenchido, que se parece com gcloud container clusters get-credentials quiz-cluster --zone us-central1-b --project [Project-ID]

  4. Execute o seguinte comando para listar os pods do cluster:

kubectl get pods

A resposta No resources found será exibida, já que não há pods no cluster. Isso confirma que você configurou a segurança para permitir que a ferramenta de linha de comando kubectl execute operações no cluster.

Tarefa 4. Crie imagens Docker usando o Cloud Build

Nesta seção, você criará um Dockerfile para o front-end e back-end do aplicativo e, em seguida, utilizará o Cloud Build para criar imagens e armazená-las no Container Registry.

Crie o Dockerfile para o front-end e o back-end

  1. No editor de código do Cloud Shell, abra frontend/Dockerfile. Agora você adicionará um bloco de código que:
  • insere o comando do Dockerfile para inicializar a criação de uma imagem Docker personalizada usando a imagem do App Engine para Python do Google como ponto de partida.
  • escreve os comandos do Dockerfile para ativar um ambiente virtual;
  • escreve o comando do Dockerfile para executar pip install como parte do processo de build.
  • escreve o comando do Dockerfile para adicionar conteúdo da pasta atual ao caminho /app no contêiner;
  • finaliza o Dockerfile ao inserir a declaração gunicorn ..., executada quando o contêiner é iniciado. O Gunicorn (Green Unicorn) é um servidor HTTP compatível com a especificação para Python da interface de gateway do servidor da Web (WSGI, na sigla em inglês).
  1. Copie e cole o comando a seguir no Dockerfile:
FROM gcr.io/google_appengine/python RUN virtualenv -p python3.7 /env ENV VIRTUAL_ENV /env ENV PATH /env/bin:$PATH ADD requirements.txt /app/requirements.txt RUN pip install -r /app/requirements.txt ADD . /app CMD gunicorn -b 0.0.0.0:$PORT quiz:app
  1. Abra o arquivo backend/Dockerfile. Depois copie e cole este comando:
FROM gcr.io/google_appengine/python RUN virtualenv -p python3.7 /env ENV VIRTUAL_ENV /env ENV PATH /env/bin:$PATH ADD requirements.txt /app/requirements.txt RUN pip install -r /app/requirements.txt ADD . /app CMD python -m quiz.console.worker

Crie imagens Docker com o Cloud Build

  1. No Cloud Shell, confirme que você está na pasta start:
cd ~/kubernetesengine/start
  1. Execute o comando a seguir para criar a imagem Docker de front-end:
gcloud builds submit -t gcr.io/$DEVSHELL_PROJECT_ID/quiz-frontend ./frontend/

Os arquivos são preparados no Cloud Storage, e uma imagem Docker é criada e armazenada no Container Registry. Isso pode demorar alguns minutos.

  1. Agora, execute o seguinte comando para criar a imagem Docker de back-end:
gcloud builds submit -t gcr.io/$DEVSHELL_PROJECT_ID/quiz-backend ./backend/

Quando a imagem Docker de back-end estiver pronta, estas últimas mensagens serão exibidas:

DONE ----------------------------------------------------------------------------------------------------------------------- ID CREATE_TIME DURATION SOURCE IMAGES STATUS be0326f4-3f6f-42d6-850f-547e260dd4d7 2018-06-13T22:20:16+00:00 50S gs://qwiklabs-gcp-3f89d0745056ee31_cloudbuil d/source/1528928414.79-4914d2a972f74e188f40ced135662b7d.tgz gcr.io/qwiklabs-gcp-3f89d0745056ee31/quiz-backend (+1 more ) SUCCESS
  1. No Menu de navegação do console do Cloud, clique em Container Registry. Dois pods serão exibidos: quiz-frontend e quiz-backend.

Os dois pods listados no Container Registry

  1. Clique em quiz-frontend.
Observação: o nome da imagem (um hash) e tags (mais recentes) serão exibidos.

O nome e a tag do "quiz-frontend" na página "Imagens"

Tarefa 5. Crie recursos de implantação e serviço do Kubernetes

Nesta seção, você modificará os arquivos yaml de modelo que contêm a especificação dos recursos de implantação e serviço do Kubernetes e depois criará os recursos no cluster do Kubernetes Engine.

Crie um arquivo de implantação do Kubernetes

  1. No editor de código do Cloud Shell, abra o arquivo frontend-deployment.yaml.
Observação: o esqueleto do arquivo já foi criado para você. Agora substitua os marcadores de posição pelos valores do projeto.
  1. Substitua os marcadores no arquivo frontend-deployment.yaml usando os seguintes valores:

Nome do marcador de posição

Valor

[GCLOUD_PROJECT]

ID do projeto do GCP que aparece no painel esquerdo do laboratório.
É possível inserir o comando
echo $GCLOUD_PROJECT no Cloud Shell para exibir o ID do projeto

[GCLOUD_BUCKET]

Nome do bucket do Cloud Storage para o bucket de mídia do projeto, que é "[GCLOUD_PROJECT]-media". Também é possível inserir o comando echo $GCLOUD_BUCKET no Cloud Shell para exibir o nome do bucket.

[FRONTEND_IMAGE_IDENTIFIER]

Imagem do front-end identificada no formato gcr.io/[GCLOUD_PROJECT]/quiz-frontend

Observação: a implantação do "quiz-frontend" provisiona três réplicas da imagem Docker de front-end nos pods do Kubernetes, distribuídas nos três nós do cluster do Kubernetes Engine.
  1. Salve o arquivo.
  2. Substitua os marcadores de posição no arquivo backend-deployment.yaml pelos seguintes valores:

Nome do marcador de posição

Valor

[GCLOUD_PROJECT]

ID do projeto do GCP

[GCLOUD_BUCKET]

ID do bucket do Cloud Storage para o bucket de mídia do projeto, que é [GCLOUD_PROJECT]-media

[BACKEND_IMAGE_IDENTIFIER]

Imagem de back-end identificada no formato gcr.io/[GCLOUD_PROJECT]/quiz-backend

Observação: a implantação do "quiz-backend" provisiona duas réplicas da imagem Docker de back-end nos pods do Kubernetes, distribuídas em dois dos três nós do cluster do Kubernetes Engine.
  1. Salve o arquivo.
  2. Revise o conteúdo do arquivo frontend-service.yaml.
Observação: o serviço mostra a implantação do front-end usando um balanceador de carga, que envia solicitações de clientes para as três réplicas do pod de front-end.

Execute os arquivos de implantação e serviço

  1. No Cloud Shell, provisione a implantação do front-end de teste:
kubectl create -f ./frontend-deployment.yaml
  1. Provisione a implantação do back-end de teste:
kubectl create -f ./backend-deployment.yaml
  1. Provisione o serviço do front-end de teste:
kubectl create -f ./frontend-service.yaml Observação: cada comando provisiona recursos no Kubernetes Engine. O processo leva alguns minutos para ser concluído.

Tarefa 6. Teste o aplicativo

Nesta seção, você revisará os pods e os serviços implantados e acessará o aplicativo de teste.

Revise os recursos implantados

  1. No Menu de navegação do console do Google Cloud, clique em Kubernetes Engine.
  2. Clique em Cargas de trabalho.
Observação: os dois contêineres, "quiz-frontend" e "quiz-backend", serão exibidos. Talvez apareça que o status está OK ou que está em processo de criação.
  1. Clique em quiz-frontend. Na seção Pods gerenciados, há três pods "quiz-frontend".

  2. Ao final da seção Serviços, procure a seção Endpoints, copie o endereço IP e cole-o no campo URL de uma nova guia ou janela do navegador:

O endereço IP destacado nas seções "Serviços" e "Endpoints"

  1. Essa ação abrirá o aplicativo de teste. Isso indica que você implantou o aplicativo corretamente. Você pode encerrar o laboratório aqui ou usar o restante do tempo para criar alguns testes.

Finalize o laboratório

Clique em Terminar o laboratório após a conclusão. O Google Cloud Ensina remove os recursos usados e limpa a conta por você.

Você vai poder avaliar sua experiência no laboratório. Basta selecionar o número de estrelas, digitar um comentário e clicar em Enviar.

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 Suporte.

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 empresas e produtos podem ser marcas registradas das 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

A melhor maneira de executar este laboratório é usando uma janela de navegação anônima ou privada. Isso evita conflitos entre sua conta pessoal e a conta de estudante, o que poderia causar cobranças extras na sua conta pessoal.