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.

Armazenamento, processamento e gerenciamento de dados no Google Cloud: linha de comando - laboratório com desafio

Laboratório 15 minutos universal_currency_alt 1 crédito 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.

ARC102

Logotipo dos laboratórios autoguiados do Google Cloud

Visão geral

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.

Configuração

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

Você começou a trabalhar como engenheiro de nuvem júnior. Até agora, você tem ajudado as equipes na criação e no gerenciamento de recursos do Google Cloud.

Seu conhecimento precisa ser suficiente para realizar essas tarefas.

Seu desafio

Você precisa ajudar uma nova equipe de desenvolvimento com as tarefas iniciais de um projeto de armazenamento e ordenação de fotos para um grupo de organizações de vida selvagem, chamado Wild. A equipe pede para você definir as configurações iniciais do ambiente de desenvolvimento de aplicativos realizando as seguintes tarefas:

  • Use comandos para criar um bucket de armazenamento para as fotos.
  • Use comandos para criar um tópico do Pub/Sub que será usado por uma função do Cloud criada por você.
  • Use comandos para criar uma função do Cloud.

Você precisa seguir estes padrões:

  • Criar todos os recursos na zona , a menos que haja uma instrução diferente.
  • Use as VPCs do projeto.
  • Os nomes têm o formato equipe-recurso. Por exemplo, o nome de uma instância pode ser kraken-webserver1.
  • Economize recursos. Como os projetos são monitorados, o uso excessivo de recursos pode levar ao encerramento desse projeto (e talvez da sua função). Por isso, tenha cuidado. Esta é a orientação da equipe de monitoramento: a menos que haja uma instrução diferente, use e2-micro para pequenas VMs do Linux e e2-medium para Windows ou outros aplicativos, como nós do Kubernetes.

Essas tarefas são descritas em detalhes a seguir. Boa sorte!

Tarefa 1: criar um bucket

  • Use comandos (CLI/SDK) para criar um bucket chamado para armazenar as fotos.

Clique em Verificar meu progresso para conferir o objetivo. Criar um bucket com o nome

Tarefa 2: criar um tópico do Pub/Sub

  • Use a linha de comando para criar um tópico do Pub/Sub chamado para que a função do Cloud envie mensagens.

Clique em Verificar meu progresso para conferir o objetivo. Criar um tópico do Pub/Sub com o nome

Tarefa 3: criar a miniatura da função do Cloud

  1. Use a linha de comando para criar uma função do Cloud chamada que será executada sempre que um objeto for criado no bucket gerado na tarefa 1.

  2. Defina o Ponto de entrada (função a ser executada) como thumbnail. Em seguida, selecione Cloud Storage em Gatilho.

  3. Na linha 15 do index.js substitua o texto REPLACE_WITH_YOUR_TOPIC ID pelo criado na tarefa 2.

index.js:

/* globals exports, require */ //jshint strict: false //jshint esversion: 6 "use strict"; const crc32 = require("fast-crc32c"); const { Storage } = require('@google-cloud/storage'); const gcs = new Storage(); const { PubSub } = require('@google-cloud/pubsub'); const imagemagick = require("imagemagick-stream"); exports.thumbnail = (event, context) => { const fileName = event.name; const bucketName = event.bucket; const size = "64x64" const bucket = gcs.bucket(bucketName); const topicName = "REPLACE_WITH_YOUR_TOPIC ID"; const pubsub = new PubSub(); if ( fileName.search("64x64_thumbnail") == -1 ){ // doesn't have a thumbnail, get the filename extension var filename_split = fileName.split('.'); var filename_ext = filename_split[filename_split.length - 1]; var filename_without_ext = fileName.substring(0, fileName.length - filename_ext.length ); if (filename_ext.toLowerCase() == 'png' || filename_ext.toLowerCase() == 'jpg'){ // only support png and jpg at this point console.log(`Processing Original: gs://${bucketName}/${fileName}`); const gcsObject = bucket.file(fileName); let newFilename = filename_without_ext + size + '_thumbnail.' + filename_ext; let gcsNewObject = bucket.file(newFilename); let srcStream = gcsObject.createReadStream(); let dstStream = gcsNewObject.createWriteStream(); let resize = imagemagick().resize(size).quality(90); srcStream.pipe(resize).pipe(dstStream); return new Promise((resolve, reject) => { dstStream .on("error", (err) => { console.log(`Error: ${err}`); reject(err); }) .on("finish", () => { console.log(`Success: ${fileName} → ${newFilename}`); // set the content-type gcsNewObject.setMetadata( { contentType: 'image/'+ filename_ext.toLowerCase() }, function(err, apiResponse) {}); pubsub .topic(topicName) .publisher() .publish(Buffer.from(newFilename)) .then(messageId => { console.log(`Message ${messageId} published.`); }) .catch(err => { console.error('ERROR:', err); }); }); }); } else { console.log(`gs://${bucketName}/${fileName} is not an image I can handle`); } } else { console.log(`gs://${bucketName}/${fileName} already has a thumbnail`); } };

package.json:

{ "name": "thumbnails", "version": "1.0.0", "description": "Create Thumbnail of uploaded image", "scripts": { "start": "node index.js" }, "dependencies": { "@google-cloud/pubsub": "^2.0.0", "@google-cloud/storage": "^5.0.0", "fast-crc32c": "1.0.4", "imagemagick-stream": "4.1.1" }, "devDependencies": {}, "engines": { "node": ">=4.3.2" } } Observação: faça upload de uma imagem JPG ou PNG no bucket para verificar se a miniatura foi criada (depois de criar a função). Use esta imagem: https://storage.googleapis.com/cloud-training/arc102/wildlife.jpg. Baixe a imagem no seu dispositivo e envie o arquivo para o bucket. A imagem da miniatura aparece logo depois disso (use a opção ATUALIZAR em "Detalhes do bucket").

Clique em Verificar meu progresso para ver o objetivo. Verifique se a Função do Cloud funcionou

Parabéns!

Selo "Armazenamento, processamento e gerenciamento de dados no Google Cloud: linha de comando"

Conquiste seu próximo selo de habilidade

Este laboratório autoguiado faz parte do curso com selo de habilidade Armazenamento, processamento e gerenciamento de dados no Google Cloud: linha de comando. Ao concluir o curso, você ganha o selo acima como reconhecimento pela sua conquista. Compartilhe o selo no seu currículo e nas redes sociais e use #GoogleCloudBadge para anunciar sua conquista.

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 3 de junho de 2024

Laboratório testado em 3 de junho 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

Para executar este laboratório, use o modo de navegação anônima ou uma janela anônima do navegador. Isso evita conflitos entre sua conta pessoal e a conta de estudante, o que poderia causar cobranças extras na sua conta pessoal.