Configuración de lanzamiento y escalamiento automático

Configuración de lanzamiento y escalamiento automático

¿En qué consiste el autoscaling?

Un sitio web autoscaling (autoescalable) permite escalar una aplicación de manera automática, manteniendo para ello un numero de instancias ejecutándose de forma simultanea que puedan crecer o decrecer en número y mantener así una demanda exitosa en respuesta al trafico del sitio web.

¿Cómo crear un sitio web que escale de forma automática en AWS?

  1. Crea un archivo index.html dentro de tu equipo con el contenido que desees mostrar.
  2. Crea un bucket y sube tu archivo en él.
  3. Crea un nuevo role con acceso de AmazonS3FullAccess.
  4. Crea un load balancer que atienda el puerto 80.
  5. Dirígete a Launch Configuration > Auto Scaling Group > Create Launch Configuration.
  6. Elige AWS AMI y continua hasta Create Launch Configuration.
  7. Asigna el nombre, el role que acabas de crear y el bash script.
#!/bin/bash
yum update -y
yum install httpd -y
aws s3 cp://bucketname/index.html /var/www/html/index.html
service httpd start
  1. Continua hasta el final del proceso para crear el Launch Configuration.
  2. Nombra el AutoScalingGroup, elige 3 instancias y para cada una de ellas un availavility zone.

AutoScaling es una forma de manteer un sistema redundante, si se pierde 1 availability zone otra podrá respaldarla.

  1. Expande las opciones avanzadas para recibir tráfico desde el LoadBalancer, como healthcheck type utiliza ELB, y completa la configuración para asignar los intervalos y periodos de gracia y continua hasta llegar a Create Auto Scaling Group.
  2. Mantén el grupo con las 3 instancias siempre activas (Keep the group as it’s initial size).
  3. Ahora habilita una notificación a tu correo de los distintos eventos provistos.
  4. Continua hasta terminar la creación del ASG.
  5. Espera unos minutos a que se desplieguen las instancias.
  6. Abre la url provista por el load balancer, deberá desplegar el html provisto en el bucket.
  7. Intenta eliminar dos instancias y dejar solo una funcionando, el load balancer automáticamente busca una instancia disponible.
  8. Espera unos minutos y refresca la lista de instancias, notarás que el ASG dispara automáticamente nuevas instancias que reemplacen las que no están activas.