AWS - Pràctica (iv)
Ja estem dins la Consola principal. Anem a
Explorem EC2 : Elastic Compute Cloud
EC2 ve de Elastic Compute Cloud. Mitjançant la consola EC2 es poden realitzar totes les operacions amb els servidors.
Serà important el nombre de:
-
Instances: total d’instàncies creades
-
Instances running: instàncies en funcionament
Tipus d'instàncies
A l'hora de crear un servidor, es pot escollir entre diferents models d'instància, que definirà quines prestacions té l'equip.
AWS defineix unes categories principals en funció de la finalitat de l'equip. Entre altres:
PROPÒSIT | TIPUS |
---|---|
General purpose | De propòsit general. |
Compute optimized | Processadors d'alt rendiment. |
Memory optimized | Per ús de molta informació en memòria. |
Accelerated Computing | Acceleradors hardware o co-processadors. |
Storage Optimized | Ús d'E/S intens. Ofereixen Baixa latència d'accés a disc. |
HPC Optimized | Per aplicacions que es beneficien de processadors d'alt rendiment, com ara simulacions grans i complexes i càrregues de treball d'aprenentatge profund. |
Les màquines es classifiquen amb una nomenclatura que les identifica. Hi ha moltes famílies d'equips orientades a diferents prestacions:
Per exemple, la família C5 (Compute optimized):
- c5.large: 2 vCPU's -- 4GiB RAM -- 0,085 $/h -- 0,177$/h Windows
Per a fer pràctiques amb alumnes, amb la família T2 (General purpose) és suficient i més econòmic pel cost per hora:
-
T2.micro: 1 vCPU -- 1GB RAM -- 0,0116 $/h Linux
-
T2.medium: 2 vCPU's -- 4GiB RAM -- 0,0464 $/h Linux -- 0,0644 $/h Windows
-
T2.large: 2 vCPU's -- 8GiB RAM -- 0,0928 $/h Linux -- 0,1208 $/h Windows
Tipus d'instàncies
Les màquines també es poden distingir entre les següents tipologies que afecten també al preu:
-
On-demand: Les màquines es provisionen quan l'usuari ho demana, és a dir, sota demanda.
-
Reserved: Amb antel·lació es fa una reserva d'un equip a mesos o anys vista. Preus més econòmics que on-demand.
-
Spot: Es fan servir instàncies que AWS en aquest moment no necessita i el preu es determina per subhasta, però AWS les pot parar en el moment en què facin falta per exemple per donar servei on-demand. Ideal per treballs en els que es facin servir vàries instàncies i no importi si una d'elles es perd.
Mira aquest enllaç https://aws.amazon.com/ec2/instance-types/t2/ per veure diferents preus de ECs
Mira aquest enllaç https://aws.amazon.com/ec2/spot/pricing/ per veure diferents preus de ECs de tipus Spot
Fixeu-vos com Windows és tres vegades més car.
AMI's
Les AMI's (Amazon Machine Image) són els diferents tipus d'imatges o plantilles de sistema operatiu que proporciona AWS.
-
Un cop s'ha escollit el model d'instància, cal determinar quin sistema operatiu s'hi instal·larà al desplegar-la.
-
Permet crear-se les pròpies AMI's.
-
Ofereix una AMI de Linux creada i mantinguda per AWS, optimitzada i preparada per a la integració amb totes les funcionalitats de AWS.
-
Actualment la versió més recent és la Amazon Linux 2023
-
Té suport fins a 5 anys.
-
Les AMI's es poden trobar en un Marketplace de AWS. Les principals estan disponibles en Quickstart AMI's
Desplegament d'una EC2 Linux
Desplegarem una AMI Linux en una t2.micro.
Crearem una instància que s’anomenarà XXX-Linux-Server-1
, amb una t2.micro i la imatge Linux AMI 2023
i verificarem que s’accedeix per SSH i per web després d'haver instal·lat el servidor Apache. Li associarem el SG creat anteriorment.
-
Anirem a la opció de EC2 - Instance types on podem arribar-hi escrivint la paraula
instance types
al quadre de cerca.Mirarem les característiques d'aquest tipus de instància/màquina: vCPUs, Aquitectura, Cores, RAM, etc.
-
Anirem a la opció de EC2 - Instances on podem arribar-hi escrivint la paraula
instances
al quadre de cerca.Crearem una nova instància amb el botó
Launch instances
-
Cal omplir, entre altres:
-
Name:
XXX-Linux-Server-1
-
Application and OS Images: utilitzarem una imatge de Ubuntu i en el desplegable (AMI) seleccionarem la que ens proposa, que és la darrera LTS (Canonical, Ubuntu, 22.04 LTS, amd64 jammy image build on 2023-09-19).
-
Instance type: t2.micro que ja ens la proposa
-
Key pair (login): cal crear un parell de claus, que després descarregarem, amb els paràmetres tal i com venen però amb un nom:
xyz-key-1
. Se'ns genera un fitxer amb extensió.pem
que cal emmagatzemar ja que l'utilitzarem per connectar-nos per ssh
ssh -i xyz-key-1.pem usuari@ipDelHost
-
Network Settings: Editarem per tal d'assignar-li la subxarxa i el security group:
-
la subxarxa xyz-subnet-1a. En cas contrari el sistema escollirà el que millor li vingui bé a ell.
-
a Firewall (security groups) li assignarem el SG que hem fet anteriorment:
xyz-sg-webSSH
-
-
Storage ho deixarem com està
-
Advanced details: a IAM instance profile cal escollir LabInstanceProfile.
Si no escollim LabInstanceProfile, tindrem accés a la màquina creada.
Aquest és un paràmetre que, una vegada creada la màquina, no podrem modificar.
-
-
Indicarem que volem crear una instància i
-
premem el botó
Launch Instance
Una vegada creada ens obre una sèrie d'opcions per a fer a posteriori.
Mirarem la opció Connect to your instance per saber com hem de connectar-nos-hi via SSH.
- Anirem a la pestanya SSH Client i seguirem les passes.
Si tenim Windows, obrim un CMD, afegim al directori on estem el fitxer
.pem
descarregat i executem el que ens demanissh -i "xyz-key-1.pem" ubuntu@ec2-107-20-124-49.compute-1.amazonaws.com
Al ser, el fitxer
.pem
, una clau privada només ens permet connectar si hi ha pocs usuaris amb accés al fitxer. Cal canviar-ne les propietats de seguretat i deixar-nos només a nosaltres amb accéspodeu executarCACLS xyz-key-1.pem /P UsuariWindows:F
És possible que calgui contestar
Y
en comptes deS
. Cal rebre un missatge de validació al'executar la comanda.
-