Deployments & virtual machines în AWS
În cadrul acestui laborator veți învăța cum să creați mașini virtuale în cadru AWS (Amazon Web Services), care reprezintă o platformă care furnizează servicii de tip cloud computing, baze de date, stocare de fișiere, device farms, etc.
Pentru acest laborator presupunem că avem deja Terraform instalat de la laboratorul precedent. Dacă nu aveți Terraform instalat, puteți urma pașii din laboratorul anterior.
Pe lângă Terraform, avem nevoie de AWS CLI instalat. Pentru a instala, urmați pașii de aici.
Pe lângă asta, avem nevoie de un cont pentru Amazon AWS. După ce ați făcut pașii pentru a avea propriul cont AWS, vrem sa conectăm AWS CLI la consola de AWS.
Pentru a face asta, mergem în AWS și intrăm în secțiunea IAM:
Apoi mergem la "My security credentials":
Următorul pas este să mergem la "Access Keys" și să apăsăm pe butonul de Create New Access Key
:
Păstrați fișierul generat. Rulați comanda aws configure
și introduceți datele generate în fisierul creat anterior (AWSAccessKeyId
și AWSSecretKey
).
Pentru a crea o instanță simplă de EC2 (o mașina virtuală) folosim următorul fișier de Terraform:
terraform {
required_providers {
aws = {
source = "hashicorp/aws"
version = "~> 4.16"
}
}
required_version = ">= 1.2.0"
}
provider "aws" {
region = "us-west-2" # regiunea in care o sa se faca deploy la resurse
}
resource "aws_instance" "app_server" {
ami = "ami-830c94e3" # tipul de masina folosita (ami = Amazon Machine Image)
instance_type = "t2.micro" # tipul de instanta (resursele pe care le are masina)
tags = {
Name = "labAwsTerraform"
}
}
Rulați comenzile cunoscute pentru a face deployment acestei infrastructuri:
terraform init
terraform fmt
terraform plan
terraform apply
Pentru a verifica ca mașina virtuală a fost deployed, căutăm serviciul EC2:
Ajungem în pagina următoare în care vedem că nu avem nicio instanță up and running, deși planul nostru de Terraform a fost executat cu succes. De ce?
Observați diferența de regiuni (Frankfurt, în cazul din imaginea anterioară, față de us-west-2 în Terraform). Pentru a modifica regiunea în care facem deployment la resurse modificăm codul Terraform. În cazul de față, putem să facem click pe Frankfurt și să selectăm us-west-2 (Oregon). În acest moment putem vedea că avem o instanță up and running:
În codul Terraform modificați numele masinii din labAwsTerraform
în testUpdate
. Rulatț comenzile obișnuite pentru a vedea planul. Observați că această modificare nu implică distrugerea mașinii existente, ci doar modificarea in-place.