Boas-vindas ao curso de Associate Cloud Engineer parte 4: A certificação do Google Cloud da Alura. Eu sou o Ricardo Merces e serei seu instrutor. Nesta parte 4 do nosso curso, vamos aprender algumas tecnologias do uso do Servles dentro da nuvem do Google Cloud, por exemplo, o App Engine, Cloud Functions.
Vamos estudar também Kubernetes, que é amplamente utilizada, e vamos rever alguns pontos importantes, questões de segurança, e alguns itens a mais na parte de storage.
Então, faça o login no Console e vamos continuar nossos estudos.
Os links que o instrutor acessou neste vídeo são os seguintes: https://cloud.google.com/appengine/docs/the-appengine-environments e https://cloud.google.com/appengine/docs.
Para fecharmos a parte dos serviços de computação que estão dentro desse mesmo guarda-chuva, nós esatudamos a parte das máquinas virtuais e fizemos muitas atividades, estudamos os conceitos, e trabalhamos com a parte de computação.
Na sequência, nós vamos estudar o App Engine, vamos ver o Kubernetes e também o Cloud Functions. Então, vamos começar.
Só uma recordação rápida, eu sei que nós já estudamos bastante, mas só alguns pontos que vale lembrar. Na parte das VMs, lembrar que nós temos máquinas pré-definidas, nós podemos customizar como que é a máquina – mais, menos processador; mais, menos memória.
Discos persistentes que nós usamos durante todo o curso. Na hora de instalar, nós fizemos a instalação da pasta e tudo mais dentro de um disco persistente. Eu tenho a opção de ter, anexada às minhas VMs, a parte de GPU, ou seja, eu tenho máquinas virtuais focadas com a questão de aceleração gráfica, que é a GPU.
As máquinas suportam Linux e o Windows, e também aqui o tipo de cobrança é feito por segundo. Só para rever aqui os pontos da parte de computação e vamos agora para o App Engine.
“Ricardo, qual é a ideia, como é que funciona isso?”, a ideia do App Engine é prover uma plataforma – e a ideia é sempre a questão do serviço – onde nós não nos preocuparemos com o hardware que está abrigando a nossa aplicação.
Então, o Google vai providenciar todo esse hardware para nós colocarmos a nossa aplicação, e esse hardware que ele vai providenciar tem algumas características. Então, vamos lá.
Esse ambiente, esse hardware todo ele chama lá do ambiente flexível e esse ambiente “standard”. No ambiente flexível, ele vai usar as VMs que nós já estudamos, todo aquele ambiente, vai fazer até o autoscaling dela, ele vai dimensionar essa infraestrutura para nós.
Enquanto nesse “standard”, o Google utilizar containers, na verdade, nós vamos rodar em instâncias, vamos rodar isso em containers. Essa é a diferença. Os containers são pré-configurados para os diversos trabalhos que nós vamos poder colocar lá dentro.
Então, a ideia do App Engine é para nós focarmos na aplicação e deixarmos lá no hardware por conta do Google. Tem essas duas características, ambiente flexível e o ambiente “standard”.
Vamos olhar rapidamente os ambientes. Então, nesse link que eu deixei – logicamente aquele nosso combinado da documentação você já sabe bem –, mas esse em especial vai mostrar as diferenças entre um e outro em tópicos macro para a tua leitura não ser cansativa, vai falar dos suportes às linguagens e caraterísticas de cada um.
Comparando os serviços, por exemplo, coisas interessantes, no “Standard” a máquina sobe em segundos; no flexível, já pode demorar um pouco mais. E está aqui o de/para de cada um, é legal você dar uma lida.
Até para quem tem aplicação rodando no “Standard” e quer migrar para um modelo flexível, ele faz uma referência. Não podemos esquecer também, ”app engine documentation”, aquela documentação oficial.
E nessa oficial, olha que legal, ele já separa bem. Vamos pegar o “Standard” sobre o “Standard”. Como nós dissemos lá, baseado em containers e tudo mais, os ambientes suportados, as classes de instância.
Porque você já sabe que no “Stardard”, ele vai usar o Compute Engine por baixo, que são as VMs, e os tipos das instâncias, aquela nossa, olha aquela da promoção, a “F1” e tudo mais.
Também no flexível, é interessante ler com calma as linguagens suportadas, inclusive versão e as caraterísticas. Não deixe de dar uma lida nesse documento.
Para juntar isso tudo, esses itens todos, nós já vamos fazer uma atividade agora usando o ambiente flexível do App Engine. Próximo vídeo eu volto e nós começamos a estruturar essa nossa aplicação.
O link que o instrutor acessou neste vídeo é o seguinte: https://github.com/GoogleCloudPlatform/python-docs-samples.
Então, para começarmos esse laboratório do App Engine, vamos pegar do GitHub, até do próprio Google, ele já tem uns samples bem legais para nós utilizarmos.
Eu vou deixar o link, mas está aqui também https://github.com/GoogleCloudPlatform/python-docs-samples, e logicamente tem samples em várias linguagens diferentes. Vamos pegar esse do Python que eu queria te mostrar.
Temos exemplos para cada serviço, não todos, mas uma boa parte deles, tem vários exemplos bem interessantes, e isso serve também para fazer os estudos. Lembra do curso, dos laboratórios e esses outros tutoriais que vai te dar uma facilidade, uma interação maior com a ferramenta.
Então, é o “python-docs-sample” que eu quero pegar, vou copiar o link que aparece em “Code”, abrir o meu Terminal e do Terminal eu vou lá no meu diretório Downloads
. Para não “fazer bagunça”, eu vou jogar para dentro.
Eu vou fazer um git clone
do meu repositório. Então, estou buscando lá o repositório, eu sei que isso não tem mistério nenhum, e desse repositório vamos ver o que ele colocou aqui para nós.
Então, cd python-docs-samples/appengine/
, quero te mostrar o flexible standard standard_python3
. Eu quero o flexível, flexible
.
Temos algumas referências, e, dentro dessas referências, o hello_world
. Deixa eu limpar a tela aqui, eu estou exatamente em appengine/flexible/hello_world
, para você não se perder.
Temos o projeto já formatado. Então, eu vou pegar esse conteúdo e criar um diretório para nós trabalharmos. Vou lá no meu home e vou criar o app-flex
. Criei esse diretório lá para nós organizarmos.
Agora pego com o cp *
e jogo para ~/app-flex/
. Agora o conteúdo está no diretório.
Então, é com esse conteúdo que vamos trabalhar. “Ricardo, eu quero usar lá o diretório default”, não tem problema nenhum, é só uma forma de organizar, eu gosto de separar por projeto, mas você pode ficar à vontade.
Vamos entender alguns detalhes importantes. No ambiente flexível, nós sabemos que ele vai fazer todo o gerenciamento. Como é que isso funciona? Vamos olhar esse yaml
e a própria aplicação.
Começando na aplicação. Vou dar um more main.py
. É uma aplicação em Python simples, ele vai subir um Flask
, vai criar uma página lá. Na primeira chamada aqui, no raiz, ele retorna lá ’Hello World!’
, ok, é isso, não tem nenhum mistério aqui nessa aplicação.
Está rodando 127.0.0.01
, port=8080P
, o que quer dizer isso? Que ele vai rodar localmente. “Mas Ricardo, nós vamos fazer isso na nuvem? Como isso foi configurado?”, vamos ver como o App Engine vai tratar isso daqui.
Eu vou pegar exatamente essa referência daqui, ok. E a outra referência, nós podemos dar um more
no app
, nesse yaml
. “E Ricardo, o que ele faz?”
Olha só, essas tags na hora que nós vamos criar lá a aplicação é que são importantes. E, logicamente isso aí está na documentação do App Engine, tem bastante informação, a ideia é só darmos uma passada, não é curso de App Engine e, sim, para nós entendermos a infraestrutura.
O que vale a pena ressaltar é runtime: python
, o ambiente já setou como flexível e ele vai rodar aquele gunicorn
. O servidor web vai rodar, python_version: 3
. E olha que interessante.
Ele está definindo a instância que vai rodar? Ele tem duas vertentes importantes. Na documentação, ele vai dizer o seguinte, que esse ambiente tanto pode ser automático, em que o Google via subir as instâncias e vai gerenciar para nós, mas eu tenho a opção também de definir essas instâncias, essas características, isso é importante.
Você tem a opção de manual. Não necessariamente você vai utilizar, mas você tem a opção de manual. E no exemplo que ele deu ele está dizendo o seguinte, olha, só para não gerar custos, ele configurou dessa maneira, mas como eu quero te mostrar isso de forma diferente, eu vou comentar toda essa parte.
Se você quiser repetir, ok, se não, você pode usar aqui a recomendação e rodá-lo nessa instância, mas aqui é só para te mostrar, só para testar. Então, com o código aqui comentado, deixando a parte que interessa, eu vou gravar e o que que nós fazemos?
Bom, primeiro eu preciso testar isso localmente para ver se está funcionando de modo satisfatório e depois pegar tudo e colocar em produção. Então, vou deixar para fazer isso no próximo vídeo, na sequência nós fazemos essas atividades.
Até lá, podemos analisar o código, observar se ficou faltando algo. Já pegou isso lá do GitHub, e eu vou deixar para fazer isso no próximo vídeo, nós fazemos essas atividades.
O curso Associate Cloud Engineer parte 4: A certificação do Google Cloud possui 126 minutos de vídeos, em um total de 36 atividades. Gostou? Conheça nossos outros cursos de Google Cloud Platform em DevOps, ou leia nossos artigos de DevOps.
Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:
Impulsione a sua carreira com os melhores cursos e faça parte da maior comunidade tech.
1 ano de Alura
Assine o PLUS e garanta:
Formações com mais de 1500 cursos atualizados e novos lançamentos semanais, em Programação, Inteligência Artificial, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.
A cada curso ou formação concluído, um novo certificado para turbinar seu currículo e LinkedIn.
No Discord, você tem acesso a eventos exclusivos, grupos de estudos e mentorias com especialistas de diferentes áreas.
Faça parte da maior comunidade Dev do país e crie conexões com mais de 120 mil pessoas no Discord.
Acesso ilimitado ao catálogo de Imersões da Alura para praticar conhecimentos em diferentes áreas.
Explore um universo de possibilidades na palma da sua mão. Baixe as aulas para assistir offline, onde e quando quiser.
Acelere o seu aprendizado com a IA da Alura e prepare-se para o mercado internacional.
1 ano de Alura
Todos os benefícios do PLUS e mais vantagens exclusivas:
Luri é nossa inteligência artificial que tira dúvidas, dá exemplos práticos, corrige exercícios e ajuda a mergulhar ainda mais durante as aulas. Você pode conversar com a Luri até 100 mensagens por semana.
Aprenda um novo idioma e expanda seus horizontes profissionais. Cursos de Inglês, Espanhol e Inglês para Devs, 100% focado em tecnologia.
Transforme a sua jornada com benefícios exclusivos e evolua ainda mais na sua carreira.
1 ano de Alura
Todos os benefícios do PRO e mais vantagens exclusivas:
Mensagens ilimitadas para estudar com a Luri, a IA da Alura, disponível 24hs para tirar suas dúvidas, dar exemplos práticos, corrigir exercícios e impulsionar seus estudos.
Envie imagens para a Luri e ela te ajuda a solucionar problemas, identificar erros, esclarecer gráficos, analisar design e muito mais.
Escolha os ebooks da Casa do Código, a editora da Alura, que apoiarão a sua jornada de aprendizado para sempre.