EC2
Tipos y clases de instancias EC2
- Las máquinas virtuales en AWS son llamadas instancias EC2
- El costo de las instancias es por hora encendida
- Hay de distintas gamas y tamaños
- Siempre se utiliza una AMI (Amazon Machine Image) como base
- Para levantar una instancia como mínimo necesitamos una AMI, una VPC, un Security Group, un disco EBS y una key de acceso SSH o RDP
modos de uso de las instancias EC2
- On-Demand: Se pagan por horas levantadas, las podemos apagar en cualquier momento
- Reserved: Se reservan a 1 o 3 años. Suelen ser entre un 50~70 % más baratas que las On-Demand
- Spot: Son las más baratas. Se pagan lo que se quiera por encima de un mínimo. AWS las puede apagar en cualquier momento.
Tipos de instacias EC2
- Existen diferentes gamas de instancias EC2 que se diferencian en la relación CPU, RAM, GPU, Red y Almacenamiento
- Se define en el momento de creación de la instancia (m4, c4, t2,…)
- Puede ser cambiado luego, aunque requiere un Stop/Start de la instancia
Security Groups
- Consola EC2 → Security Groups
- reglas a aplicar sobre una instancia EC2
- permite relacionar security groups entre ellas (para no tener que crear reglas 1 a 1 con instancias EC2) como un regla.
- implica que si permitimos el acceso a una Security Group a un puerto, todas las instancias EC2 que se creen con ese SG tendrán ese acceso
Elastic IP Addresses
- IPs públicas asignadas por Amazon
- el método tradicional de asignación de IPs públicas funciona por DHCP (y por lo tanto, cuando apagas y enciendes, cambia)
- la primera IP elástica no tiene coste
- aunque si está reservada y no en uso, tiene coste
Creación de instancias en EC2
- AMIs propias
- una de las que ya existen
- AWS Marketplace
- AMIs de servicios (por ejemplo, Wordpress)
- al crear:
- si indica VPC, Subnet
- tipo de IP pública (si procede)
- en Advanced Details, User data, podemos pasar un script que se ejecutará justo después de instaciar
- p.e, actualizar e instalar apache y php:
#!/bin/bash yum update -y yum install -y httpd24 php56
- añadir storage
- añadir tags (para localizar después las instancias)
- configurar Security Group (crear o usar uno que ya tengamos)
- configurar ssh-key (usar una existente o crear)
- cambiar la IP pública por una elástica
- ir a IPs elásticas, crear si procede y asociar a la instancia
- para conectar via SSH
- ec2-user para instancias Amazon Linux
- ubuntu para otras AMIs de canonical
netstat -lptn
- metadata
- información contenida en la instancia y solo accesible desde la instancia
curl http://169.254.169.254/latest/meta-data
→ muestra que metadatos hay disponibles
Elastic Block Store (EBS)
- volúmenes en AWS
- han de estar en la misma zona de disponibilidad que las instancias
- después de crear el volumen:
lsblk
mkfs ext4 /dev/xvdf
- en la consola EC2 puede verse de una manera (/dev/sdf) pero en la instancia será (/dev/xvdf)
mount /dev/xvdf /mnt
- el volumen se puede sacar de esta instancia y asignar a otra (no haría falta formatear)