Transcrições
1. Apresentação: Oi, todo mundo. Meu nome
é Mariko Bukowski e trabalho
em TI há muitos anos Recentemente, concentrei-me em funções como engenheira de DevOps
e nuvem e trabalho principalmente com AWS, bancos de dados e servidores Linux Eu também trabalho com o
Terraform diariamente, então decidi compartilhar meu
conhecimento com você hoje O Terraform
pertence a uma categoria de ferramentas conhecida como
infraestrutura como código Aprenderemos tudo sobre
isso nesta aula. Se você não tem ideia do
que é terraform, não se preocupe, você está
no lugar certo Primeiro, veremos como
instalar o Terraform, como configurá-lo
e, em seguida, como usá-lo Ao final desta
aula, você terá
todo o conhecimento necessário
para começar a criar infraestrutura usando o
Terraform e também aprenderá mais sobre a nuvem da AWS e a linguagem de configuração da HashiCorp Essa é uma
linguagem de programação usada no Terraform. Acredite em mim, essa é uma habilidade
muito valiosa. Você pode adicionar essa
habilidade ao seu currículo ao se candidatar a
cargos de TI, por exemplo. Também queria acrescentar que, bem, tudo isso pode
parecer confuso Acredite em mim, que nenhuma experiência
anterior é necessária para começar esta aula. Só uma coisa a
ressaltar: talvez, durante a aula,
trabalhemos com a nuvem da AWS. Mostrarei como criar sua própria conta da AWS e como
usar o terraform com a AWS, mas essa etapa é opcional É sua escolha se
você deseja criar essa conta da AWS ou
simplesmente assistir a essa parte. É opcional porque também
mostrarei como trabalhar com outros
provedores de infraestrutura. É por isso que não é necessário
criar sua própria
conta da AWS. Quero dizer, se você não quiser fazer
isso , está tudo bem. Na verdade, como parte de um projeto, você escreverá seu
próprio código do Terraform implantar automaticamente a infraestrutura em
um
provedor de infraestrutura de sua escolha Observe também que, se
você quiser aprender mais sobre DevOps e tópicos
específicos da nuvem, visite nossa plataforma
Automation Avenue, onde
poderá explorar
mais sobre a nuvem da AWS, a programação em
Python , o
Terraform, o Linux, Docker e Mas acho que isso é suficiente
para a introdução, pois você provavelmente mal pode
esperar para começar. Nos vemos em
nossa primeira aula.
2. O que é Terraform e IaC (Infraestrutura como Código): Vamos começar com o que o
terraform realmente é, como ele pode nos ajudar e
quais problemas ele resolve Como eu disse, o Terraform é uma
infraestrutura como ferramenta de código. Isso significa que podemos criar e manter nossa infraestrutura
na forma de um código. Isso significa que eu posso escrever
uma parte de um código e esse código criará um pouco
da infraestrutura para mim. Essa parte da
infraestrutura pode ser, por exemplo, um único
servidor na nuvem da AWS. Pode ser talvez um
servidor virtual no meu Px Mx. Talvez seja um balanceador de carga na nuvem ou também um
código complexo que criará toda a
infraestrutura de produção que pode incluir
centenas de servidores Portanto, independentemente do que
eu queira construir, ainda
posso usar o terraform
para todos esses propósitos. O Terraform tem uma ampla
gama de aplicações. É mais comumente usado em soluções em nuvem,
como AWS, GPC, Azure, Digital
Ocean e outras, mas pode funcionar com praticamente
qualquer coisa que você possa imaginar Se você verificar, talvez eu
abra o navegador e vamos procurar fornecedores de
terraform Vou escolher o primeiro link
na parte superior, procurar provedores, e você verá
aqui um número infinito dos chamados provedores. Você pode ver a plataforma AWS, Kubernets Azure e
Google Cloud Eles estão no
topo porque são
os lugares mais populares onde você trabalharia
com o Terraform Mas se você rolar
para baixo, dê uma olhada. Esta é apenas a
primeira página. Verifique esses fornecedores parceiros. Esta é apenas a letra A. Dê uma olhada, temos 95
páginas de fornecedores parceiros. Então, agora, digamos que eu queira
trabalhar com o Proxmx, talvez, sim. Temos o Alibaba Cloud bloqueado. Eu nem sabia que algo
assim existia Não importa. Proxmox, sim, talvez eu queira
trabalhar Eu posso pesquisar aqui por Proxmox e você
verá que não há um, mas podemos ver todos Muitos e muitos
fornecedores apenas para o Proxmox. Qualquer um desses provedores me
permitirá trabalhar com
meu servidor Proxmax. Mas deixe-me voltar. Quais
são, afinal, esses fornecedores? Portanto, esse provedor é
como uma ponte que me
permite usar o Terraform com
esse produto específico Por exemplo, se eu quiser que o
Terraform funcione com a AWS, precisarei incluir esse provedor
da AWS em meu código
e, em seguida, o Terraform
baixará todas as ferramentas necessárias, faremos mágica
em segundo plano,
instalaremos tudo o que é necessário
para funcionar com a nuvem da AWS E neste curso,
usaremos o Terraform para implantar infraestrutura
na nuvem da AWS Isso não significa que esse curso
seja de alguma forma específico da AWS. Este é um curso de terraform, não de AWS, e
no final deste treinamento, você poderá trabalhar com todos esses provedores porque
aprenderemos conceitos de
terraform que podem ser aplicados a qualquer provedor com o qual
você queira trabalhar Não pense que você precisará outro treinamento em terraform
se quiser trabalhar com,
por exemplo, Azure
ou DCP ou qualquer O fato de trabalharmos com
a AWS hoje
não faz sentido porque
as mesmas regras se aplicam a qualquer provedor que você quiser Você simplesmente poderá
trabalhar com todos eles. Eu só escolhi a AWS porque a AWS é o
provedor de nuvem mais popular e o Terraform é a
infraestrutura mais popular como ferramenta de código Acho que é uma combinação perfeita. Mas agora, o que
realmente significa programar a infraestrutura ou ter a
infraestrutura como código? Significa simplesmente que, em vez
de clicar manualmente em
alguns ícones no console da AWS para criar algo na nuvem, podemos fazer tudo no Terraform e mantê-lo
na forma de um código Porque o Terraform é como
uma linguagem de programação. Você pode escrever esse programa,
esse código no Terraform usando uma linguagem de programação chamada linguagem HCL HashiCorp Depois de concluir o
programa, você pode executá-lo e ele
implantará todos os
recursos para você. Alguém pode perguntar, Mark, mas eu posso construir essa
infraestrutura manualmente. Eu posso criá-lo
diretamente, por exemplo, na AWS clicando em alguns ícones e preenchendo
os campos obrigatórios. Por que eu deveria aprender sobre
algo como o Terraform. Criar infraestrutura
manualmente
na nuvem é realmente possível. No entanto, tem muitos inconvenientes. O maior problema com essa abordagem
manual é que, quando alguém cria
essa infraestrutura manualmente, por exemplo,
eu crio um servidor
e, no dia seguinte, alguém completamente diferente
começa a mexer nesse servidor e
a fazer alterações nele Agora, o problema é que
não sabemos quem o mudou e o que foi alterado
porque não
temos a capacidade de
rastrear todas essas mudanças. Por exemplo, digamos que eu criei esse servidor na nuvem
com um disco de 500 giga Um pouco mais tarde,
houve um problema com espaço
em disco e alguém o
aumentou para 700 giga O problema agora é que,
se algo acontecer esse servidor e eu tiver que
reconstruí-lo com base talvez, não
sei, em algumas notas
pessoais, eu o
reconstruirei novamente com um disco de
500 giga, eu o
reconstruirei novamente com porque talvez
eu nem saiba do fato de
que alguém aumentou espaço em disco para 700
giga
nesse Portanto, não temos nenhum vestígio de quem,
onde e o que foi modificado Seria muito
difícil manter todas essas informações em um só lugar
usando apenas alguns nós. No entanto, se tivermos
essa infraestrutura na forma de um programa
, podemos programar ou
codificar essas informações para que todos saibam que o disco
nesse servidor específico
deve ter 700 giga Se eles precisarem
aumentá-lo ainda mais, eles mudarão esse
valor nesse código. E eles compartilharão esse trecho
de código com toda a equipe. Então, todo mundo
estará ciente disso. E se eu precisar
reconstruir esse servidor, não
clicarei em
nenhum botão na AWS Vou implantar esse servidor
usando o Terraform usando o mesmo arquivo em que esses 700 ou qualquer
tamanho atual deveriam estar Esse tamanho está programado, está codificado no
meu código de terraform Então, eu nem preciso
pensar em qual disco, qual tipo de instância, qual endereço
IP atribuir e assim por diante, porque eu
já tenho tudo claramente apresentado
na forma de um código. Posso fazer o upload desse código para repositório
remoto como o
GitLab Minha equipe pode extrair esse código
desse repositório remoto sempre que quiser trabalhar com esse servidor ou se quiser
fazer alguma alteração nele Mas esse é apenas um exemplo. Na realidade, manter
toda a nossa infraestrutura na forma de um programa
tem muitas outras vantagens. Por exemplo, será
muito fácil criar, digamos, duas cópias exatamente
da mesma infraestrutura. Se eu precisar de um para fins de
teste e outro
para o ambiente de produção, posso simplesmente executar todo o
código em, digamos, uma
conta da AWS
completamente diferente e a infraestrutura criada terá exatamente
a mesma aparência nas duas contas.
3. Processo de instalação do Terraform no Linux e Mac: Para trabalhar com o Terraform, precisamos
instalá-lo primeiro, sim Mostrarei como
instalá-lo em máquinas macOS, Linux e Windows Vamos começar com o Linux, talvez porque, tanto no Linux quanto no macOS, a instalação
já seja trivial e o processo
para ambos seja muito semelhante Então, no meu Linux, deixe-me minimizar. Então, no meu Linux, isso é o Ubuntu. Deixe-me abrir o terminal e primeiro digitarei a versão do
Terraform dash dash Como você pode ver, o
comando de saída terraform não foi encontrado, mas pode ser instalado com o
pseudo Snap Isso é verdade. Você pode simplesmente executar esse comando e concluir o trabalho. Mas eu não sou o maior
fã dos pacotes Snap , então deixe-me mostrar
outra maneira de fazer isso Vamos abrir o navegador novamente
e procurarei por
terraform dot IO Então isso é terraform dot IO, e vou clicar no botão de
download E você verá não apenas o
macOS Windows e Linux, mas também o BSD gratuito, o
Open BSD, o Solaris, etc Mas estou interessado
no Linux agora e todo Linux pode ter gerenciadores de pacotes
diferentes, você precisa escolher
sua versão do Linux, seja qual for sua
distribuição, sim. Por exemplo, para mim,
é o Ubuntu Debian. Eu posso simplesmente clicar nesse
pequeno ícone aqui. Ele copiará tudo para mim. Agora, copie
todos esses comandos. Então, deixe-me voltar ao terminal, e eu acabei de colocá-lo. É isso mesmo. Agora clique em Enter. Agora, aqui
você pode esperar um pouco. Algumas coisas precisam ser
baixadas em segundo plano, então isso dependerá da velocidade da
sua Internet. Agora ele pede uma pseudo-senha, então deixe-me fornecê-la, e agora ele
concluirá o processo Isso está feito, o que
significa que se eu usar seta
para cima e executar
esse comando novamente, versão
Terraform D,
agora eu deveria, vamos ver. Isso é o que
eu estava procurando. Agora ele me mostra a
versão do terraform, que significa que o terraform foi instalado
com sucesso Mas, na verdade, se
voltarmos para o terraform IO, também
podemos usar
a versão macOS Se usarmos os
sistemas operacionais MacOS, podemos ver que podemos instalar Terraform usando o gerenciador de
pacotes Brew Na verdade, se eu for até mesmo para o Linux, você pode ver que o Homebrew também
está aqui Se eu clicar nisso,
basicamente recebo as
mesmas informações. Se eu for para o Linux
Homebrew ou se eu escolher o sistema operacional macOS.
Mais uma vez, eu posso copiar isso. Agora posso me deixar abrir
meu terminal Mac. Essa é uma máquina diferente. Este é meu Mac, mas eu deveria ser capaz de
simplesmente colá-lo aqui. Sim, estou apenas clicando. Branco. Também pode demorar
um pouco. Está fazendo algo
em segundo plano. Atualização automática do Homebrew. Agora ele baixa
o que precisa baixar, agora ele
deve ser concluído. Se eu correr até aqui, talvez me
deixe esclarecer isso. Se eu executar a versão Terraform, também
terei a versão
terraform Isso significa que o terraform está
instalado corretamente. No entanto, para o Windows, a
história é um pouco diferente e eu
teria que pular para outra máquina
virtual em que eu tenha o Windows instalado,
deixe-me fazer isso.
4. Processo de instalação do Terraform no Windows: Ok, agora estou na minha máquina
Windows, então vou abrir o Firefox e digitar terraform dot IO
na Pesquisa do Google Vou para Downloads
e depois para a guia Windows. Nessa guia do Windows, quero que a versão 64
desse programa seja baixada.
Então eu apenas clico aqui. Inicia o download e,
agora, se eu mostrar na pasta, podemos ver que é um
arquivo compactado. É um arquivo compactado Então, podemos clicar
nele e dizer extrair tudo para
descompactá-los. Clique em Extrair. Agora, se voltarmos aos downloads, você poderá ver a
versão compactada e a versão
não compactada Se eu abrir isso,
posso ver um arquivo. É chamado de Terraform e não
é o instalador. É um arquivo dot exe, o que significa que
não há nada para instalar. Clicar neste arquivo
será executado significa que eu simplesmente executarei o Terraform
clicando nesse arquivo Eu clico em Exibir e nas extensões
do nome do arquivo, você pode ver que é o arquivo executável terraform
dot Sim. Mas trabalhe facilmente com esse arquivo a partir da interface da linha de
comando, sugiro que façamos mais uma coisa. Vamos primeiro copiar esse arquivo em algum lugar neste
C. Deixe-me copiá-lo. Agora posso fechar de perto.
Vamos fechar tudo. Vou para C e talvez
você queira colá-lo em
algum lugar nos arquivos do programa, mas para mostrar claramente
o que estamos fazendo aqui, talvez eu crie uma
nova pasta aqui. Vou criar uma nova pasta e
vou chamá-la de terraform. E no terraform,
terei esse arquivo terraform dot A.
Meu caminho para esse arquivo é C, barra invertida terraform, barra invertida Terraform XA Agora, uma vez que temos esse arquivo
nesse local, nós o chamamos de Path. É C, barra invertida Terraform, terraforma de
barra invertida A.
Essa terraforma C é nosso caminho para esse arquivo Talvez me deixe copiar esse
caminho C terraform. Vou apenas copiar isso. Minimizarei essa janela e procurarei variáveis de
ambiente. Podemos ver a melhor combinação, editar as
variáveis de ambiente do sistema no painel de controle. É disso que eu preciso. É isso mesmo. E agora eu clico nas Variáveis de
Ambiente. Aqui eu preciso dessa variável de caminho e clico em Editar. E podemos ver que
já temos um, mas eu quero adicionar outro. Eu digo novo e vou
colar o que copiei,
que era aquela terraforma de
barra invertida da coluna C. E eles dizem: Ok, então eu
posso clicar em OK aqui e OK ali, porque isso é
tudo que eu quero adicionar. Isso significa que agora, se
eu abrir o terminal, talvez eu abra o PowerShell Windows PowerShell, e se eu executar a versão terraform dash dash, posso ver que tenho o
terraform instalado porque ele me mostra a
versão do terraform, e isso porque
nosso sistema Windows sabe onde encontrar o arquivo,
o terraform porque acabamos de adicioná-lo
ao ambiente Path,
e isso é tudo o que é para o e isso é tudo o que Você pode começar a trabalhar com o terraform no Windows
a partir de agora
5. Crie infraestrutura... mas onde?: Agora temos o terraform
instalado e estamos prontos para começar a criar a
infraestrutura como um código Mas onde podemos criar
essa infraestrutura. Como mencionei anteriormente, vamos criar essa
infraestrutura na nuvem da AWS, mas qualquer recurso ou local que tenha um
provedor de terraform funcionará para nós Vou me concentrar na nuvem da
AWS porque ela é a
provedora de nuvem mais popular do mundo, então faz todo
o sentido trabalhar com essa nuvem. se você quiser
seguir e praticar entanto, se você quiser
seguir e praticar
todas as etapas mostradas
neste treinamento, significa
que você precisa configurar sua própria conta da AWS e começar a implantar sua
infraestrutura lá Nas próximas seções, faremos exatamente isso. Analisaremos a criação
e a configuração do processo de
conta da AWS criação
e a configuração do processo de
conta e veremos
como podemos conectar nosso Terraform local à
nuvem remota da AWS, à conta da AWS que
vamos criar Se você já tem
uma conta da AWS, ou talvez queira usar Terraform com um provedor completamente
diferente, talvez
queira pular alguns
dos vídeos iniciais aqui em que
criamos essa conta da AWS E comece com aquele em que
configuramos usuários e grupos da AWS, porque isso deve lhe dar uma ideia clara de como você pode usar essas informações com qualquer provedor escolhido.
Espero que isso faça sentido. Em seguida, vamos começar a criar e
preparar nossa conta da AWS.
6. Crie uma conta da AWS e faça login como usuário root: Este é um novo sistema
operacional sem absolutamente
nada configurado, e criaremos
aqui uma nova conta da AWS. Então, deixe-me abrir o navegador e navegaremos para
algo como AWS de três níveis. E o que realmente
é o Free Tier , falaremos sobre isso mais tarde. Mas agora, deixe-me
explicar em breve. É simplesmente uma
oferta da AWS que permite que você use muitos e muitos
recursos por um ano gratuitamente. Ao criar uma nova conta, você pode usar esses serviços
gratuitamente por um ano. Mas falaremos sobre isso mais tarde, quando realmente
criarmos recursos. Agora estamos criando
a conta em si. Como você pode ver aqui, eu
criei uma conta da AWS. Vamos clicar nele porque é nisso
que estamos interessados. Clicando aqui, ele
me leva para aquela página da web com botão de criar conta gratuita. Vamos clicar nisso. E talvez vamos
aceitar esses cookies. Agora, o que eu preciso é de
um endereço de e-mail. Pode ser qualquer
endereço de e-mail usado ou de sua propriedade, você só precisa ter certeza de que pode acessar esse e-mail
durante o processo de inscrição Vou usar apenas o gmail.com. Essa é uma
parte importante. O que está abaixo é apenas um alias
para sua conta Pode ser o
que você quiser Chama-se Automation Avenue. Mas isso não é tão
importante, na verdade. O e-mail é importante aqui. Eu clico em Verificar endereço de e-mail e agora vou ter
que esperar o e-mail chegar. Ah, como você provavelmente poderia estar aqui, o e-mail acabou de chegar e eu recebi um código
de verificação, então preciso digitá-lo
aqui e clicar em Verificar. Ok. Agora temos que criar
a senha para o usuário root. Falaremos um pouco
mais tarde sobre quem é realmente o usuário root, mas agora vamos
criar uma senha. Como você pode ver, ele deve
incluir letras
maiúsculas, minúsculas, números e Apenas
certifique-se de ter tudo isso. Mesmo quando eu começo a digitar,
digamos letra maiúscula, como você pode ver, a primeira
caixa está marcada, letra
minúscula, agora dígito e agora Como você pode ver, todas
essas caixas estão marcadas, minha senha é boa
o suficiente para elas. Agora eu tenho que repetir isso. E é
isso. Nós podemos continuar. Só queria observar
aqui à esquerda que você tem um link se quiser
explorar esses produtos de três
níveis. Esse é o link que você pode usar. Mas não importa, neste estágio, vamos nos concentrar apenas
no processo de inscrição Vou clicar em Continuar. Vou salvar a senha. Agora ele me pede informações de
contato. Ele me pergunta se é uma
conta comercial ou uma conta pessoal. Vou tratá-la como uma conta
pessoal. De qualquer forma, se for um
negócio, ele também
solicitará o nome da organização. Vamos clicar em pessoal
e meu nome é. Você tem que dar a eles nome,
endereço e o número de telefone. E você concorda que
leu o contrato com o cliente. Portanto, podemos ir mais longe
para a etapa dois. Agora, ele solicita informações
de cobrança. É por isso que você precisa
fornecer o número do seu cartão de crédito ou débito,
porque, como eu disse ,
existem alguns
serviços gratuitos que você pode usar ,
mas, ao se inscrever,
você pode usar todos
os serviços, os gratuitos e
os
pelos ,
você pode usar todos
os serviços ,
mas, ao se inscrever,
você pode usar todos
os serviços, os gratuitos e quais você
precisa pagar É por isso que você precisa colocar
os detalhes do cartão de crédito. Mas em vídeos posteriores,
mostrarei como criar um orçamento. Esse orçamento informará se
você realmente começou a usar alguns serviços
pelos quais precisa pagar. Por enquanto,
temos
que inserir essas informações para
podermos progredir. Esse é o cartão de crédito,
e podemos ir mais longe. Ao usar meu cartão Revolut, preciso confirmar que, no aplicativo bancário,
clico em Confirmar e isso
autoriza essa etapa Agora ele me pede um número de
telefone para usar para confirmar a identidade. Vou usar o mesmo que usei anteriormente na página anterior. Agora, a captura. Legal, eu entendi bem. Se
estiver completamente bagunçado, você também pode sempre atualizá-lo Sabe, vou gerar um
novo porque alguns deles são
gerados de uma forma tão estranha que você mal consegue
ver o que está lá Ok, agora vamos aguardar o código de verificação
enviado para o meu número de telefone. E como você pode ouvir
, acabou de chegar. E podemos continuar
com a etapa número quatro. Aqui, ele me pergunta novamente de que
tipo de conta eu realmente preciso. Então, vamos, obviamente,
com o gratuito e queremos pagar $29
por mês ou 100 O gratuito é mais do que realmente
precisamos, e pronto. Clicamos em Concluir, cadastre-se. Como você pode ver, foi um processo
rápido e fácil e diz: Ah. Quando você chega aqui, a AWS diz que estamos ativando sua conta, mas acredito que ela
acabou de ser ativada Então, sim, recebi o e-mail
, dizendo que eu posso
começar a usar minha conta. Então, eu posso clicar
nesse botão ou naquele botão,
realmente não importa. Vamos clicar nesse. Acesse o AWS Management Console. E agora ele me pergunta
se eu quero entrar como usuário root ou usuário de IM. Na verdade, só temos
root neste estágio, mas mostrarei mais tarde nos próximos vídeos como
criar o IMuser também Então, por
enquanto, como
não há escolha, só
temos usuário root. Colocaremos o endereço de e-mail que usamos para o processo de inscrição Para mim, foi o gmail.com. Clicaremos em Avançar
e
na senha, aquela que você acabou de criar
também para esse usuário. E faça login. Nada mal. Já estamos em
nosso console da AWS. Isso é
chamado de console da AWS, onde podemos fazer tudo em relação a essa conta
ou nossos recursos. O que eu quero te mostrar é que está aqui que diz
Automation Avenue. Lembre-se de que esse é o alias que, na verdade,
colamos durante
o processo de inscrição Então, em vez de um dígito
longo e estranho, avenida de
automação
será usada aqui Para você, pode ser o nome
que quiser para essa conta, nós. A próxima coisa é que podemos ver
stockkhm. Bem, nós escolhemos. Não sei por que, mas isso é
o que chamamos de região da AWS. É aqui que você deseja
criar seus recursos. Então, como você pode ver, você pode
criá-lo em todo o mundo. Deixe-me mudar para
Londres, porque é
o mais próximo para mim. Mas também falaremos sobre
isso mais tarde. Então não se preocupe com isso agora. O que eu quero que você
faça é ativar a autenticação
multifatorial
para o usuário root Isso é muito importante. Essa conta
precisa ser muito segura.
7. Adicionar MFA (autenticação multifator) para usuário root: O que você pode fazer aqui
neste campo de pesquisa, você pode colocar IM IAM. Clicaremos nele
e você verá que até mesmo
na própria Amazon, há uma
recomendação de segurança adicionar MFA para usuário root Para ser quase todo usuário
que você cria deve ter o MFA habilitado, na minha opinião, mas o
root é definitivamente
aquele para o qual você precisa criar a autenticação de
MFA Podemos adicionar o MFA aqui,
clicando neste botão. E agora temos a
opção do que queremos
usar como segundo método de
autenticação separado. A maneira mais fácil, eu acho,
é o aplicativo autenticador, que é escolhido por
padrão de qualquer maneira Você pode ligar, por exemplo, para mim, será
meu telefone Samsung. Eu posso usar isso porque realmente
não importa. É só para você,
informações para você, onde essa autenticação
chegará. E podemos escolher o aplicativo
de autenticação. Clique em Avançar. E agora você pode ver, você terá que instalar um dos aplicativos
em sua espuma. Seja o autenticador do Google,
faça um celular ou alguns outros aplicativos da lista de todos os aplicativos,
você pode ver aqui Mas, basicamente, você
precisa de apenas um deles. O Google é muito bom. Eu posso recomendar
esse. Depois de instalar
o aplicativo, você precisa clicar em Mostrar código
QR e
digitalizá-lo com sua espuma Depois de digitalizá-lo, você
receberá o código MFA, que deverá
colar aqui duas vezes Quero dizer, primeiro código
e segundo código. Dessa forma, você adicionará esse dispositivo como autorizado
para receber os códigos MFA Não faça isso porque
é apenas uma conta temporária. Vou removê-lo mais tarde, mas você definitivamente
deveria fazer isso. No próximo vídeo,
mostrarei como criar
esse orçamento antes começar a criar
quaisquer recursos na nuvem da AWS. Mas você tem sua própria
conta da AWS agora, parabéns.
8. Crie o orçamento da AWS: No vídeo anterior,
criamos nossa nova conta da AWS. Criamos um logotipo
como usuário raiz e adicionamos a autenticação MFA
para esse usuário raiz A próxima
coisa mais importante é que
saibamos quanto dinheiro os
serviços da AWS nos custarão, se houver. Podemos tentar
não gastar dinheiro lá apenas usando serviços qualificados de
nível gratuito, mas talvez possamos
gastar algum dinheiro, mas não queremos exceder certos limites, como talvez
$10 por mês, digamos Mas, de uma forma ou
de
outra, definitivamente
queremos controlar nosso orçamento, e é
exatamente isso que o serviço de orçamento da
AWS está sendo registrado
em nosso console.
Ainda assim, como usuários rodoviários, podemos digitar aqui
nos serviços,
podemos pesquisar o orçamento Podemos ver aqui os orçamentos partir do recurso de licitação e
gerenciamento de custos, ou podemos simplesmente clicar no serviço de licitação e
gerenciamento de custos, qual o orçamento Talvez vamos clicar no topo
. Realmente não importa. Aqui, você geralmente
vê um resumo quanto custou no mês passado,
qual é a previsão
para este mês. Mas como essa é uma conta nova, ainda não
há dados disponíveis, mas isso realmente não importa,
porque o que precisamos é orçamentos aqui no
canto inferior esquerdo Vamos clicar nesse orçamento. E, como você pode
ver, podemos criar um novo orçamento aqui
clicando neste botão. Agora temos a opção de
usar um modelo ou personalizar, usando configurações
avançadas. Vamos nos limitar à versão
simplificada. Agora, que tipo de modelo
você deseja usar? Por padrão, você pode
ver um orçamento gasto zero. Crie um orçamento que
notifique você quando seus gastos excederem 0,01 USD, que está acima do limite de três níveis
da AWS, isso parece bom, não Porque isso significa que se eu
gastar algum dinheiro em alguma coisa, receberei uma notificação. Além disso, é importante
lembrar o orçamento da AWS não
desativará nenhum recurso para
nós. Não era para ser assim. Ele só nos notificará sempre que excedermos
um determinado limite Nós podemos descobrir aqui. O primeiro limite
será de $0,01. Se usarmos algum serviço pelo qual tenhamos
que pagar, ele enviará um e-mail para o endereço de e-mail
especificado aqui abaixo. Então, talvez antes de irmos
lá, também haja um nome orçamentário. É chamado My
Zero Spend Budget, o que é bom, mas
deixe-me personalizá-lo. Talvez Mark. Orçamento de gastos zero. Realmente não importa.
É só um nome. E aqui é onde
inserimos o endereço de e-mail. E, como você pode ver,
não precisa ser um. Você pode colocar vários endereços
de e-mail aqui. Você só precisa
separá-los usando vírgulas. Vou usar apenas um, digamos, Mark na Issue Avenue. É isso mesmo. Se eu quiser outro,
basta usar vírgula e blá, blá, blá. Mas vamos usar
apenas este. Isso é realmente, eu
acredito, porque, sim, podemos deixar
tudo como está, e você pode ver uma confirmação. Você será notificado
por e-mail quando ocorrer algum gasto acima de
$0,01 Isso é bom. Isso é
o que eu quero. Então, criamos um orçamento. E é isso. Temos nosso orçamento
e não me perguntamos por que ele sempre mostra $1
em vez de $0,01 Não sei por que
é assim, mas deveria custar $0,01 Mas isso não é grande coisa.
Funciona conforme o esperado, na verdade, mas talvez queiramos
criar outro orçamento. E se às vezes quisermos
usar alguns serviços, mas não quisermos
exceder $10 por mês Assim, podemos criar
apenas outro orçamento e definir um limite para isso Vamos clicar em Criar orçamento. Vamos deixá-lo como um modelo simplificado, o que
é muito mais fácil, e agora vamos mudar
do
orçamento de zero gastos para talvez esse orçamento de custo
mensal. O que é interessante
é que, como você pode ver, ele notifica você se você exceder ou se prevê que
exceda o valor do orçamento Se você começar um novo mês e,
no primeiro dia, exceder $1, esse orçamento da AWS verá que você realmente excederá 10 USD
até o final do Portanto, ele enviará uma notificação antes
que você realmente atinja o limite de $10, pois a
previsão é que você exceda esse limite
até o final do mês Espero que isso faça sentido, porque nosso objetivo final é não
exceder $10 por mês É exatamente disso que precisamos.
Então, agora podemos rolar para baixo. Vamos dizer que é um orçamento de $10, sim. Portanto, está claro para nós do
que se trata. Agora, ajustamos
esse valor para $10
e, novamente, apenas uma lista de e-mails Queremos que essa notificação
também seja enviada. E é isso. E aqui abaixo, você tem um resumo
de como isso funciona. Você será notificado quando.
Seu gasto chega a 85%. Então, se você estiver às
8:50, digamos você receberá um e-mail, então
ele estará em 100% Mas a terceira opção, se a previsão é de que seus gastos
cheguem a 100% Mas isso é muito útil e útil para nós. Isso é
exatamente o que eu preciso. Basta criar um orçamento. Dessa forma, você pode criar quantos
orçamentos quiser e
ser notificado sempre que atingir
qualquer um desses limites
9. Crie um usuário do AWS IAM e um grupo de usuários do IAM: No vídeo anterior,
criamos o orçamento da AWS. Podemos monitorar nossos gastos usando esses orçamentos, etc. Mas o que eu quero
observar é que
ainda estamos logados como usuário root,
e esse usuário root
não é realmente aquele queremos usar para criar
algo parecido com recursos, como servidores, balanceadores de carga, etc Nós realmente não queremos
usar um usuário root para isso. O que devemos usar em vez disso é
algum tipo de conta de
administrador, usuário administrador ou qualquer outro usuário
que tenha algum escopo limitado. Então, neste vídeo,
criaremos o Admin IMuser. Então, o serviço que eu preciso é chamado IM, nós já vimos isso quando
criamos a autenticação MFA quando estávamos criando
a própria conta Como você pode ver, eu
não concluí essa etapa, mas espero que você tenha concluído. Mas o que queremos agora
é um novo usuário. Se trabalhamos para uma organização, geralmente não
criamos uma. Criamos muitos e
os colocamos em alguns grupos de usuários. Então, talvez vamos começar
com grupos em vez disso. Geralmente é assim, mas
isso realmente não importa. Podemos começar de qualquer ponto e terminaremos
no mesmo lugar. Mas vamos começar do grupo. Criamos um grupo para que possamos
criar um grupo de usuários e os chamaremos de administradores Eu serei um grupo de administradores. E cada administrador deve ter um conjunto similar de permissões, e essas permissões
são configuradas aqui. E você pode ver no
topo o acesso do administrador. É exatamente disso que precisamos. Pegamos isso e
podemos ver que fornece acesso
total aos
serviços da AWS, e tudo bem. Precisamos que eles acessem os serviços, mas eles terão acesso
limitado para visualizar qualquer informação financeira.
Então, ligamos para eles. Administradores, e criamos um
grupo de administradores. Agora está feito, mas podemos
ver que não temos usuários
nesse grupo. Agora, podemos acessar
os usuários e criar um usuário e colocá-lo
nesse grupo de administradores Então, vamos clicar em Criar usuário. Vamos chamá-lo talvez de
administrador. Nome um pouco diferente. Agora,
o que precisamos é marcar a opção de fornecer acesso ao
usuário ao AWS
Management Console. Você pode ver que é opcional.
E alguém pode pensar não é essa a ideia
por que criamos esse usuário Não acessaremos o console da AWS. É onde estamos
agora, certo? Bem, sim, isso é verdade,
mas todo usuário pode ter acesso ao console ou o que
chamamos de acesso programático Eu vou te mostrar no próximo vídeo qual é a diferença e
como configurá-la. Mas, por enquanto,
precisamos acessar o console, ou o usuário administrador deve poder acessar o console,
assim como fazemos agora. Marcamos isso,
fornecemos acesso ao usuário
e, em seguida, clicamos em
Quero criar o IMuser Aqui, podemos ter uma senha
gerada automaticamente ou uma senha personalizada. Personalizado,
poderei digitá-lo. Agora, os usuários devem criar uma nova senha no próximo
login, recomendado. Isso é útil se você criar essa conta para outra pessoa. Você cria um usuário,
digamos, eu sei, Jack, você deu a ele uma senha,
e então você clica nela. Então, quando ele
se conectar, ele terá que
alterá-lo no primeiro login. Mas como
criamos essa conta para nós mesmos, eu diria que vamos desmarcá-la e
poderemos usar apenas
a senha
que digitamos É isso aí, podemos
clicar no próximo botão. Save, talvez saiba. Agora, neste estágio,
podemos adicionar o usuário
ao grupo de usuários que criamos há 2
minutos, como você pode ver. Então, vamos adicioná-lo. Próximo. Como você pode ver, se ainda não
criamos um grupo, também
podemos criar um aqui. Mas como já
temos um grupo de administradores, podemos ir direto para a próxima É isso mesmo. Aqui está
um pequeno resumo. O nome do usuário é administrador. Ele ou ela terá
permissões de grupos de administradores, será uma
senha personalizada e não exigirá a redefinição no
primeiro login. Isso é legal. Vamos criar esse usuário. E agora temos essas instruções de
login. Podemos copiar essas
informações ou baixar tudo
como um arquivo CSV, e eu usarei essa opção Como você pode ver, o arquivo CSV de
credenciais do administrador foi exibido em meus downloads Eu posso usar isso.
Mas o que eu realmente preciso é que o URL seja muito útil. Vamos copiá-lo, talvez. Ainda o tenho
nesse arquivo, mas talvez vamos copiá-lo aqui. E agora vou
sair daqui. Ainda estou logado como usuário
rodoviário, lembra? Então, se sairmos
, podemos entrar novamente aqui. Mas desta vez, como usuário do IAM, precisaremos do ID
da conta, 12 dígitos Mas lembre-se, eu copiei esse URL. Deixe-me abrir outra aba. Talvez eu te mostre os dois caminhos. Eu posso colá-lo aqui. Lembre-se daquele
URL longo, eu apenas copio. Na verdade, isso já
tem esse ID de conta. Uma última coisa para digitar. Quando clico em Enter,
como você pode ver, a única diferença
é que já estou na página em que posso
fazer login como Imuser. Não preciso escolher
isso e também
tenho um ID de conta
já colocado para mim. Agora eu só quero
adicionar administrador, que é o nome
do usuário que acabamos criar e a senha que
criamos para esse usuário.
E agora eu posso entrar. Mas talvez antes de fazer isso, deixe-me voltar para essa aba. E, como você pode ver, é uma página de login um
pouco diferente, mas funciona exatamente da mesma forma. Então, o ID da conta, que eu posso
realmente copiar daqui, pode ser maneira
mais fácil. Vamos voltar. Eu posso colar aqui, e
aqui se eu clicar em Avançar, como você pode ver,
estamos exatamente
no mesmo lugar. Espero
que isso faça sentido. Então, como eu já
tenho tudo preenchido, deixe-me entrar aqui. Feche esse. OK.
Agora estamos logados como usuários de mensagens instantâneas Como você pode ver,
diz o administrador esse número de conta longo,
terminando com 8888 Você também pode ver mais uma
diferença porque
pode ver o acesso negado
em termos de custo e uso. Como eu disse, o usuário de mensagens instantâneas terá visibilidade
limitada às informações
financeiras,
e tudo bem. Criaremos esse usuário
para criar serviços. Eles não precisam fazer
nada com as finanças. Então, espero que isso ajude.
10. Instalação da AWS CLI e configuração de chaves de acesso à API: No vídeo anterior,
criamos o usuário IAM e agora estamos
logados como usuários de IM É chamado de administrador, e esse é o número da nossa conta. Mas lembre-se de quando ele perguntou
se precisávamos acessar o console. Este é o console da AWS e ele nos
perguntou
se queríamos acessá-lo. À primeira vista, isso pode parecer ridículo porque
alguém diria, é
claro que queremos
acessar isso, sim, mas nem todo usuário
precisará desse acesso AWS também tem acesso
programático, e tudo o que podemos fazer aqui, também
podemos fazer programaticamente partir de algum E em vez de
tentar explicar isso,
deixe-me te mostrar. Simplesmente, essa é a maneira mais fácil. Então, vamos voltar
ao nosso console de mensagens instantâneas. Eu não sou IM. Vamos ao IM, onde criamos nosso usuário. E, como eu disse, também é
recomendável identificar
os usuários de mensagens instantâneas,
não apenas para o usuário root, mas deixe-me me concentrar em outra
coisa, porque o que eu queria mostrar é que, se
formos até esses usuários, talvez eu clique
aqui, não
importa realmente onde, aqui ou ali. Então esse é nosso usuário. É chamado de administrador. Vamos clicar nisso. E o que precisamos agora são credenciais
de segurança Vamos clicar em Credenciais de segurança
e rolar para baixo. E aqui o que nos
interessa são as chaves de acesso. Essas são as teclas de
acesso programático das quais eu estava falando Vamos clicar em Criar chave de acesso. Temos muitas opções, mas
queremos realmente a primeira, a interface de linha de
comando, porque é por isso
que vou
querer me conectar à
minha conta da AWS a partir de um
servidor remoto, laptop ou qualquer outra coisa. Então é isso. Só
preciso confirmar que entendi as
recomendações. Eu clico em Avançar. Aqui você pode
descrevê-lo, mas vou clicar em Criar chave de acesso. E como você pode ver, temos acesso e chave de acesso
secreta. Isso é equivalente ao nome de usuário e isso é equivalente
à senha. Então, de um local remoto, poderei fazer login
nessa conta como
administrador usando
esse tipo de nome de usuário
, chamado de
Chave de Acesso, e essa senha
, chamada de chave de acesso
secreta. É um momento importante porque essa chave de acesso secreta
será mostrada apenas uma vez. Deixe-me
mostrar como é. Vou removê-lo mais tarde. É muito importante que você
não mostre isso para ninguém. Como eu disse, isso equivale ao seu nome de usuário e senha. Então, se alguém puder ver isso, poderá fazer
login na sua
conta da AWS usando essas credenciais.
Portanto, tenha cuidado com isso. Vou removê-los antes que
este vídeo seja publicado. Mas o que também podemos fazer aqui é baixar o arquivo CSV.
Vou clicar nisso. Essas serão, como você pode ver, as credenciais
do administrador. Não, desculpe, isso foi
para o vídeo anterior. As chaves de acesso
do administrador são as que estamos
baixando agora. Então, teremos essa informação nesse arquivo. Então é isso. Deixe-me minimizar isso e
abrir o terminal. Então esse é meu laptop
aqui. Estou em casa. Pode ser um PC ou laptop ou
algum outro servidor em algum lugar. Como agora posso acessar essa conta
da AWS a partir daqui? Então, o que eu preciso é o AWS
CLI, que se chama. Ok, precisamos da AWS CLI, mas se você digitar, por exemplo, versão
da AWS, há uma pequena chance de você já ter a AWS CLI instalada Normalmente, precisamos
instalá-lo primeiro e configurá-lo.
Então, vamos fazer isso agora. Deixe-me voltar ao
nosso navegador e ver no Google como instalar o AWS CLI E agora estou no T, mas
você pode
pesquisar no Google qualquer sistema operacional
em que esteja. Então, vamos verificar isso. Primeiro link, vamos rolar para baixo. Aqui temos as instruções. Se você estiver no Windows, você
usaria isso para MacSD, mas eu estou no Linux, como eu disse,
bem, nem é
Linux normal, é a versão RM, então eu tenho que mudar aqui
também para a versão RM E o que eu realmente preciso é
apenas copiar esses comandos. Então eu posso clicar
nesses dois quadrados, agora copiá-los e voltar para o meu
terminal e simplesmente colá-los Entre e pronto. Agora, talvez vamos esclarecer isso. Então, agora, se eu digitar
novamente a versão da AWS, como você pode ver, agora,
eu a tenho disponível. Ok, então, como
configurá-lo agora. Felizmente, não
complicou as coisas. É o comando AWS, configure. Clique em Enter e agora ele
solicita essa chave de acesso. Esse é o único. Lembre-se de que essa é sua chave de acesso.
Você pode copiá-lo aqui. Vamos voltar. Nós colamos isso. Entrar. Agora chave de acesso secreta. Nós
também temos isso. Nós copiamos isso. Isso equivale
à sua senha. Vamos voltar e colar aqui. O que agora ele pede
é o nome da região padrão. Sei que ainda não falamos
sobre regiões, mas a região basicamente é onde você deseja criar seus
recursos normalmente. Dependendo de onde você estiver,
você escolherá sua região. Para mim, é Londres, então é Eust two Não é realmente algo
que você precisa digitar. Você pode deixá-lo em branco,
mas precisará especificar toda vez
que criar algo. Você precisa especificar em qual região esse recurso deve ser criado. Então, para mim, porque a maioria
dos meus recursos estará no oeste da UE, desculpe, eles disseram um ou dois? É Rust 2. Mas sim, porque o EUS One é uma ilha. Então, eu quero tudo
em Londres, sim. Então, é a UE West two. Mas isso é algo
que você
poderá substituir
mais tarde de qualquer maneira Portanto, é apenas para
sua conveniência, mas você pode deixar
em branco, como eu disse. Se você tiver um padrão, não
precisará digitá-lo, mas poderá
substituí-lo Ok, então entre e
envie o formato. Bem, não estou me incomodando agora. Agora, devo conseguir acessar
minha conta da AWS a partir daqui. Então, talvez vamos começar
com a ajuda da AWS. Ele mostrará todos
os serviços que podemos acessar
usando essa linha de comando. Como você pode ver, há basicamente tudo o que você
pode acessar no Console. Você também pode acessá-lo via CLI. E porque não temos
recursos, pode ser complicado, mas podemos usar essa mensagem instantânea porque
criamos um usuário AWS IM e, em seguida,
talvez ajude novamente. Veja quais comandos possíveis
temos para o AWS IM. Esse parece bom. Listar usuários. OK. Listar usuários.
Veja o que fazemos aqui. Tudo bem, pequeno problema
porque esse é um sistema novo. Como eu disse,
não há nada instalado aqui. Diz que não há esse arquivo
ou diretório a menos. Bem, meu palpite é porque
temos que instalar menos. Ahoy. Então, faça isso para instalar menos. OK. Um pequeno soluço Vamos tentar de novo. E como
você pode ver, agora funciona. Ele sabe que temos um administrador de
usuários. Ele nos fornece o ID do usuário e mais
algumas informações,
como quando foi criado ou quando a
senha foi usada pela última vez. Dessa forma, podemos acessar nossa AWS a partir do nosso laptop
usando uma interface de linha comum.
11. Nível gratuito do AWS, chaves SSH e configuração 'manual' do servidor EC2: R Ok, aqui estou eu no meu console da AWS. Ainda estou logado como administrador de usuários de
mensagens instantâneas, e o serviço de que preciso
se chama EC dois, e você pode ver os serviços EC dois, servidores
virtuais na nuvem É exatamente disso que
precisamos. Eu cliquei nele e, como você pode ver, instâncias rodando
zero porque eu
ainda não tenho nenhum servidor virtual. Vamos criar um. Para criar uma, podemos clicar no botão laranja de inicialização da
instância. Vou clicar nele e agora podemos especificar todos os
detalhes do nosso servidor. O primeiro é o nome e o nome realmente não
é importante, mas esse é o nome do servidor Marx Realmente não
importa como você o chama. É só que, você sabe, para que
você reconheça que é seu. E rolamos para baixo
e podemos ver os sistemas
operacionais que estão
disponíveis para o nosso servidor. Amazon Linux é
escolhido por padrão, e o Amazon Linux é como um sistema Linux baseado no Fedora com muitos ajustes da
Amazon, isso é bom Mas também podemos ter o macOS. Podemos ter o Ubuntu Windows. Todas elas são chamadas de imagens de máquinas da
Amazon. Se você clicar nesse botão,
verá
que existem milhares e milhares deles. Mas vamos nos limitar
ao básico, talvez. Vou apenas escolher o Ubuntu. O que é importante sobre o
Ubuntu ou o Amazon Linux que você pode ver que é
elegível para o nível gratuito e falarei
sobre isso em um minuto. Por enquanto, talvez eu
mude para o Ubuntu, que também é elegível para o
nível gratuito. Mas tudo bem
por enquanto. Voltaremos a isso. Eu rolo para baixo. Aqui eu posso escolher a
arquitetura do meu processador. É 886, geralmente é
Intel, AMD ou RM. A AWS tem seus próprios processadores. Eles são chamados de grávitons. Você pode usar isso
se quiser. Mas vou ficar com o X 86. Aqui, você pode escolher o
tipo do seu servidor. Nós temos o Tito Micro. Como podemos ver, Tito Micro, bem, deixe-me
talvez abrir isso Você pode ver que há muitos e
muitos deles disponíveis e rolar para baixo, pois você pode ver
muitos e muitos deles. Mas o que é importante
sobre este é que ele também tem aquele rótulo elegível para o
nível gratuito. Vamos. Veja que este servidor tem uma CPU virtual e
um giga de memória Abaixo estão os preços, quanto custa operá-lo. Mas quero discutir mais
uma coisa, porque voltamos a
esse nível gratuito, quero dizer. Então, vamos rolar para baixo por enquanto, e temos o goleiro. O Keeper é uma chave SSH
que podemos usar para nos conectarmos posteriormente ao nosso
servidor a partir de um local remoto Como este laptop, do
meu laptop, digamos que, se eu quiser me
conectar ao meu servidor, precisarei de um guardião. E como você pode ver, eu
não tenho um goleiro, e diz que eu posso
prosseguir sem um goleiro, mas isso não é recomendado. Isso não é realmente o que eu quero. Quero criar um novo goleiro. Vou clicar nesse botão
e posso chamar esse guardião,
seja o que for, talvez a chave
de Marx. Você sabe o que? Talvez aqui mudemos
para aquele ED 255, blá, blá,
blá, porque essa é a versão mais nova e melhor Mas os dois funcionarão bem. Agora, basta clicar em
Criar Keeper. Como você pode ver, ele também
foi baixado automaticamente. Eu a verei em meus downloads, a
chave de sublinhado de Marx dot p. Essa é
a chave que precisarei para me
conectar posteriormente a este servidor Como você pode ver,
agora foi escolhida a chave do goleiro Marx. Estou muito feliz com Agora temos as configurações de rede, e eu realmente não
quero discutir as configurações de
rede agora porque
esse é um tópico muito amplo. Mas se deixarmos
tudo como está, esse servidor funcionará exatamente como eu quero que funcione de qualquer maneira Então, só queremos ter certeza de que IP público atribuído
automaticamente está habilitado, e isso cria um grupo de
segurança que permite tráfego SSH
de qualquer lugar Dessa forma, poderemos nos
conectar ao nosso servidor. Se aqueles acima são
exatamente como aqui, isso é tudo que eu realmente preciso.
Assim, podemos ir mais longe. Portanto, configuramos o armazenamento. Este é o disco
rígido do nosso servidor. E, como você pode ver, por padrão, ele tem oito giga do que eles
chamam de volume raiz de dois GP O GP two é uma
versão mais antiga das unidades SSD. Podemos mudar isso para o GP três, versão
mais recente, e agora eu realmente quero
voltar para esse nível gratuito Como você pode ver,
também está aqui porque a quantidade de armazenamento que usamos também
afetará esse nível gratuito. E, como você pode ver, diz
que eu posso ter 30 giga de armazenamento do EBS se eu
quiser estar nesse nível gratuito Vou mudar esse oito para 30. Você também pode deixar oito, mas eu posso ter até 30, então vou mudar
para 30. Por que não? Eu quero resumir
isso. Se você tiver escolhido
até 30 giga de volume raiz de GP dois ou GP
três
e, em seguida, se tiver um
tipo de instância
qualificado para o nível gratuito e se tiver sistema
operacional que
também seja elegível para o nível gratuito, esse servidor poderá funcionar por 750 horas por mês
gratuitamente No próximo mês e
no mês seguinte, a quantidade de horas
será redefinida e você terá novas 750
horas para esse novo mês. Se essa for uma nova
conta da AWS e você
tiver um ano de elegibilidade para o
nível gratuito, esse servidor poderá funcionar por um ano inteiro de forma totalmente
gratuita Não vai te custar nada. Contanto que você não exceda nenhum dos
mencionados aqui. Tudo bem, então vamos voltar. Bem, é isso. Não há mais
nada que eu precise aqui. Eu posso simplesmente iniciar a instância. Então eu inicio a instância e meu
servidor está sendo criado, e agora está funcionando. É uma
inicialização bem-sucedida da instância. Posso clicar nesse
identificador para minha instância. Instância significa servidor virtual, se eu clicar nele,
posso ver Mark server, e o status é inicializando Isso significa que ainda não está
totalmente pronto, mas foi criado. Agora, se eu clicar nesse botão, você poderá ver mais informações
sobre esse servidor. E um dos mais
importantes para mim no
momento é meu endereço
IPV quatro público Endereço público significa que
poderei me conectar a esse servidor
de qualquer lugar do mundo. Deixe-me talvez atualizar isso primeiro. Vamos ver se isso
ainda está inicializando. Isso é bom. Mas
mesmo que esteja inicializando, você já pode tentar se conectar
a ele Eu posso clicar neste
botão aqui, conectar. E eu tenho
uma boa escolha aqui. A primeira forma de me conectar
ao meu servidor é chamada de Conexão Fácil de
Instância. Se eu clicar nesta parte inferior, esse console da AWS me levará até esse servidor e, em seguida, me
conectará ao servidor. Eu posso executar comandos agora. Por exemplo, DFH é um comando que me
mostra meu volume raiz, aquele disco rígido que conectamos,
e diz
que 29 giga
e 1,6 giga são usados,
então eu ainda tenho
28 giga então eu ainda tenho Isso faz sentido porque
criamos um volume de 30 giga. Então, se eu for aqui novamente, posso ir para o armazenamento, e podemos ver que na verdade tem
30 GB de tamanho Tudo bem, então é assim que é feito localmente a partir do AWS Console. Mas e se eu quiser me
conectar a ele a partir do meu terminal local no meu laptop?
Deixe-me redimensionar isso Então eu posso digitar terminal. E esse é meu laptop. Este é o terminal do meu laptop
local aqui em casa. Ainda posso ir aqui, clicar em dot Connect, mas
agora tenho algumas dicas. Se formos para o cliente SSH, ele me dirá o que posso fazer para conectar remotamente da
minha casa a este Diz cliente SSH aberto. Bem, meu terminal já
tem ou meu sistema, devo dizer, tem cliente SSH A próxima coisa que preciso fazer
é localizar minha chave privada. Lembra da chave
que baixamos? Quer dizer, ele foi baixado
automaticamente no maxkee dot p. Você pode
mostrá-lo em downloads Sim, está em downloads. Aqui eu tenho que navegar
até minha pasta Downloads. Eu vejo os downloads. E eu posso ver que este é o arquivo que foi
baixado, maxkey dot pm Tudo bem Então, o que
devo fazer a
seguir é executar esse comando. Altere a tecla 400 Marx do modo. Posso clicar nesses retângulos
para copiar esse comando. Volte para o meu 1 segundo.
Deixe-me torná-lo maior. Talvez esteja claro isso. Tudo bem Agora eu posso colar e descentralizar. O que devo fazer a
seguir, conectar-me à sua instância usando
DNS público e um exemplo está aqui Vou clicar nesse
comando na tecla AsHi Marx. Passe aqui e isso deve me
levar ao meu servidor. Este é apenas um aviso padrão. Pergunta se você
tem certeza de que sabe com o
que está se conectando. Esse servidor não é conhecido, então ele pergunta se você
tem certeza de que
sabe ao que está se conectando. Mas tenho certeza porque
esse é o meu servidor, então eu digito Enter e agora também
estou no meu servidor. Se eu digitar DFH, você pode ver exatamente que este é meu servidor porque ele
tem um disco rígido de 29 giga Tenho 28 shows disponíveis. Isso é exatamente o que
vimos há apenas um minuto quando me conectei localmente
usando o AWS Console. Mas desta vez, você sabe, eu posso minimizar isso só
para ter certeza de que está claro. Estou me conectando do meu laptop
que tenho em casa e estou conectado ao meu servidor que
está na nuvem da AWS em algum lugar. E eu posso executar alguns
desses dispositivos. Você pode ver que este é o meu drive. Você pode correr do jeito que quiser. Você pode ver a utilização da CPU, a utilização da
memória e
todas essas coisas legais E se eu executar o cut, vamos ver o lançamento do OS, posso ver que é realmente o sistema operacional
Ubuntu. Ok, isso é como criar o servidor e como se conectar a ele
a partir de um local remoto. Se você parar de jogar
com seu servidor, sugiro que você também destrua aqui, porque
depois de destruí-lo, você também economiza essas
horas nesse nível gratuito. Lembre-se de que você tem 750 horas. Mas se eu agora destruir essa instância,
estado da instância, encerre. Sim, encerre. Estou removendo
esse servidor, como você pode ver, ele está sendo encerrado
porque talvez amanhã eu queira criar dois servidores E se o total de horas de todos os meus servidores não
ultrapassar 750 horas, ainda assim não
serei cobrado
nada, pois são
750 horas que são o valor total de todos os serviços
que eu executo aqui. Assim, posso executar um servidor
continuamente por um mês ou posso executar dois
servidores continuamente por, digamos, 15 dias ou talvez
três servidores por dez dias. Nada disso
excederá 750 horas. Então, eu ainda não vou
ser cobrado de nada. Espero que isso faça
sentido. Tudo bem, e nos vemos
no próximo episódio. Tchau
12. Processo de instalação do VSCode: Neste vídeo, instalaremos o código
VS O código VS é um IDE, o que significa ambiente de
desenvolvimento integrado. Esse ID pode ajudá-lo a trabalhar
não apenas com o Terraform, mas também com o Python
ou outras Ele pode ajudá-lo a trabalhar
com yaml responsável e outros formatos de arquivo Embora não seja
necessário ter o código
VS instalado quando
você trabalha com o Terraform, é uma ferramenta muito útil e leva apenas um minuto
para ser instalado Vamos ver como é feito, e tenho certeza que você também
gostará. É uma ferramenta muito popular e
é muito popular para aasm. Talvez no Windows primeiro, deixe-me abrir meu navegador. Vou apenas
pesquisar o download do código VS. Vamos usar o primeiro link na parte superior, e não poderia ser mais fácil. Você acabou de baixar
a versão para Windows. E veja o downloader, espere alguns segundos. Agora
vamos apenas executá-lo. Eu aceito o
acordo a seguir e adicionarei o ícone na trabalho e também me
certificarei de que ele seja adicionado ao caminho. Ele deve estar marcado por padrão, então deve estar
tudo bem. Em seguida, instale. Se clicarmos em Concluir,
ele também deverá iniciar o código VS. Isso é
o que parece. Como você pode ver, ele tem
alguns destaques, alguns recursos de preenchimento automático e muitos outros recursos úteis Como eu disse, vale a
pena instalá-lo. Mas agora vamos dar uma
olhada na instalação do Linux. Esta é minha distribuição do Ubuntu. Novamente, vou
abrir meu navegador. Mas você sabe o que,
antes de fazermos qualquer coisa, talvez eu também deixe eu abrir a
linha de comando e sempre
devemos realmente executar
a atualização Get. pronto para obter
o upgrade, por precaução, mas parece que
estou atualizado, então posso fechá-lo e
agora fazer o download do VS code. Escolheremos o primeiro T novamente
no topo e agora,
em vez do Windows, escolhemos o Ubuntu porque
essa é a minha distribuição. Você pode ver que também é um gerenciador de
pacotes para MAC. não vou passar
pelo processo no MAC porque é
exatamente o mesmo. É muito básico.
A única coisa é que meu Ubuntu está funcionando em
paralelo no meu Isso significa que eu tenho que escolher a versão
RM deste pacote. Então eu clico neste ARM 64 Debian. Sim. Vou clicar nisso.
Está sendo baixado. Então eu posso clicar nele, instalar o
software, abrir. Potencialmente inseguro, pois é
fornecido por terceiros, mas eu sei que é seguro,
então vou instalá-lo E precisamos da senha do Sudo. E diz que está se preparando. Agora o ícone mudou, então acredito que está tudo pronto. Feche, feche e eu apenas
pesquisarei o código VS. Podemos dizer que ele foi
instalado corretamente, então basta abrir e teremos a mesma janela, com
exatamente a mesma aparência do Windows. Isso é tudo sobre o processo de instalação
do código VS.
13. Instalação da extensão VSCode: O código VS agora está instalado. Vamos apenas adicionar um
pequeno recurso. Como vamos
trabalhar com o Terraform, adicionaremos a
extensão Terraform ao nosso código VS Essa é a verdadeira força,
o verdadeiro poder do código VS. Você tem essas extensões. Quero dizer, você clica nesses
quatro pequenos quadrados aqui, diz extensões Então, eu clico nele e você
encontrará muitas e muitas extensões
diferentes, dependendo do que você
deseja trabalhar. Por exemplo, aqui, você
tem algo para Python. Você pode ver que ele foi baixado
151 milhões de vezes, e o Gitans é outro em
que você pode se
interessar Mas agora estamos apenas
procurando o Terraform. E você encontrará não um
, mas também muitos deles. E você pode experimentá-los. Quer dizer, um deles pode
ser melhor que o outro, e eu pessoalmente usei os dois
primeiros. Você pode ver que um é
de Anton Kulikov e o outro é diretamente Então, hoje, vamos experimentar
aquele oficial
da HashiCorp Você pode ver na análise
que ele tem apenas 2,5 estrelas, mas não sei por que,
porque na verdade não é ruim. Eu trabalhei com ele e descobri
que funciona conforme o esperado. Então, vamos instalá-lo. Basta
clicar no pequeno botão Instalar e pronto. Foi
instalado. Depois de um tempo, isso
está concluído e também lhe dirá
o que faz com essa extensão. Diz destaque de
sintaxe e preenchimento automático para terraform.
Isso é perfeito. É exatamente disso que precisamos. Você verá
como fica quando começarmos a usá-lo. Isso significa que agora estamos prontos para começar a trabalhar com o terraform
14. Criando espaço de trabalho e processo de configuração de provedor de terraforma: Temos o código VS. Temos a extensão de terraform
do código VS Agora vamos preparar nosso espaço de trabalho onde salvaremos todo o nosso trabalho Por exemplo, você
pode abrir um terminal e decidir que estou em
casa paralelamente Isso é bom. O que está aqui? Acho que não há
nada interessante. Vou criar uma nova pasta e
vou chamá-la de terraform. A terraforma. Então, na minha pasta pessoal, terei uma pasta
chamada terraform Este será meu espaço de trabalho.
Vou simplesmente fechá-lo. Aqui, podemos clicar no
ícone superior, o explorador, e
clicar em Abrir pasta. E abriremos a pasta
que acabamos de criar,
a do Terraform Vamos abri-lo, e ele deve estar vazio porque
acabamos de criá-lo. Sim, acredito que este é meu dispositivo. Talvez eu o torne maior e possamos configurar
nosso provedor. Eu já mencionei anteriormente que o provedor é essa ponte. Isso conecta o Terraform
ao espaço em que você deseja criar essa
infraestrutura e queremos trabalhar com a AWS, precisamos do provedor da AWS Para fazer isso, vamos pesquisar no Google qual
deve ser a aparência desse provedor da AWS. Eu serei o provedor do Google Terraform
AWS. No topo, temos o provedor
da AWS, HashiCor. Vamos clicar nisso
e pronto. Eles dizem que é assim que é feito, mas também têm
o recurso aqui. Ainda não vamos
criar um recurso. Estamos interessados apenas
no próprio provedor. Então, deixe-me copiar essa parte. Vamos lá, veja. Agora
vamos voltar ao código VS. E na minha pasta, tenho
aqui pequenos ícones Novo arquivo, e vou criar um novo arquivo
e vou chamá-lo de provedor. Vou adicionar a extensão dot TF. Assim que fiz
isso, dê uma olhada, o ícone mudou à esquerda
porque se eu clicar em Enter, tenho um novo arquivo e o código VS detectou exatamente aquela extensão de código VS que
instalamos. Essa extensão detectou
o arquivo terraform, que também podemos ver aqui
no canto inferior direito É possível ver que estamos
trabalhando com o Terraform. Deixe-me agora colar a parte
que copiei desse site. Esta parte dirá ao Terraform
com
o que estamos trabalhando e observe que você pode ter vários fornecedores Talvez você trabalhe com a AWS, mas talvez com o Azure também e talvez com o Proxmox Você pode colar aqui
vários provedores,
mas, no nosso caso,
vamos trabalhar apenas com a AWS, então esse é o único
provedor de que preciso. Mas é possível
especificar mais de
um provedor aqui. E aqui diz, configure
o provedor da AWS. Talvez você já reconheça essa região parcial
é algo que
já especificamos anteriormente quando
trabalhamos com
grupos de mensagens instantâneas e usuários de mensagens instantâneas, especificamos a região da AWS
e eu especifiquei a região oeste da UE duas. Deixe-me pressionar Command S no Mac ou controles no
Windows, seria. Comande S para salvar isso e
eu clicarei nesse terminal. Eu direi um novo terminal.
Eu vou abrir aqui. Agora, se eu digitar AWS configure, isso é algo que
já fizemos no passado. Configuramos a chave de acesso, configuramos a chave secreta, que é como usuário e senha. É isso que o
Terraform usará para acessar a nuvem da AWS Mas, se eu clicar em Enter novamente, também
especifico a região
padrão. EUS dois é Londres, na verdade, mas talvez você queira criar seus recursos em uma região
diferente, ou talvez até eu queira criar esse próximo recurso que
vamos criar, talvez eu queira
tê-lo em outro lugar. É assim que posso substituir
tudo o que especifiquei aqui. Se eu deixar essa
configuração como está, isso significa
que meu
recurso, por exemplo, servidor será criado
no Leste dos EUA. Então, se eu removê-lo, ele usará
o valor padrão, que é EU west two.
Espero que isso faça sentido. Também havia uma saída, mas não dissemos qual é a saída padrão na qual
estamos interessados. O que eu vou fazer, porém,
vou igualar aqui. Vou deixar a entrada, mas também corresponderei ao que tenho
como região padrão. Mas vou lembrar que
este é o lugar onde posso substituir esse valor Então, comande S novamente,
e pronto. Temos nosso espaço de trabalho. É essa pasta terraform e temos a
configuração do provedor salva
15. Arquivo de bloqueio do Terraform: Agora vamos falar sobre o comando
terraform init. Terraform nele é
o primeiro comando
que queremos usar se
for um novo espaço de trabalho e nunca
trabalhamos com o terraform anteriormente Então, temos que
inicializar tudo. Deixe-me executar este comando e você verá o que quero dizer. Basicamente, acabei de
executar o Theraform em. Isso é tudo o que é.
Vamos pressionar Enter. O que você pode ver é que está
inicializando o back-end
, inicializando os plug-ins do
provedor e nos dirá
tudo o que faz Você pode ver que a instalação do
Hashicur já está pronta. Não demora muito,
mas o que você pode ver aqui é que o provedor foi
instalado, foi instalado. É a versão 583 ponto um. Veja que o Terraform
criou um arquivo de log. É chamado de terraform Log HCL, e podemos ver esse arquivo aqui Lembre-se de que tínhamos apenas uma pasta
terraform e um arquivo. Mas dê uma olhada agora.
Temos outra pasta. É uma pasta oculta do terraform. Existem mais alguns arquivos e também temos
esse log do terraform Então, nessa pasta, Terraform baixou
todos os binários necessários para trabalhar com provedor
da AWS e o terraform
registra as informações do terraform Qual versão desses Podemos ver que é a
versão 583 ponto um. Isso porque a restrição que
demos ao Terraform é que deveria ser a
versão cinco ou superior Baixamos a
versão 583 dot one. O que quero dizer é que,
se acessarmos o arquivo do provedor, podemos ver que declaramos que precisamos da
versão do provedor AWS que seja superior à versão
cinco pontos zero. Então, o Terraform baixou o
mais recente, que é 5831. Portanto, essas são simplesmente
informações adicionais sobre os binários que estão
nessa pasta de pontos do Terraform
16. Crie o primeiro servidor usando o Terraform: Isso é ótimo.
Agora devemos estar prontos para criar nosso primeiro servidor na
nuvem usando o Terraform Eu entrei na minha conta da AWS. A região que mencionamos
já está aqui, então nós dois somos Londres. Inicialmente, no conflito de
fornecedores, tínhamos o Seast One, que era North Virginia, mas quero criar meus
recursos perto de onde moro Então, o mais próximo para mim
é Londres, apenas dois. Então, isso é basicamente
o que temos no arquivo dot tf do nosso provedor Eu disse que os quero
na região Ust two, e já inicializamos
nosso provedor Terraform AWS Portanto, ele deve ser
capaz de funcionar com a AWS agora. Então, como faço para criar um servidor aqui? Como podemos ver, não
temos instâncias. Instâncias significam servidores virtuais, e o servidor virtual também
é chamado de EC two na AWS Elastic
Compute Cloud, e tudo o que criamos
na AWS é chamado de recurso Então, o que eu posso pesquisar no Google agora, eu posso pesquisar no Google Terraform,
EC two resource E o primeiro link
diz instância da AWS. Bem, isso é exatamente
o que eu preciso. Na verdade, se rolarmos para baixo, veremos muitos exemplos de como podemos criar
uma instância na AWS. Mas vamos voltar
ao topo. Exemplo básico usando a pesquisa de AMI. Mas você sabe o que? Vou
simplificar ainda mais. Nem vamos usar a
pesquisa de AMI. Vou apenas codificar a AMI. Vou te mostrar o que quero dizer. Basicamente, precisarei
disso, cerca de cinco linhas de código, e vou
visitar meu MC para copiá-lo. Voltarei ao meu código VS e criarei outro
arquivo aqui, novo arquivo. Vou chamá-lo de servidor. TV de pontos. Novamente, arquivo terraform. Vou colar
aqui. O que é isso? Em primeiro lugar, a primeira
palavra é recurso. Como eu disse, tudo o que queremos criar é chamado de recurso. A segunda parte é o
tipo de recurso
e é uma instância da AWS. Instância significa
máquina virtual ou, em outras palavras, nuvem de computação
elástica,
fácil de instanciar É assim que a AWS chama isso de forma simples. Isso significa que vamos
criar um servidor virtual, e esse é o nome. Eu
posso chamá-lo de qualquer coisa. Isso talvez seja mudar isso. Sem web, talvez não seja servidor web. Eu quero chamá-lo de servidor
Mark ou Marx. Eu posso chamá-lo de qualquer coisa.
Realmente não importa. A AMI é algo
que eu mesmo posso especificar. O que é AMI? Já
lidamos com a AMI Não tenho certeza se você se lembra,
mas se usarmos a AWS, estaríamos criando um
servidor manualmente. Em seguida, clicamos na instância de
inicialização,
e é aqui que escolhemos nosso sistema operacional e
escolhemos o Ubuntu lá Cada sistema operacional aqui
terá o ID da imagem da máquina Amazon. Esse é o identificador
de imagem de máquina da Amazon. AMI é 05 blá, blá, blá. Você também pode ver aqui que
cada sistema operacional,
por exemplo, Red Hat, terá um identificador de
imagem de máquina Amazon
diferente. Se você for para o Ubuntu, talvez eu queira construir meu servidor com base no sistema operacional
Ubuntu. Esse é o identificador que eu preciso, e eu posso simplesmente copiá-lo
e colá-lo no meu código. Eu só tenho que adicioná-lo aqui. Preciso adicioná-lo como uma
string do tipo de dados de string, o que significa que preciso usar aspas
duplas e usar Command V para colar o ID da imagem da máquina
Amazon. Em seguida, está o tipo de instância, que é configurado para T
três micro por padrão. Isso é o que copiamos, quero dizer. Mas se voltarmos novamente
para essa conta da AWS, podemos lembrar que
estávamos falando de
três níveis elegíveis quando
estávamos criando uma conta da AWS. Verificamos que o T three Micro, T three Micro não tem
essa etiqueta elegível para o nível gratuito. Isso significa que pagaremos por isso. Se você tem uma nova conta da AWS, você tem esse nível gratuito. Então, eu sugeriria
usar o T two Micro em vez disso, porque isso faz parte dos serviços elegíveis de nível
gratuito. Então, vamos voltar e
eu vou mudar esse T três micro para T dois micro. E então as tags, essa
etiqueta de nome é simplesmente o que você
colocaria aqui onde estávamos escolhendo um nome para nossa instância.
Então eu vou mudar isso. Você pode deixá-lo, é claro, mas vou mudar para quê? Primeiro servidor Mex. Tudo bem. E agora eu
só faço o Command S e salvei
tudo o que preciso para criar meu primeiro servidor.
17. Planejamento do Terraform e aplicação de comandos: Ok, temos
tudo o que precisamos. Então, como criamos esse servidor? Vamos primeiro voltar à nossa AWS. Deixe-me voltar para mostrar
o número de instâncias. Como você pode ver,
não temos instâncias em execução, o que significa que
não temos servidores virtuais. Se eu clicar nele,
você também precisará
verificar se as regiões estão
incorretas. Vamos criar
nosso servidor em Londres, que é o EUS dois. Então,
vamos monitorá-lo. Vou deixar como está, e não temos instâncias
em execução. Posso até mesmo remover isso, o que me
mostrará todas as instâncias, mesmo que estejam interrompidas, mas ainda não temos nenhuma. Então, agora vou voltar ao meu código para o código VS,
para o meu terminal. Talvez eu esclareça isso. E o primeiro comando que eu talvez queira executar é chamado de plano Terraform E o plano Terraform me
mostrará
tudo o que será construído
na nuvem da AWS, mas não aplicará
esses recursos, o que significa que
são apenas informações para mim Deixe-me executar este comando e você
verá o que quero dizer. Eu clico em Enter e o
plano está sendo criado. Tudo bem, esse é o plano.
Deixe-me torná-lo maior. O que diz? Diz que o servidor
Mark será criado. A AMI será essa. Isso porque
especificamos isso. É a AMI do Ubuntu. O tipo de instância
é T two micro. E o nome será
Mark first server, e tudo mais, o Terraform diz que será
conhecido após a aplicação Ainda não sabe
o que vai ser. Depois de aplicarmos isso, só então descobriremos
qual é o valor, por exemplo, do IP
público, etc Se continuarmos,
o plano é adicionar
um recurso porque estamos criando
uma máquina virtual, zero para alterar e
zero para destruir. Veremos isso mais tarde
sobre o que ele faz. Deixe talvez. Agora, se eu usar a seta para cima, em vez do plano de terraform, posso executar o Traform apply O que o Apply faz é basicamente executar o plano de
terraform de qualquer maneira, antes de tudo, mas depois
veremos a diferença Deixe-me clicar em Enter.
Vou clicar em Enter. Podemos ver exatamente o mesmo plano comando Terraform plan, mas agora ele me pergunta: você
quer realizar
essas ações O Terraform executará as
ações descritas acima. Somente sim será
aceito para aprovação. Se eu disser sim agora, Terraform criará
um servidor virtual para mim na nuvem da AWS É disso que precisamos. Então, deixe-me clicar em Enter e vamos
ver o que acontece. Vamos esperar alguns segundos e ele diz que o servidor
está sendo criado. É isso mesmo. 13 segundos. Temos o identificador da
instância, que é o identificador do
meu servidor virtual Você pode ver que termina
com oito CE. Vamos voltar à nossa AWS
e atualizá-la. Dê uma olhada, oito
IDs de instância CE. Este é meu servidor. Ele ainda diz inicializando verificação de
status,
mas já está lá O estado da instância está em execução, e todas essas informações,
como DNS
público, IP público etc., lembre-se Terraform não conseguiu
descobrir o que seria,
porque não
especificamos esses detalhes, porque não
especificamos esses detalhes, simplesmente
escolhidos aleatoriamente pela É isso mesmo. Essa é a nossa
instância em funcionamento. E se você estiver interessado,
deixe-me esclarecer isso novamente. Agora acontece se eu executar o
terraform apply novamente. O que você acha que vai
acontecer? Vamos dar uma olhada. Vou pressionar Enter, Terraform,
verifique o que está no código? O que há nesses arquivos. Você pode ver que há um
servidor que queremos ter. E esse servidor
já está funcionando. Terraform pode comparar o que está
na nuvem e o que está
no código aqui E se o
estado desejado corresponder, isso é chamado de declarativo Você declara o que
deseja ter na nuvem. Eu quero ter um servidor, e esse servidor já
está lá.
Está instalado e funcionando. Portanto, o terraform diz que não há mudanças. Sua infraestrutura
corresponde à configuração. Tudo o que configuramos aqui já
está na nuvem, então não há nada
a fazer, e é
muito importante entender isso . Vamos criar mais
desses arquivos com recursos
diferentes
e, se um deles estiver
ausente, por exemplo, terraform recriará apenas o
que está Portanto, a infraestrutura
corresponderá à configuração novamente. É sempre o estado
desejado, sim, e esse estado agora está
meio que confirmado. Portanto, não há nada que
o terraform possa fazer.
18. Comando de destruição do Terraform: Então, temos nossa instância.
Está instalado e funcionando. Sim. Instância, quero
dizer servidor virtual. Se eu atualizá-lo agora, verificação de
status também será alterada Diz que ambas as
verificações foram aprovadas. Minha instância está em execução
e está tudo bem. Mas e agora se eu quiser
remover minha instância? Eu não quero que esteja
funcionando por mais tempo. Eu quero destruir essa instância. E lembre-se, quando
fizemos isso manualmente, escolhemos o estado da instância,
encerramos, excluímos a instância Mas em terraform, eu uso
o comando destroy. Então eu simplesmente digo Traform destroy. E terraform
destroy simplesmente removerá tudo o que
temos em nosso código Deixe-me executá-lo para mostrar que
você clica em enter. E antes que destrua qualquer coisa, ele nos perguntará se é isso
que realmente queremos fazer Você realmente quer
destruir todos os recursos? Bem, temos apenas um para
destruir, como você pode ver, porque ele também cria um plano, mas desta vez é
um plano de destruição. E se rolarmos mais para cima, podemos ver que o servidor AWS
instance Mark será destruído com essa AMI, mas você pode ver que agora o terraform
contém muito mais informações sobre essa instância porque seja qual for a nuvem da AWS
atribuída a nós, Terraform está ciente
de todos esses valores Este é nosso
IP público, etc. Então, se essa é a instância que
eu quero destruir, eu simplesmente digo sim, e o clique em Enter diz
destruindo essa instância Oh, demorou um pouco, 41 segundos, mas você pode ver que
agora foi destruído. E se eu voltar ao
console e atualizá-lo, ainda
podemos ver essa instância, mas o estado é encerrado E isso desaparecerá
depois de um tempo, mas isso é apenas uma
confirmação de que essa instância acabou
de ser removida. Então, digamos que agora eu queira criar
rapidamente outra instância. Se eu aplicar o Terraform
novamente, direi que sim. Outra instância está sendo
criada para mim pelo terraform, mas essa instância
terá um identificador diferente Isso foi rápido, 13 segundos, e agora podemos ver que
termina com zero EA. Então, se eu voltar, atualizar novamente, agora teremos duas entradas, mas apenas aquele
EA zero está em execução e o
anterior está encerrado É assim que você cria e destrói recursos
usando o terraform Deixe-me destruir
este também, porque eu não preciso dele
instalado e funcionando. Eu vou dizer destrua. Então, sim, nesta
nova instância zero EA também está sendo destruído, o que significa que em breve terei duas instâncias
declaradas encerradas Este, por algum motivo,
demorou muito mais, 1 minuto 31 segundos para ser destruído, mas acabou sendo destruído. Muito fresco. Podemos
ver duas instâncias, mas ambas foram encerradas.
19. Crie uma VPC da AWS com o Terraform: Agora vamos pensar sobre isso. Criamos
esse servidor na AWS, e esse servidor tinha algum endereço IP público e
privado. De onde vieram seus
endereços? O
endereço IP privado é, na verdade, parte da VPC e
parte de uma sub-rede Por causa da AWS, vamos voltar para a AWS e deixar eu
duplicar essa guia A AWS cria uma
rede padrão para nós. Toda a rede é criada
para nós em segundo plano porque se eu não sou
engenheiro de rede e quero, por exemplo, executar
um servidor web, talvez eu não esteja preocupado com
toda a rede por trás dele. Em seguida, a AWS
colocará esse servidor
na VPC padrão em
alguma sub-rede padrão Vamos pesquisar por VPC. Portanto, atenda a nuvem
privada virtual VPC. Esse é basicamente um espaço onde tudo o que seus
recursos
irão será colocado, a menos que você especifique o contrário.
E é isso. Você pode ver o ID da VPC, você pode ver o IPV quatro,
senhor, que é o prefixo IP Portanto, nosso servidor tinha um IP privado atribuído a partir
desse prefixo IP E temos uma tabela de roteamento, a opção HCP, blá, blá E se eu duplicar novamente, você pode ver essa VPC, se clicarmos nessa VPC, você também verá três
sub-redes criadas dentro dessa VPC e nosso servidor será alocado Você pode ver a sub-rede
Est dois A, dois B e C. Vamos clicar em um deles,
talvez A, e eles
terão um prefixo IP diferente Novamente, esse é um prefixo IP
menor. É um prefixo que se encaixa nesse
prefixo maior da Eu sei que não é um
treinamento da AWS e é um
treinamento de rede de computadores, mas eu só quero que você
saiba que, por padrão, nosso servidor
simplesmente será colocado
na VPC padrão e em
uma dessas sub-redes Mas isso não significa
que tenha que ser assim. Podemos criar nossa própria
VPC, nossa própria sub-rede e podemos afirmar que
queremos que nosso servidor seja colocado em uma
dessas sub-redes que
vamos Mas o que é ainda mais interessante e é isso que eu realmente
quero mostrar aqui é que o terraform terá que resolver
algumas dependências, e eu sei que pode
ser um pouco confuso Nesse estágio, não
se preocupe com isso. Você entenderá o que quero dizer quando começarmos a trabalhar com isso. Vamos voltar talvez para o VPC. Podemos ver uma VPC. É apenas aquele padrão e tem sidra de
172 30 100 barra 16 Mas vamos
criar nossa própria VPC. Então eu volto para minha terraforma. Talvez eu crie um novo arquivo. Vou chamá-lo de vpc dottf e agora podemos
pesquisar no Google como criar Quer dizer, vou pesquisar no Google
TorraformRSolves,
AWS VPC, AWS VPC O primeiro, o topo,
é o que eu preciso, temos alguns exemplos. Eu poderia usar este, mas
posso ver que o segundo também tem
um nome, então isso é algo
que já está incluído. Então, talvez
eu use isso. Vou apenas copiá-lo aqui,
clicando neste botão, voltarei ao meu código
e colarei aqui. Talvez façamos isso menor. O bloco de sidra é
essa sidra IPV four. A VPC padrão tem 1723 100
e, nesse código,
temos 100 00s Está tudo bem. Podemos
deixar como está. VPC, vou chamá-lo de não meu, mas vou mudá-lo talvez
para Mark ou você sabe o que? Meu VPC, M underscore VPC,
algo assim. Então, temos locação de instâncias. Não sei por que
eles adicionaram isso. Se voltarmos ao recurso VPC, se rolarmos para baixo, você
terá uma referência de argumento Basicamente, mostra o que
você pode adicionar aqui,
o que você pode especificar. E, como você pode ver, a tendência da
instância é opcional, então
não precisa existir. E de qualquer forma, o padrão é o padrão. Se não tivéssemos nada aqui, a tendência da instância seria definida como padrão de qualquer maneira.
Mas isso não importa. Pode ser deixado como está. Mas o nome do meu VPC, o nome que
será mostrado na AWS, na verdade, vou mudá-lo para
meu PC, algo parecido Vou comandar S para
salvá-lo e, apenas para testá-lo, voltarei ao meu servidor. Mas o que eu vou fazer,
vou comentar. Então, vou usar o Control
e
a barra para
comentar tudo, vou salvá-lo Isso será visto pelo
Terraform como um comando, então será ignorado
simplesmente porque quero me
concentrar na minha VPC apenas agora e só quero testar
se funciona conforme Vou apenas executar o Theraform Plum, e você pode estar se perguntando,
a outra coisa é, você pode estar se perguntando,
Mark, você não tem o provedor
nem nada, o que é? Quero dizer, lembre-se de que o provedor
é, na verdade, um arquivo separado e não importa
que seja um arquivo separado. O problema é que estou criando um arquivo
separado para tudo, arquivo
separado para
servidor, arquivo separado para VPC e para provedor Mas, na verdade, você poderia
ter toda a configuração em apenas um arquivo chamado
qualquer que seja o ponto TF Não importa o que você chama. Ele só precisa ter a
extensão do ponto TF. Mas o Terraform realmente
lê tudo o que está dentro dessa pasta no espaço de trabalho
que criamos
na pasta Terraform Não importa se
sua configuração está em um arquivo ou em 100 arquivos. O Terraform lerá todas
as informações de todos os arquivos primeiro e só
então começará a agir Ele começará a criar tudo o que
você tem nesses arquivos. Também é muito importante
entender isso. Eu também queria salientar que
existe um novo arquivo chamado
Terraform TF state Ele foi criado quando
criamos nosso servidor e
falaremos sobre isso em breve porque também é um arquivo muito
importante. Mas, por enquanto,
estamos apenas criando a VPC e o provedor já
está especificado
em um arquivo separado, mas ele será
lido pelo Terraform De qualquer forma. Tudo bem. Então,
vou executar o plano Terraform Vamos ver se vai funcionar, e parece que funciona. Um a acrescentar, porque eu
comentei sobre o servidor, isso significa que estou apenas criando DVPC, podemos ver a dezena de 0016, a
tendência da instância é padrão, e talvez vamos dar uma
olhada no ID conhecido após Além disso, o ARN é conhecido
após aplicar, etc. Há muitas
coisas que só são conhecidas depois que esse
recurso é aplicado. Quero dizer, ele é enviado para
a AWS e, na verdade,
criado lá. Esse ID é muito importante porque precisaremos dele mais
tarde, quando criarmos nosso sub. Por enquanto,
deixe-me repetir o comentário, mas agora vou me inscrever. Vou dizer que sim desta
vez, um a acrescentar. Sim, essa é minha VPC, e ela deve ser
chamada de minha VPC quando vemos na nuvem da AWS, então sim Não deve demorar muito.
Já está pronto há 2 segundos. Então, se voltarmos
às VPCs e
atualizarmos esse site,
essa página, agora, eu tenho minha própria VPC, chamada de minha VPC, e a sidra é dez.00 slash Esse ID de VPC é o que eu mencionei. VPC ID, Terraform, disse
que será conhecido após aplicação porque isso é algo
que a AWS cria para nós, e o Terraform
só pode lê-lo quando esse recurso for realmente
criado e estiver na nuvem
20. Crie uma subrede e uma árvore de dependência do Terraform: Por que eu estava falando
sobre esse ID de VPC se ainda não o usamos
em nenhum lugar Bem, isso é porque
vamos usá-lo agora, quando criarmos uma sub-rede que fará
parte dessa nova VPC Porque se atualmente
acessamos sub-redes, você pode vê-las aqui à esquerda,
em Se usarmos sub-redes,
atualmente, temos três sub-redes,
mas mesmo analisando os prefixos
IP, podemos ver que eles pertencem a essa VPC padrão
porque os endereços IP começam
com 17231 ou algo assim porque Também podemos ver
aqui que todos eles pertencem à mesma VPC, nuvem privada
virtual Criamos nossa própria VPC, mas ainda não temos nenhuma
sub-rede Essa é minha VPC, mas não tem nenhuma sub-rede.
Vamos criar um. Vamos voltar ao
nosso código e talvez antes de criar outro
arquivo chamado sub-redes, talvez editemos aqui primeiro Eu vou te mostrar o
motivo disso. Eu vou ao Google. Agora estamos procurando recursos do Terraform A AWS deve estar neste link. E é assim que posso
criar minha sub-rede. Mas se verificarmos
um pouco mais, você também pode especificar o ID da zona de
disponibilidade. É opcional, mas é
algo. Bem, 1 segundo. Acredito que, se
voltarmos às instâncias, quero dizer, sei que não são os
resultados que estamos procurando, mas se prosseguirmos, acredito que dê uma olhada.
Essa é a sub-rede Mas também tem uma zona de
disponibilidade especificada. Na verdade, ele também tem uma interface de rede
separada, na qual
podemos especificar o endereço
IP do nosso servidor, e essa é
a configuração do próprio servidor. Você sabe o que? Isso é legal. Vamos usar tudo isso, na verdade. Então, primeiro eu preciso da minha sub-rede. Vou copiar exatamente isso, mas vou
primeiro colar aqui. Eu quero te mostrar uma coisa. Adicionamos uma sub-rede aqui, configuração, chamada Minha sub-rede Tudo bem. Nós podemos deixar isso. Podemos chamá-lo do que quisermos. Mas onde esse
nome é usado? Se eu passar o mouse, ele
diz o nome de referência. Esse
nome de referência, por exemplo, essa sub-rede M é usado se tivermos que referenciar
essa parte, esse recurso em
algum outro recurso E olha, isso já
acontece aqui nesta linha. Por exemplo, quero
criar uma sub-rede,
mas essa sub-rede faz parte de VPC
mais ampla ou maior e, na verdade, quero que minha sub-rede faça parte dessa VPC,
desse recurso O que quero dizer é que, se eu chamar meu
recurso, por exemplo ,
Mark, esse nome de referência também
precisará ser
alterado aqui. Alguém pode pensar:
o que está acontecendo aqui? Por que isso é feito assim? Lembre-se desse ID: o ID da VPC
só é conhecido quando a VPC
realmente existe na AWS O Terraform precisa
criar a VPC primeiro. É preciso esperar até que a AWS
atribua um identificador de VPC, que só então pode ser
referenciado aqui nesta linha Dizemos que queremos que essa sub-rede
faça parte do recurso VPC,
e esse recurso, nós o chamamos Esse é o nosso nome para esse
recurso, nome de referência, e o Terraform precisa apenas de ID
porque a AWS fornecerá ID, ARN, blá, blá, muitas coisas
diferentes, mas precisamos apenas referenciar o
ID aqui É por isso que, se formos
para essa instância, podemos ver neste exemplo, só
precisamos do ID. O que quer que eu chame essa VPC, vamos devolvê-la à minha VPC Eu também tenho que mudar
esse nome de referência aqui. Novamente, meu VPC tem que corresponder. Imagine como se eu removesse
essas aspas e colocasse um ponto aqui,
algo parecido. AWS VPC, meu ID de VPC,
AWS VPC, dot, meu VPC
e, em seguida, eu só preciso Eu sei que é confuso. Eu entendo isso. Tudo isso
é feito dessa maneira, então o Terraform entende
que terá que
criar uma VPC primeiro, e saberá disso
porque essa VPC referenciada posteriormente aqui
nesta linha Ele cria a chamada árvore de
dependências. Tudo bem, eu sei. Agora bloco de
sidra para minha sub-rede Digamos que eu queira
10.0.1.0 slash 24
e, como criamos tudo
no EuWST e não no Oeste dos EUA, preciso alterar aqui a zona de disponibilidade para
EuWST para
A porque temos
três zonas de disponibilidade, A, B e C, e o nome, preciso alterar aqui a zona de disponibilidade para
EuWST para
A porque temos
três zonas de disponibilidade, A, B e C,
e o nome,
vou mudar para minha sub-rede. Vou executar o comando S. Vamos executar o teraform apply,
talvez fique claro primeiro E vale a pena
adicionar Aha porque na verdade
não destruímos o
VPC. O VPC ainda está lá Só adicionará
sub-rede nesse caso. E você verá
que a sub-rede
também terá seu próprio identificador e também será conhecida
somente após a aplicação Então, talvez por enquanto, vamos executá-lo, sim. E foi adicionado. Isso é 1 segundo. Ainda mais rápido e mais rápido. Então, agora, se eu for para sub-redes, devo ter mais uma sub-rede,
minha própria sub-rede . E aqui está. É chamado de minha sub-rede. É parte da VPC, minha VPC, e o prefixo IP
é dez.01 Mas antes que eu esqueça, vamos agora destruir todos eles. O Terraform destrói,
e eu digo, sim, dois para destruir, porque desta vez
destruiremos a VPC e a
sub-rede Sim. Dê uma olhada no plano. O VPC será destruído
e observe que o Terraform sabe qual é o ID agora porque esse VPC
foi criado Ele termina com 166e
e, de fato, meu VPC E a sub-rede também tem seu próprio ID, mas parece
completamente diferente Termina com 71 B. Então, se eu for às sub-redes,
podemos ver que, de fato, é É esse identificador, e os dois
serão destruídos agora. Então eu digo que sim, Enter.
Temos dois destruídos. Então, se eu for e atualizar, voltaremos à VPC e às sub-redes
padrão.
Se eu também atualizar, Se eu também atualizar, teremos apenas as
21. Crie servidor, sub-rede e VPC e mais sobre dependências: Agora, se voltarmos ao nosso código, lembre-se de que comentamos
sobre esses servidores. Deixe-me descomentá-lo com Control forward slash e o comando S.
Estávamos vendo esse exemplo na instância da AWS. Temos nosso VBC. Já temos nossa sub-rede
e, nessa instância,
podemos ver que ela tem algo
adicional, a interface de
rede, na qual
podemos especificar qual
IP privado precisamos atribuir a
esse servidor virtual Vamos copiar essa parte também. Vamos voltar ao nosso código. Por enquanto, vou colar
abaixo para torná-lo maior. Agora, eu já
tenho uma instância da AWS. A única coisa nova aqui realmente
é essa interface de rede. Então, deixe-me copiar essa parte e eu a
colarei na minha instância. É isso mesmo. Isso significa que eu
não preciso dessa coisa. Livre-se dessa porção. Então, o que temos agora é
exatamente o que costumávamos
ter , mas com essa interface
de rede adicionada. Essa interface de rede, novamente, tem aquela dependência que o
terraform precisa resolver Porque o ID da interface de rede é o ID ponto a
ponto da interface de rede da
AWS. O que isso significa é que terraform precisa criar
esse recurso primeiro Observe que, quando eu
destaco essa parte, código
VS também destaca
essa parte. Ele sabe que a extensão que
instalamos para o Terraform, sabe
que essas duas estão relacionadas Da mesma forma, se eu
destacar essas quatro, essas são essas dependências Sim. É por isso que é
muito mais fácil trabalhar quando você adiciona essa extensão de
terraform Novamente, se eu alterar o
nome desse recurso para, digamos, Mark
, também terei que
alterá-lo aqui para Mark. O Terraform sabe
que precisará
criar essa
interface de rede primeiro porque esse ID só será conhecido depois que essa interface
for criada E agora, com IP privado, eu posso
escolher o que eu quiser, mas ele tem que
fazer parte da minha sub-rede Então 1001 talvez 20, eu digo. Por que dizia 10.0.1.20? Porque, novamente, essa interface de
rede tem outra referência, outra dependência, e
é a sub-rede da AWS, minha sub-rede Se voltarmos para a VPC, podemos ver esses resultados aqui, sub-rede
da AWS, minha sub-rede Podemos ver que está em um arquivo
diferente, mas, como eu disse, não
importa. O Terraform lerá
todas as informações, tudo o que está
dentro desse espaço de trabalho, dentro dessa pasta primeiro Essa sub-rede tem um
prefixo de 10010. Isso significa que Ids, meu endereço
IP privado, deve estar dentro desse escopo e 100 pontos
120 está dentro desse escopo. Então, talvez eu
mude o nome para minha interface. Como podemos ver, temos
cada vez mais dependências. Primeiro, ele terá que me
deixar talvez comandar S e o terraform
terá que primeiro
criar a VPC porque
a VPC já está
referenciada Depois de criar a sub-rede, essa sub-rede é referenciada
aqui na interface de rede
e, em seguida, essa interface de rede
pertencerá ao meu servidor E estamos prontos para correr.
Mas antes de fazermos isso, deixe-me voltar para a VPC
porque essa sub-rede, também
podemos simplesmente
cortá-la daqui, e eu vou comandar S, e vou criar um novo arquivo, e vou chamá-lo Dot TF e eu vou colar
aqui. Na verdade, você sabe o que? Mostrarei
como é fácil agora criar uma segunda
sub-rede, se quisermos Onde quer que
você esteja, o que quiser copiar, o que quiser criar, basta
copiá-lo com base abaixo. Por exemplo, vou
chamá-la de minha sub-rede também. Ela fará parte da mesma VPC. Talvez eu mude o
bloco de sidra para 10.0.2.0,
e talvez eu queira ter essa sub-rede também em Talvez eu mude para B.
Também vou chamá-la de minha segunda sub-rede, talvez ou algo parecido E essa eu chamarei minha primeira sub-rede, esse trabalho
feito vai comandar S. Agora vamos ver se eu
errei alguma Vamos esclarecer tudo e talvez eu preencha o formulário de inscrição. Como lembramos, a inscrição
também criará um plano de qualquer maneira. Vamos ver se
está tudo bem ou não. Eu vou executá-lo.
Parece que está tudo bem. Diz cinco para adicionar. E o que vai acrescentar, vamos voltar ao topo. E o que você pode
achar
interessante, diz primeiro que
criaremos o servidor Marx. Sim. Bem, isso não é verdade.
É simplesmente neste estágio que ainda não resolveu essas
dependências,
mas você verá muito
em breve o que quero dizer Se formos mais longe,
temos uma instância, sim, temos esse servidor, então ele também criará uma interface de
rede para esse servidor.
Como podemos ver, está aqui. Isso criará a sub-rede. Isso criará uma segunda
sub-rede e VPC. No entanto, quando o executamos, eu digo,
sim, se você se concentrar,
eu clico em Enter. Ele iniciará a partir da VPC
e, em seguida, fará a sub-rede, como você pode ver, e
criará a interface de rede Então é a segunda sub-rede porque segunda sub-rede não foi
referenciada nessa interface Então, não importa quando é
criado, aquele segundo. Mas a primeira sub-rede teve que ser criada antes da criação da
interface E o servidor foi criado logo
no final porque todas essas dependências
precisavam ser resolvidas O servidor tinha essa interface de
rede, que fazia parte dessa sub-rede Essa sub-rede fazia parte da VPC. É por isso que tinha que
fazer isso em ordem. Tudo bem. Vamos verificar se
temos tudo o que queríamos. VPC, vou atualizar. Na verdade, eu tenho minha VPC com esse prefixo IP.
Nós vamos para sub-redes Eu atualizo.
Temos duas sub-redes, minha primeira sub-rede
e segunda sub-rede E se usarmos as
instâncias, vamos atualizar. Temos o primeiro servidor de Mark. Bem, não é o primeiro, mas essa é a nossa etiqueta. Mas você pode ver que ele tem IP
privado antes do
endereço de 100120, que é exatamente o que
especificamos aqui em
nossa parte do servidor Esse é o nosso IP privado.
Tudo funciona conforme o esperado, então destruímos coisas. Eu vou limpar e vou
dizer: Theraform destroy. E também será
removido em alguma ordem, verifica
tudo e diz cinco para destruir. Sim, é
exatamente isso que queremos fazer. Então eu digo que sim, e
começa com a sub-rede dois, que não é referenciada, depois marca o servidor com a interface Agora, a interface em si, depois a sub-rede
referenciada por essa interface e
a VPC no final Portanto, a ordem é exatamente oposta à que
era quando aplicamos essa infraestrutura.
Espero que isso faça sentido.
22. Arquivo Terraform tfstate: Portanto, sabemos como configurar
vários recursos e como um recurso pode
depender de outro. Como aqui, essa interface
de rede
só será criada quando
tivermos criado a sub-rede Mas como o Terraform sabe o que já foi
criado na nuvem da AWS e o que não é? Isso é tudo sobre esse arquivo de
estado Theraform TF. Quando você cria
algo na nuvem,
a AWS produz um
monte de informações sobre esse recurso e, em
seguida, a Taform as armazena aqui localmente Nesse caso, nós o armazenamos
localmente em nosso computador. Como podemos ver, esse
arquivo agora é muito curto. Mas agora vamos recriar nossa infraestrutura
novamente na nuvem Acabei de executar o Terraform apply e veremos como esse arquivo de estado do
TF muda Então, basta pressionar Enter e diz cinco para adicionar,
porque adicionaremos sub-rede
VPC e a
interface de rede mais nossa instância Eu digo, sim, isso
parece certo. Então, clique em Enter e essa
infraestrutura está sendo criada. Você já pode ver as
diferenças. Algo está sendo
gravado nesse arquivo. Agora que o processo está concluído, vamos dar uma olhada no que está
nesse arquivo de estado Tf Como podemos ver, é muito
mais longo agora. Olha isso. Muitas e muitas
informações sobre os recursos que acabaram de ser
criados em nossa nuvem da AWS. Por exemplo, posso ver que
há muitas informações sobre minha VPC,
por exemplo, qual é
o bloco de sidra Qual é minha tabela de roteamento, ID,
lista de acesso à rede, etc O fato é que você geralmente não lê essas informações
diretamente desse arquivo. Não é realmente fácil de usar. É só que a quantidade de informações é basicamente avassaladora Em vez disso, você faria isso,
normalmente aqui, deixe-me esclarecer. Você funcionaria como um estado de
terraform, e então poderíamos ajudar muito. Queremos informações
sobre nosso arquivo de estado,
esse arquivo de estado do TF Então, temos
subcomandos como list, show, remove, push, etc Vamos ver o que a lista faz. Lista de estados do Terraform.
O que temos aqui são nossos recursos porque podemos ver que
temos uma VPC, duas sub-redes, interface e a instância Se eu quiser obter mais
informações sobre minha instância, por exemplo, posso
fazer o Terraform state, show e agora vou
copiar exatamente isso E exibirá todas as informações
sobre minha instância, sobre meus
servidores virtuais na nuvem. E agora, todas essas informações
são mantidas neste arquivo de estado do TF Então, se eu correr novamente,
deixe-me limpar novamente. Se eu executar agora o Terraform apply, o que você acha que vai
acontecer? Vamos apresentar. O Terraform estava atualizando
o estado, o que significa que entrou em contato com a AWS usando as chaves de
API que criamos Eu verifiquei o que já está
lá na nuvem, então ele compara essa
saída com o que tem aqui neste arquivo de estado do TF e, como tudo
combinava perfeitamente, ele nos disse que, sem alterações, sua infraestrutura
corresponde à configuração Este arquivo de estado do TF atualmente é mantido aqui localmente
no meu laptop O problema é que
geralmente acontece, especialmente em
empresas maiores, que você não é a única pessoa
responsável pela manutenção dessa
infraestrutura. Você pode ter, sei lá, cinco ou dez pessoas trabalhando, mantendo e atualizando
a mesma infraestrutura O que você faz normalmente é
enviar esses arquivos, como arquivos dot Tf
do servidor
provedor e pc dot Tf Você os manteria remotamente no GitLab ou no GitHub, digamos, para que todos os outros membros pudessem
baixar esses arquivos, para que todos ou cada membro tivessem exatamente o mesmo
código Mas agora vamos pensar no que
acontece se eu e um
dos outros membros começarmos a mudar alguma coisa
nessa infraestrutura. Por exemplo, eu quero mudar algo
em relação ao meu servidor enquanto outra pessoa quer mudar algo
em relação à sub-rede Isso pode causar
um problema porque meu servidor depende do
que está na sub-rede Se algo na
sub-rede mudar, isso afetará meu servidor porque lembramos
que temos essa interface de rede,
e essa interface de rede depende da configuração da
sub-rede Então, basicamente,
o que precisamos que apenas
uma pessoa por vez trabalhe
nessa infraestrutura. Mesmo que ambas as pessoas
façam algumas mudanças, somente uma pessoa por vez
deve ter permissão para alterar
a infraestrutura. E uma vez que uma alteração
é concluída, somente a próxima mudança pode acontecer, e podemos usar
esse arquivo de estado TF para conseguir isso. Quero dizer
, usá-lo como uma solução para isso Se trabalharmos em equipe, esse arquivo de estado do TF
não será mantido no meu laptop Ele deve ser mantido em algum lugar
remoto, onde possa ser atualizado constantemente
e bloqueado Portanto, se uma pessoa trabalha
na infraestrutura, essa pessoa
bloqueará esse arquivo para ninguém mais possa ler
ou gravar nesse arquivo. A outra pessoa
teria que esperar até que eu, por exemplo, terminasse minhas alterações. Este arquivo é atualizado, só então eu o desbloquearei
e a outra pessoa poderá assumir o controle e bloquear o arquivo
novamente. Como fazemos isso? Bem, há muitas maneiras de
conseguirmos isso. Mas, como estamos
trabalhando com a AWS, a solução mais comum é
manter esse arquivo no St bucket. É uma
solução de armazenamento simples dentro da AWS, onde podemos armazenar os arquivos. Eu posso te mostrar
como costumava ser. Precisamos que
novos segmentos, como backend do
terraform, o chamem É um bucket T dentro da AWS, e esse é o nome do
bucket em que
queremos armazenar
nosso arquivo de estado TF Queremos armazená-lo
criptografado. Ou você sabe o que? Talvez devesse ser criptografado, mas deixe-me removê-lo por enquanto. Talvez queiramos dar
uma olhada nisso. Então, vou simplesmente removê-lo. Mas deveria ser criptografado,
basicamente, sim. Na região EUS também, porque todo o resto
é mantido lá, então por quê? Então, como eu disse, você precisa ter esse mecanismo de bloqueio
para esse arquivo. Costumávamos ter uma tabela separada do
DynamoDB. O DynamoDB é como um
banco de dados em miniatura, digamos assim. E quando alguém abre
um arquivo no banco de dados, esse arquivo inteiro é bloqueado. Esse foi o mecanismo
que usamos
para bloquear o
arquivo de estado do TF no bucket ST Mas isso também significava
que precisávamos
manter mais uma coisa em
nossa infraestrutura da AWS, que era o DynamoDB Com o terraform mais novo
da versão 1.10, você pode verificar sua versão
executando a versão raform Você vê eu em 110 pontos quatro. um ponto a dez, há uma
nova maneira de fazer isso e você pode substituir esse DynamoDB por um arquivo
de log Você pode ver que
a extensão do formulário nos ajuda com isso. Temos esse preenchimento automático. Vamos clicar nisso e
queremos que seja verdade. Queremos usá-lo, esse mecanismo de
bloqueio de arquivos de log dentro do próprio Tree. Tudo bem. Deveria ser isso. Vou apenas comandar
S. Agora eu preciso que esse bucket
exista na AWS. Deixe-me copiar esse valor porque
eu não tenho esse bucket. Vamos criar
um rapidamente e eu irei para ST Bucket, que é como um espaço reservado na AWS, onde você pode simplesmente armazenar coisas. Eu tenho alguns baldes. Não me lembro para
que servem, mas vou criar um novo. Vou colar esse nome
aqui e rolar para baixo. Também é aconselhável
ativar o controle de versão do bucket. Portanto, todas as versões mais antigas do arquivo TF State
serão preservadas Se alguém sobrescrever esse arquivo com
algo incorreto, você poderá
voltar para a
versão anterior desse arquivo Mas isso depende de
você. No entanto, é aconselhável ativá-lo. E eu acabei de criar o balde. O bucket está aqui, então eu
volto ao meu código e,
o que preciso fazer,
preciso executar o Terraform nele
novamente para inicializar
o repositório inteiro Então eu executo o Terraform nele. Digite inicializando o back-end. O Terraform percebeu que
vamos mudar toda a configuração
do back-end que o estado do TF Eu me perguntei, você quer
copiar o estado existente
para o novo back-end? Sim, é isso que eu quero fazer. Tudo bem. Inicialização inicializada
com sucesso Então, de agora em diante, se
eu for até o meu balde, se eu clicar nele, podemos ver
por que esse produto está aqui Isso é o que eu adicionei
aqui na chave. Por exemplo, você pode
chamá-lo de prod dev test, ou pode chamá-lo de qualquer coisa,
porque talvez eu não saiba, você deseja manter o arquivo de estado do
TF para vários ambientes
no mesmo bucket ST Então, talvez você não queira
manter apenas o estado do terraform TF, mas também informações para qual
ambiente ele serve É por isso que adicionei prod, mas é opcional,
depende de você, na verdade Então, agora, se eu for até aquele produto, esse arquivo de estado do terraform TF será mantido aqui
a partir de agora E se eu começar a trabalhar nisso, se eu fizer alguma alteração, esse arquivo de log
impedirá que qualquer outra pessoa faça as alterações ao
mesmo tempo que eu. Somente uma pessoa poderá
fazer as alterações por vez. Então, espero que faça sentido.
23. Variáveis: Agora vamos falar sobre variáveis. Quase toda linguagem de
programação tem o conceito de variáveis,
e a linguagem de configuração HCL da HashiCorp não tem o conceito de variáveis,
e a linguagem de configuração HCL da HashiCorp
HashiCorp não
é diferente. Também tem o conceito
de variáveis. Então, deixe-me primeiro destruir
ou executar o Terraform. Destrua porque
esquecemos de destruí-lo. Além disso, você pode adicionar aprovação automática. Não perguntará se
você quer fazer isso. Sim, tenho certeza de que quero fazer isso, para que possamos adicionar a aprovação automática Vamos destruir essa
configuração, essa
infraestrutura anterior, e vamos falar sobre
essas variáveis. Vamos dar uma olhada na configuração do
servidor. Eu tenho essa instância. Eu tenho a
interface de rede para isso. Talvez nessa situação, não
esteja muito claro por que
gostaríamos de usar variáveis. Deixe-me mudar para o que costumávamos
ter anteriormente. Tivemos
algo parecido. Nosso conflito foi
muito mais simples e tivemos várias instâncias Vou copiar isso. Cole
aqui e isso será, vamos chamá-lo de Miser short Meu servidor um. Meu servidor dois
e também aqui meu servidor um. Meu servidor dois. Se você tivesse alguma experiência com
alguma linguagem de programação, sabe que
usaria variáveis em qualquer lugar onde tivesse informações
repetidas. O que é essa
informação repetida aqui? Bem, eu também posso ver. É AMI porque a
temos aqui para o servidor número um e o servidor número dois, além do tipo de instância. É T two Micro. Porque se eu quisesse
alterar esse tipo de instância, teria que ir até cada linha e
substituí-la por T T ou T três. Ou etc. Bem,
com dois servidores, talvez não seja um
problema, mas e
se eu tiver 1.000 servidores. Então é aí que podemos
usar essas variáveis. E como faço para usar as variáveis
Terraform? Com HCL. O que posso fazer é copiar,
por exemplo, minha AMI, copiá-la e substituir esse valor VR dot e vamos
chamá-lo de meu tipo de instância. Eu poderia chamar minha
variável também de AMI, mas quero torná-la diferente. Então eu quero que você
veja claramente o que está acontecendo aqui. E então, no topo, talvez, eu adicione outra linha. Vou chamá-la de variável, e minha variável tem que estar
entre aspas, e chamei minha variável,
meu tipo de instância, e
usarei colchetes E dentro desses colchetes, posso especificar o valor padrão Eu digo que padrão é igual, vou copiar e colar minha No entanto, quero
tê-lo como uma string, o que significa que
adicionarei aspas Novamente, basicamente
temos a mesma coisa, mas agora ela está armazenada como variável, e agora posso substituir todas as
linhas que têm AMI pelo valor
dessa variável ou pelo nome dessa
variável, quero dizer. Vamos substituir esse tipo de
instância também. É T dois microatualmente. Então, vou dizer que quero criar uma nova variável e percebi que fiz
algo estúpido. Na verdade, não
é o tipo de instância, AMIs, meu sistema operacional de instância,
digamos, vamos chamá-lo de sistema operacional de
minha instância e sistema operacional de minha instância porque
é sistema operacional, AMI, é sistema operacional, e eu quero chamar meu tipo de instância, meu
tipo de instância Sim. Isso é mais preciso. Ou talvez eu o chame apenas do tipo EC two, então é diferente. E também aqui, EC two type. Agora eu crio outra variável que
chamei de EC two type e especifico o valor
padrão aqui. Ou você sabe o que? Talvez eu
não. E se eu não fizer isso? Vamos ver. Comando S, eu salvei tudo isso
e vejo o que acontece. Eu tenho o valor padrão para a AMI, mas não tenho o
valor padrão para o tipo EC two. Então, deixe-me esclarecer novamente e
vamos executar o Terraform apply. Vamos entrar. Podemos ver Terraform encontrou a
variável para AMI, mas não conseguiu encontrar o valor para a variável chamada EC two type Então, ele simplesmente
nos pergunta: Insira um valor. Para que você deseja que essa
variável seja configurada? Então eu estou dizendo T dois micro. Ao clicar em Enter, o Terraform agora deve ter
tudo o que precisa E diz, novamente, cinco para adicionar, e se verificarmos o que
ele deseja adicionar, podemos ver que ele deseja
adicionar o tipo de instância em o tipo é T dois micro.
Tudo bem, mas eu digo não. inscrição foi cancelada e eu quero especificar
esse valor padrão Então default é igual a T dois micro
e se eu comandar S novamente, se eu executar a reforma aplique
agora, agora ele tem todas as
informações de
que precisa, não precisa me
perguntar o valor dessa variável Vai direto para esse estágio. Tudo bem, mas eu digo não novamente porque isso é tudo que eu
queria dizer sobre variáveis.
24. arquivo tfvars explicado: Agora, quando falamos
sobre as variáveis, há mais um arquivo no qual
você pode estar interessado. E é um arquivo com extensão
TF vars. Então, deixe-me mostrar que você cria,
vamos chamá-la talvez de Terraform, mas usaremos a extensão dot
TF vars Não TF, mas TF Vars, sim. E esse arquivo serve apenas
para manter as variáveis. Mas alguém pode perguntar, Mark, mas já temos as
variáveis, sim. Nós os temos aqui.
Então, qual é o objetivo de outro arquivo que
manterá apenas variáveis? Bem, existem vários motivos pelos
quais você pode querer
usar as barras TF Digamos, e se eu tiver uma variável que seja muito importante
para mim, como senha. E então talvez você também tenha o valor
padrão. Minha senha segura. Talvez seja algo que você não queira manter no Github ou no Gitlab e compartilhar com
qualquer pessoa ou qualquer pessoa que tenha acesso ao Gitlab também verá Então, o que você
pode fazer é deixar em branco. Foi o que fizemos inicialmente com o tipo
EC. Lembre-se de que talvez você possa manter essa senha em branco e, em vez disso, ir até as varas do TF e dizer apenas que senha é igual à minha senha
segura, e talvez queira
manter esses TFRs em outro lugar em algum tipo de cofre ao qual
apenas
alguns engenheiros ou talvez apenas Portanto, ninguém mais será
capaz de obter essas informações. Mas também, talvez você queira que os TARs simplesmente possam
substituir de forma
fácil os valores padrão que
você tem nas variáveis Então, deixe-me mostrar o que quero dizer. Talvez remova essa senha e vamos ficar com
o que já temos. Vou remover isso.
Temos dois tipos EC. Além disso, talvez eu queira apenas alterar o tipo EC
two ou apenas copiá-lo. A notação é
um pouco diferente. Acho que você já percebeu. Se formos para Tavars, vou colar aqui Não estou dizendo que é variável e não está entre aspas porque já
sabemos que é variável,
é Tavars, é
só Vou dizer apenas iguais
e, em seguida, como uma string, vou manter talvez R quatro grandes. Isso significa que eu quero sobrescrever
o que está neste arquivo. O valor padrão é Tito micro, mas eu quero sobrescrever
com R para obter um valor grande Deixe-me apenas comandar
S. Vamos ver,
esclarecer, e se eu executar Terraform apply, vamos
ver o que acontece Temos cinco para
adicionar, mas o que é? Podemos ver que ele quer
criar a instância, mas desta vez, o
tipo de instância é realmente R para grandes. Tenha cuidado com isso, porque
esse não é o nível gratuito, você teria que
pagar por isso, sim. Mas se eu disser que sim, as
instâncias foram criadas e se as verificarmos diretamente na
nuvem, posso ver que elas não são
mais Tito micros Eles são realmente grandes. Mas, por segurança,
deixe-me destruí-los imediatamente. Então, isso pode me custar, mas será uma
quantia insignificante de dinheiro Formulário, destruição, aprovação automática.
25. Crie 100 servidores com o meta-argumento 'count': Agora, digamos que eu não
queira criar um, mas quero criar 100
servidores no Terraform Como eu faço isso? Bem, talvez, antes de tudo, vamos nos
livrar disso. Eu não quero
tê-los tão grandes. Ou talvez você saiba o que?
Vou apenas remover o arquivo inteiro. Não precisamos
mais disso. Vá para o lixo Portanto, Tito micro é nosso valor padrão de
três níveis para o tipo de instância. Ok. E agora eu quero
criar 100 servidores. Alguém pode dizer: Sim, Mark, você só precisa copiar isso umas 50 vezes e isso
lhe dará 100 servidores. Bem, essa pode
ser a solução, mas definitivamente não é algo que
queremos fazer no terraform Na verdade, eu nem
preciso de dois deles. Isso já é informação
repetida. Na verdade, só preciso de um
recurso, a instância da AWS. Eu posso chamá-lo apenas de meu servidor. Podemos deixar isso como está, e eu posso usar algo
chamado meta-argumento. Deixe-me comandar para salvar isso, e vamos usar o Google Terraform Meta-argumento. E eu não preciso
depender do meta-argumento. Eu realmente preciso contar o
meta-argumento. Mas talvez vamos clicar neste. E na
documentação do terraform, você pode ver muitos meta-argumentos
diferentes E o que me interessa
é, como eu disse, contar. Embora também pudéssemos usar
para cada um
, vou usar a contagem desta vez. Então, o que eu quero que você note
também é que, ao mesmo tempo, você nem sempre
quer acessar o recurso de terraform AWS O que você realmente deve
fazer é ler documentação
do terraform e ver algumas outras coisas
que são possíveis de
alcançar no terraform, mas não
são específicas da AWS Terraform fornece documentação
perfeita para cada bit e também
fornece exemplos como aqui, create four Se eu usar a contagem quatro, ela simplesmente criará quatro instâncias EC two
semelhantes. Pode ser mais fácil do que isso? Conte quatro, eu não
preciso de quatro. Eu preciso de 100. O que estou dizendo no meu
código é que a contagem é igual a 100. Isso é tudo. 100 servidores
serão criados. Mas se voltarmos a esse meta-argumento
count, você também pode ver
algo parecido. Índice de contagem de pontos.
Sobre o que é isso? Índice, também é uma coisa específica da
linguagem de programação. Cada item simplesmente criado
pelo Terraform terá seu número de índice Podemos usar isso para ter nomes
diferentes para cada um
dos servidores que serão criados caso contrário,
todos terão o mesmo nome. Talvez eu mostre a você, em vez de tentar explicar,
que isso fará sentido então. Vou copiar esse índice de contagem. Vou voltar aqui e
vou chamá-lo de meu servidor, não um, mas é claro que
tenho 100 servidores. Não quero que todos
sejam chamados de meu servidor único. Vou usar talvez o traço e
depois esse índice de contagem, algo parecido, ou talvez
até algo parecido Realmente não
importa. Deixe-me apenas comandar S. Vamos
ver o que acontece. Deixe-me esclarecer. Nós aplicamos o
Terraform Antes que o façamos, vamos
voltar às instâncias e encerrar toda essa porcaria São muitas coisas. Agora, deixe-me atualizar isso. Só queria dizer ou mostrar que não temos
instâncias em execução. Quero dizer, temos três, mas
eles estão encerrados agora. Estávamos jogando no vídeo
anterior com eles. Portanto, se eu escolher o estado da instância igual à execução, não
devo ter nenhum Vamos remover esse filtro. Temos três encerrados. Vamos voltar ao nosso código. Talvez eu o
torne um pouco maior, aplique o
terraform e pressione
Enter. Vamos ver o que acontece. Diz 103 para adicionar. Isso parece certo
porque temos 100 instâncias, o que significa 100 servidores virtuais mais VPC mais duas sub-redes Se verificarmos o que está aqui, VPC é sub-rede dois, sub-rede um, e então
temos nossas instâncias E esse é esse
número de índice de que eu estava falando. Por exemplo, esse é 99. Eu só queria
verificar se são dois micro. Sim, tudo bem. Se formos
mais para cima, temos 98, etc., e
alguém dirá: por que é 99 e não 100 Acho que não consigo
subir tão longe. Não, eu não posso. Mas o fato é que
esse número de índice começa a contar a partir de
zero por padrão. Então zero é realmente o
servidor número um, e 99 é o servidor número 100. Sim. Bem, eu poderia
mudar para mais um, mas realmente
não adianta e
começaria de um e
terminaria em 100. Esse não é o meu ponto de vista,
na verdade. Vemos que ele
criará 100 servidores. Então eu digo que sim, clique em Enter e eles começam a
ser criados. Vemos que é
aleatório, como um número. Ele não começa do
zero, um, dois, três, ele simplesmente tenta criá-los todos ao mesmo
tempo ou em lotes, como vários servidores primeiro
e vários servidores depois Talvez se formos, esteja concluído. Podemos ver 13 segundos, já
devemos ter alguns. Se eu atualizar rapidamente aqui, tudo bem, podemos ver alguns
deles já funcionando Então, vamos voltar ao nosso código. Temos 68 aproximadamente 22
segundos 13-22 segundos, eu posso ver o
tempo de criação de cada servidor, como aqui, 22 e 13 Mais e mais deles foram criados. Então, se eu já voltar 28, eu atualizo, 37 atualizo Recebemos cada vez mais
servidores sendo atualizados novamente. Oh, 99 está sendo criado. Esse é o último. Tudo bem Isso não teve sucesso,
o que é engraçado porque diz erro de API, limite de
VCPO excedido Você solicitou mais VCPUs do que seu limite atual de
VCPUO Eu não estava ciente
disso, para ser honesto. Eu não sabia que existia
algo assim. Eu costumava criar 100 servidores no passado.
Isso não foi um problema. Diz que agora entre em contato com a Amazon. Fácil de solicitar
um ajuste para esse limite. Então parece que
temos algum limite. Então, quantos servidores
foram realmente criados? Vamos dar uma olhada.
Oh, parou aos 37. Hmm. Mas você sabe o que?
Esse não era o ponto. Não vamos solicitar
algumas mudanças nos limites. Meu argumento é que é simplesmente muito fácil usar esses
meta-argumentos de contagem ou outros meta-argumentos para criar várias coisas do mesmo
tipo ou de tipo semelhante. Temos 37 instâncias, então isso é bom o suficiente para mim. Eu realmente não preciso que esse
limite seja ajustado. Então, eu apenas digo, terraform
destroy, aprovação automática. Entre e destruiremos
o que temos lá. Ao destruir, você
verá que a terraforma
destruirá apenas; agora
você pode ver 37 para destruir O Terraform sabe quantos
desses servidores foram criados e sabe exatamente
quantos devem ser
destruídos porque mantém todas essas informações
no arquivo de estado do TF Podemos ver que eles agora
foram destruídos. Então, se voltarmos e
atualizarmos, não devemos ter nenhum. Quero dizer, eles foram encerrados. Então, novamente, estado da instância, se verificarmos, por
exemplo,
o estado em execução , não devemos ter nenhum e não temos nenhum. Isso é legal.
26. Como usar o Terraform com o GCP, Azure e outros provedores: Então, agora você tem algum conhecimento sobre
terraforma. A questão é: o que você
faz sobre isso? O que você faz a seguir? Sim? Como você aprende ainda mais
sobre terraform O fato é que a
documentação do terrafom é realmente tudo o que você precisa. Porque se você voltar, quero dizer, eu poderia analisar
todos os exemplos aqui, como configurar em IS,
interraform, etc Mas qual é o objetivo?
Você tem aqui toda a documentação de
que precisa e ainda tem os exemplos
prontos para você. Não vejo o
sentido de fazer isso. Em segundo lugar, eu nem
sei se você quer
trabalhar com a AWS usando o Terraform E se você, por exemplo, quiser usar o GCP, como o
provedor do Google Cloud, quero dizer, como você usa o
Terraform com Bem, a resposta é:
basta acessar o Google e dizer recurso Terraform,
GCP, provedor do Google Cloud
e, em seguida, instância, por exemplo O que eles chamam de instâncias
de dados? É uma instância do Google Compute.
Basta clicar nisso. E você tem os exemplos aqui, como usar o Terraform
com os serviços do Google Temos a instância de
computação do Google. É chamado de padrão. Você pode alterar esse nome para
o que quiser. O tipo de máquina é um pouco
diferente e é padrão, mas é muito
fácil de descobrir. Você só precisa verificar
no Google Cloud o que exatamente é e de qual tipo de
instância você precisa. Você tem a zona,
você tem as páginas. Tudo é muito parecido com o que costumávamos ter na AWS. Basicamente, basta
consultar a documentação, examiná-la e brincar com ela. E, como mencionei anteriormente, não confie apenas no que está disponível para um
determinado provedor, verifique a documentação do Terraform
para ver o que está disponível e o que não está, como
fizemos com esses
meta-argumentos de contagem Porque essa é basicamente
a documentação de todo o Terraform e você
pode ver os recursos, mas você pode ver os meta-argumentos Você pode ver os módulos. Os módulos são como
equivalência de funções na linguagem de configuração
Hoshi Cor, na qual você cria um módulo e pode
reutilizá-lo alterando parâmetros Mas não vou passar por isso porque isso não é para
iniciantes e você só
trabalhará
com isso quando trabalhar com uma infraestrutura enorme. Então, talvez você
queira usar módulos. Mas o que quero dizer é
que, a partir daqui, você pode ir aonde quiser, trabalhar com o que quiser. Você só precisa usar
esta documentação e ela lhe dirá exatamente como
você usa esse recurso
específico ou aquela função
ou utilitário específico
na era. Portanto, lembre-se de que, se você não quiser parar aqui
apenas no Terraform, poderá aprender muitas
outras ferramentas de DevOps Se você simplesmente acessar a plataforma automation
avenue.com. Você encontrará treinamento em AWS,
treinamento programação em Python e muitas outras informações.
Se quiser
progredir em direção ao DevOps
ou ao engenheiro de nuvem, esse é o lugar perfeito
para você começar Se você acompanhou este
material e realmente
jogou com a
infraestrutura na AWS, talvez queira adicionar talvez balanceador de
carga,
talvez um
grupo-alvo, etc. Você queira adicionar mais e mais elementos à sua infraestrutura
e brincar com Mas todas as informações de
que você precisa aqui estão
na documentação do terraform com exemplos prontos para você Basta copiar, colar e alterar o que
quiser Espero que tenha sido útil e
obrigado por assistir.