Your Web News in One Place

Help Webnuz

Referal links:

Sign up for GreenGeeks web hosting
April 5, 2022 02:32 am GMT

Terraform - Lanando instncia no AWS EC2 e criando um Bucket no AWS S3

Logo Terraform, EC2 e S3

Utilizar o Terraform com os servios da AWS o casamento perfeito, onde voc ganha muita produtividade e um ambiente seguro. Pensando nisso hoje vamos criar um instncia no EC2 e uma bucket no S3 em conjunto com o Terraform (como dito no ttulo certo?)

Iniciando os trabalhos

Um ponto importante a ser ressaltado que eu migrei meu SO recentemente para uma distro Linux (sim o Ubuntu), ento vocs iro ver bastante comandos UNIX em meus contedos, o que no ir atrapalhar o entendimento creio eu...

Bom ento vamos criar a uma pasta para nosso projeto:

$ mkdir aws && cd aws

O que fizemos com o comando acima foi criar a pasta e entrar na mesma para comearmos os trabalhos.. Temos que criar um arquivo de configurao para o Terraform (voc tem que ter ele instalado no se esquea, aqui tem uns tutoriais meus ensinando como instalar no Linux, macOS e Windows.. mas enfim chega de merchan) ele dever ter a extenso tf:

vi configuration.tf

AWS Services

Agora precisamos conversar no sei se voc est vendo este tutorial para terminar uma task ou para estudar mas em ambos os casos necessrio ter o acesso ao Servios da AWS. Ento para processeguir precisamos de:

  • Provedor: Um provedor de nuvem, AWS no nosso caso
  • Secret Acess Key: Que devemos obter para acessar os recursos da AWS

Para prosseguir precisaremos definir a instncia da AWS, ou seja, AMIR (check no Amazon EC2 AMI Locator), tipo de instncia e tag.

A instncia baseada no Amazon EBS (o que significa que o volume raiz um volume do EBS). Voc pode especificar a zona de disponibilidade na qual sua instncia executada ou deixar o Amazon EC2 selecionar uma zona de disponibilidade para voc. Voc pode pensar em uma zona de disponibilidade como um datacenter isolado. Para criar a instnia abra o console do EC2 e clique e m Lauch Instance para criar e configurar:

Criando Instncia

Configurando nossa instncia, nesta tela so mostradas opes para escolher uma Imagem da Mquina do Amazon (AMI). OS AMIs so modelos de servidor pr-configurados que voc pode usar para iniciar uma instncia. Cada AMI inclui um sistema operacional, e tambm pode incluir aplicativos e servidores de aplicativos.

Para este tutorial, encontre o Amazon Linux AMI e clique em Select.

Amazon Linux AMI

Agora voc escolher um tipo de instncia. Os tipos de instncias compreendem combinaes variadas de CPU, memria, armazenamento e capacidade de rede para que voc possa escolher o mix apropriado para seus aplicativos. Para obter mais informaes, consulte os Tipos de Instncias do Amazon EC2.

Instncia

A opo padro do t2.micro j deve ser verificada. Este tipo de instncia oferece capacidade de computao suficiente para lidar com cargas de trabalho simples. Clique em Review e Launch na parte inferior da pgina.

Podemos revisar as configuraes, armazenamento, marcao e configuraes de segurana selecionadas para nossa instncia. Possumos a opo de personalizar essas configuraes, mas recomendo (e a Amazon tambm) a aceitar os valores padro para este tutorial.

Na prxima tela, seremos solicitados a escolher um par de keys existente ou criar um novo par de keys. Um par de keys usado para acessar com segurana sua instncia Linux usando SSH. A Amazon Web Services armazena a parte pblica do par-chave que como um cadeado de casa. Voc baixa e usa a parte privada do par de keys que como uma chave de casa.

Selecione Create a new key pair e vamos dar o nome MyKeyPair (voc pode escolher o que preferir). Clicamos em seguida, no boto "Download Key Pair".

Key

Depois de baixar a chave MyKeyPair, voc vai querer armazenar sua chave em um local seguro.

Se voc perder sua chave, voc no ser capaz de acessar sua instncia. Se outra pessoa tiver acesso sua chave, ela poder acessar, simples assim. Para saber mais sobre como armazenar sua Key de forma segura sugiro que d uma lida aqui

Finalmentes

Calma estamos chegando no final j, agora precisamos criar uma Bucket no S3 chamado bucket-launched-use-terrafrom-20220304. Lembre-se que o nome do bucket deve ser nico na AWS. Sugiro de digite o cdigo abaixo no arquivo configuration.tf fornencendo a Access Key, Secret Key, regio e o nome do Bucket (eu sei que vai copiar em colar)

#Define keys and regionprovider "aws" {access_key = "YOUR-ACCESS-KEY"secret_key = "YOUR-SECRET-KEY"region = "us-west-2"}#Define ec2 instance resource "aws_instance" "instance1" {ami = "ami-089668cd321f3cf82"instance_type = "t2.micro"tags = {Name = "ubuntu-20.04"}}#Define s3 bucketresource "aws_s3_bucket" "bucket1" {bucket = "bucket-launched-using-terrafrom-20210106"acl = "private" # or can be "public-read"tags = {Name = "Bucket"Environment = "Production"}}

Agora vamos inicializar, planejar e executar nosso cdigo.
A inicializar o terraform ele far a configurao necessria, j o planejamento como ns vamos ver o que vai acontecer na realidade, ele tambm descobrir erros de sintaxe. E, por fim, implantar o cdigo na nuvem. Para isso vamos executar o seguinte comando um por um.

Seguindo o fluxo vamos a inicializao do terraform que far a configurao necessria. Para isso precisaremos executar o seguinte comando:

$ terraform init

Temos que executar o planejamento que como vamos ver o que vai acontecer na realidade e como dito, tambm descobrir seu erro de sintaxe.

$ terraform plan

e por ltimo mas no menos importante vem aplicao que significa que implantaremos o cdigo na nuvem. Vamos fazer isso apenas executando o comando:

$ terraform apply

Ele nos pedir confirmao, e basta digitar "sim" e pressionar o enter para poucos segundos depois nossa infraestrutura estar pronta. Agora podemos fazer login no console AWS e ir para o servio EC2

EC2

E encontraremos o EC2 funcionando. Da mesma forma, podemos para S3 e procure o nosso Bucket:

Bucket

Destruindo a estrutura

Se quiser destruir a infraestrutura acima, podemos simplesmente digitar terraform destroy:

$ terraform destroy

Ele vai solicitar umaa confirmao e basta apenas dizer sim e pressione enter. A instncia EC2 e o Balde S3 que criamos acima devem ser removidos de nossa conta AWS. Mas por via das dvidas bom verificarmos fazendo login no console AWS.

Fontes onde pesquisei esse contedo:


Original Link: https://dev.to/jhonywalkeer/terraform-lancando-instancia-no-aws-ec2-e-criando-um-bucket-no-aws-s3-4i36

Share this article:    Share on Facebook
View Full Article

Dev To

An online community for sharing and discovering great ideas, having debates, and making friends

More About this Source Visit Dev To