Buscar (Don't Edit)

lunes, 6 de abril de 2020

Amazon Elastic Compute Cloud EC2


Web Service que provee capacidad de computo en la nube.

Las instancias son la base de EC2. Estas son servidores virtuales que pueden ser adquiridos mediante múltiples opciones disponibles. La estrategia asociada al cobro esta directamente relacionada a las hora de uso de dicha instancia.

Cuando una instancia es lanzada hay que tomar en cuenta 2 factores muy relevantes: El hardware virtual asociado a la instancia así como el software que será cargado en ella.

Se clasifican y diferencian mediante los siguientes factores:

  • CPUs virtuales.
  • Memoria.
  • Almacenamiento(tipo y tamaño).
  • Rendimiento de red.

Las instancias son agrupadas en familias que se definen en base a los criterios antes mencionados. Para cada familia hay múltiples opciones que pueden ser seleccionadas y que son escaladas linealmente. Por ejemplo para la familia m4 podemos considerar una instancia tipo m4.large definida por 2 vCPUs siendo así la siguiente instancia m4.xlarge escala a 4 vCPus y para m4.2xlarge contaremos con 8 vCPUs. Este comportamiento es consistente en todas las familias.

Existe una gran variedad de familias. A continuación mencionaremos algunas de las más populares.

ROptimizadas en memoria RAM.Caches en memoria.
COptimizadas en computo .Computo y Base de Datos.
MBalanceadas.Uso general y aplicaciones web.
IOptimizadas para almacenamiento, I/O.Base de Datos, almacenamiento
GBasadas en GPU.Machine Learning, render de videos.



El rendimiento de red es muy relevante al momento de seleccionar nuestra instancia, este rendimiento se ve incrementado con forme las instancias crecen dentro de una familia. En caso de requerir un desempeño mayor para algunas instancias existe la posibilidad de utilizar el concepto de “enchanced networking”. Su uso reduce el impacto de la virtualización en el rendimiento de red permitiendo la transferencia de un mayor número de paquetes por segundo (PPS) y bajar la latencia. Sin embargo ademas de que la instancia permita el uso de “enchanced networking” estas instancias deberán estar contenidas dentro de una VPC.

Amazon Machine Images AMI

Es el encargado de definir el software que va a estar presente en la instancia al momento de ser iniciada, como es el Sistema Operativo, aplicaciones o software de sistema.

Al momento existe 4 tipos de orígenes para las AMIs

Publicadas por AWSMúltiples distribuciones de Linux,Windows 2008 y Windows 2012.
AWS MarketplaceTienda en línea con instancias que pueden contener software especializado que a su vez puede generar cargos extras.
Generadas desde instancias existentesGeneradas basadas en instancias existentes que ya cumplen con algún tipo de requisito.
Servidores virtuales subidosUtiliza el servicio de AWS VM para importar o exportar imágenes a partir de varios formatos.

Abordar una instancias

Public Domain Name System (DNS) name

Al momento de iniciar la instancia AWS crea un nombre DNS automáticamente que puede ser usado para acceder a la instancia. Este nombre no puede ser especificado por el usuario y persiste solo mientras la instancia este corriendo, así mismo no puede ser transferido a otra instancia.

IP pública

Opcionalmente una instancia puede ser asociada a una dirección IP pública. Esta IP es asignada por AWS de una reserva de IP que administra y no puede ser especificada por el usuario. Persiste mientras la instancia este corriendo y no puede ser transferida a otra instancia.

Elastic IP

Es una clase especial de dirección IP pública que puede ser asociada a nuestra instancias. Estas son persistentes para un mismo usuario hasta que el usuario decida. Está si puede ser transferida entre múltiples instancias (una a la vez) y generalmente es usada en casos de fallas de instancias.

Acceso inicial

EC2 usa criptografía de llave pública para cifrar y descifrar la información de login. Particularmente usa la llave pública para cifrar y la privada para descifrar. Este par de llaves es conocido como key pair la llave pública es conservada por AWS y la privada por el cliente. Al momento de crear nuestra instancia la consola nos pregunta si requerimos generar un key pair nuevo o si vamos a usar un par de llaves ya existente. Es importante administrar correctamente este archivo.

El usuario inicial para instancias con Sistema Operativo Linux es ec2-user, y para hacer este primer acceso es necesario conectarse mediante SSH dando como parámetro nuestro key pair.

Es importante ubicar el archivo *.pem y otorgarle los permisos necesario de lectura.

> chmod 400 {nombre}.pem

Una vez otorgado el permiso de lectura, ya podemos ejecutar SSH.

> ssh -i {nombre}.pem ec2-user@{ip-pública asociada}

Francamente no he generado ninguna instancia Windows así es que no detallo los pasos. :p