
Before you begin
- Labs create a Google Cloud project and resources for a fixed time
- Labs have a time limit and no pause feature. If you end the lab, you'll have to restart from the beginning.
- On the top left of your screen, click Start lab to begin
O Google Kubernetes Engine oferece um ambiente gerenciado para implantação, gerenciamento e escalonamento dos aplicativos em contêineres usando a infraestrutura do Google. O ambiente do Kubernetes Engine é composto por várias máquinas (instâncias do Google Compute Engine) agrupadas para formar um cluster.
O Kubernetes contém os mecanismos necessários para interagir com o cluster. Use os comandos e recursos do Kubernetes para implantar e gerenciar os aplicativos, executar tarefas administrativas e definir políticas, além de monitorar a integridade das cargas de trabalho implantadas.
Durante o laboratório, você vai 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.
Neste laboratório, você aprenderá a realizar as seguintes tarefas:
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.
Faça login no Qwiklabs em uma janela anônima.
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.
Quando tudo estiver pronto, clique em Começar o laboratório.
Anote as credenciais (Nome de usuário e Senha). É com elas que você vai fazer login no Console do Google Cloud.
Clique em Abrir Console do Google.
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.
Aceite os termos e pule a página de recursos de recuperação.
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.
No console do Cloud, clique no botão "Abrir o Cloud Shell" na barra de ferramentas superior direita.
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:
A gcloud é a ferramenta de linha de comando do Google Cloud. Ela vem pré-instalada no Cloud Shell e aceita preenchimento com tabulação.
Saída:
Exemplo de saída:
Saída:
Exemplo de saída:
Nesta seção, você irá clonar o repositório Git que contém o aplicativo de teste, configurar as variáveis de ambiente e executar o aplicativo.
GCLOUD_PROJECT
e GCLOUD_BUCKET
;mvn clean install
Agora revise e atualize o código do aplicativo de teste em um editor de código. Use o editor de código do Cloud Shell ou os editores de shell instalados no Cloud Shell, como nano
ou vim
. O laboratório usa o editor de código do Cloud Shell.
training-data-analyst/courses/developingapps/v1.3/java/kubernetesengine/start
.A estrutura de pastas do aplicativo de teste agora reflete como ele é implantado no Kubernetes Engine.
frontend
: contém a saída empacotada para o aplicativo da Web.backend
: contém a saída empacotada para o aplicativo do console.Dockerfile
nas pastas frontend
e backend
: arquivos de configuração do Docker. Por enquanto, vazio.*.yaml
: arquivo de configuração do Kubernetes Engine.No Cloud Shell, volte para o terminal e use o seguinte comando para copiar a saída jar
do aplicativo de frontend para a pasta frontend
:
Configure o aplicativo de back-end do teste:
Copie o jar de saída do aplicativo de back-end na pasta backend
:
Nesta seção, você vai criar um cluster do Google Kubernetes Engine para hospedar o aplicativo de teste.
No Console, clique em Menu de navegação > Kubernetes Engine > Clusters.
Em seguida, clique em Criar.
Selecione Configurar para o GKE Standard.
Para configurar o cluster, use os valores especificados para as propriedades listadas na tabela a seguir. Mantenha os valores padrão para as propriedades não listadas:
Em Noções básicas sobre clusters:
Propriedade | Valor |
---|---|
Name | quiz-cluster |
Zone | us-central1-b |
Expanda default-pool.
Em Segurança selecione Permitir acesso completo a todas as APIs do Cloud.
Clique em Criar. O provisionamento do cluster levará alguns minutos.
Quando o cluster estiver pronto, clique nos três pontos verticais e selecione Connect.
Em Connect to the cluster, copie o primeiro comando para a área de transferência.
Clique em OK para fechar a janela "Conectar ao cluster".
O comando está no seguinte formato: gcloud container clusters get-credentials quiz-cluster --zone us-central1-b --project <Project-ID>
.
Copie o comando no Cloud Shell e pressione Enter.
Ou clique em Executar no Cloud Shell e, em seguida, pressione Enter.
Liste os pods no cluster.
A resposta deve indicar que não há pods no cluster.
Ela confirma que você configurou a segurança para que a ferramenta de linha de comando kubectl
execute operações no cluster.
Nesta seção, você vai criar um Dockerfile para o front-end e back-end do aplicativo e usar o Cloud Build para criar imagens e armazená-las no Container Registry.
No editor de código do Cloud Shell, em Abrir editor, abra frontend/Dockerfile
.
Copie e cole o seguinte conteúdo em frontend/Dockerfile
:
Ele é composto por uma série de comandos do Dockerfile.
O primeiro comando, FROM gcr.io/google_appengine/jetty9
, inicializa a criação de uma imagem do Docker personalizada usando a imagem do Google App Engine Jetty 9, gcr.io/google_appengine/jetty9
, como ponto de partida.
O segundo comando, VOLUME /tmp
, cria um volume no sistema de arquivos do contêiner com o caminho /tmp
.
O terceiro comando, ADD ./quiz-frontend-0.0.1.jar /app.jar
, adiciona o arquivo Jar, uiz-frontend-0.0.1.jar
para o front-end gerado pelo processo de empacotamento do Maven como parte do processo de build.
O quarto e último comando, CMD java -jar /app.jar
, é executado quando o contêiner é iniciado.
O dockerfile para o back-end é criado da mesma maneira que o front-end, porém o arquivo jar
é adicionado ao back-end.
No editor de código do Cloud Shell, abra o backend/Dockerfile
.
Copie e cole o seguinte conteúdo em backend/Dockerfile
:
No Cloud Shell, em Abrir terminal, insira o seguinte comando para criar a imagem Docker de front-end:
Os arquivos são armazenados no Cloud Storage e uma imagem do Docker é criada e armazenada no Container Registry. Isso levará alguns segundos.
Crie a imagem de back-end do Docker:
No Console, clique em Menu de navegação > Container Registry. Duas pastas aparecerão: quiz-frontend e quiz-backend.
Clique em quiz-frontend. Serão exibidos o nome (um hash), as tags (mais recentes) e outros detalhes da imagem.
Nesta seção, você vai modificar os arquivos de modelo yaml
, que contêm a especificação dos recursos de implantação e serviço do Kubernetes, e criar os recursos no cluster do Kubernetes Engine.
No editor de código, abra o arquivo frontend-deployment.yaml
. A estrutura do arquivo já foi criada para você. Agora substitua os marcadores pelos valores do projeto.
Substitua os marcadores no arquivo frontend-deployment.yaml
usando os seguintes valores:
Marcador (Nome) | Valor |
---|---|
[GCLOUD_PROJECT] | ID do projeto do GCP (exiba o ID do projeto digitando echo $GCLOUD_PROJECT no Cloud Shell) |
[GCLOUD_BUCKET] | ID do bucket do Cloud Storage para o bucket de mídia do projeto O ID do bucket é [GCP_Project_ID]-media . |
[FRONTEND_IMAGE_IDENTIFIER] |
Imagem do front-end identificada no formulário gcr.io/[GCP_Project_ID]/quiz-frontend
|
Substitua apenas os valores que estão entre []
.
O arquivo yaml resultante parece com o seguinte:
A implantação do front-end de teste provisiona três réplicas da imagem de front-end do Docker nos pods do Kubernetes, distribuídas nos três nós do cluster do Kubernetes Engine.
Salve o arquivo.
Abra o arquivo backend-deployment.yaml
e substitua os marcadores no arquivo backend-deployment.yaml
usando os seguintes valores:
Marcador (Nome) | Valor |
---|---|
[GCLOUD_PROJECT] | ID do projeto do GCP (ou use echo $GCLOUD_PROJECT ) |
[GCLOUD_BUCKET] | ID do bucket do Cloud Storage para o bucket de mídia do projeto Este será o mesmo bucket usado em frontend-deployment.yaml (O ID do bucket é [GCP_Project_ID]-media .) |
[BACKEND_IMAGE_IDENTIFIER] |
Imagem de back-end identificada no formulário gcr.io/[GCP_Project_ID]/quiz-backend
|
A implantação do quiz-backend provisiona uma réplica da imagem de back-end do Docker nos pods do Kubernetes, posicionada em um dos três nós do cluster do Kubernetes Engine.
Salve o arquivo.
Revise o conteúdo do arquivo frontend-service.yaml
.
No Cloud Shell, provisione a implantação do front-end de teste:
Provisione a implantação do back-end de teste:
Provisione o serviço do front-end de teste:
Cada comando provisiona recursos no Kubernetes Engine. Este processo levará alguns minutos para ser concluído.
Nesta seção, revise os pods e os serviços implantados e navegue até o aplicativo de teste.
No Console, clique em Menu de navegação > Kubernetes Engine > Cargas de trabalho. Você verá dois itens: quiz-frontend
e quiz-backend
.
O status do pod poderá aparecer como OK ou em processo de criação.
Clique em quiz-frontend para acessar as informações gerais do quiz-frontend
.
Role para baixo até encontrar Pods gerenciados.
O status do balanceador de carga quiz-frontend poderá aparecer como OK ou em processo de criação. Aguarde até que o serviço esteja OK antes de continuar. Você verá um endpoint do endereço IP quando o serviço estiver pronto.
Em Como expor serviços, em Endpoints, selecione o endereço IP e abra em uma nova guia do navegador.
Faça um teste para verificar se o aplicativo funciona conforme o esperado.
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:
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 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.
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
One lab at a time
Confirm to end all existing labs and start this one