Elastic Load Balancers

Elastic Load Balancers

¿Qué es un balanceador (load balancer)?

Un Load Balancer es dispositivo virtual que propaga la carga del tráfico a traves de diferentes servidores web.

¿Cómo crear un load balancer en AWS?

Estos son los pasos para crear un Load Balancer en AWS.

  1. Ir al dashboard de EC2.
  2. Dirigirse a la sección Instances.
  3. Si no hay un servidor web, crear uno nuevo con la AMI que ya hemos creado.
  4. Iniciar el servidor web y configurarlo para que arranque automáticamente siempre.
$ ssh ec2-user@ip -i key
$ sudo su
$ service httpd start
$ chkconfig httpd on
  1. Creamos un archivo “status.html” dentro de “/var/www/html/” y escribimos cualquier texto dentro de el.
  2. Volvemos a la consola y con la instancia ejecutándose vamos a Load Balancers.
  3. Presionamos en Create Load Balancer.
  4. Elegimos la opción Classic Load Balancer y elegimos Continue.

Existen 2 tipos de load balancers en este momento. El application load balancer es el sugerido de Amazon, este trabaja sobre el layer 7 de http, mientras que el load balancer clásico lo hace sobre el layer 4 de http.

  1. Le damos el nombre MyLoadBalancer y dejamos los valores por default, le damos clic en Next.
  2. Elige el security group con el que has venido trabajando y presiona Next.
  3. Aparecerá un mensaje sugiriendo que se utilice el protocolo https para trabajar con el load balancer, solo ignóralo y presiona Next.
  4. Los siguientes parámetros detallan las parámetros del Load Balancer en AWS.
Protocolo
HTTP
Puerto de acceso
80
Ping Path
status.html (Es el archivo que va a revisar para verificar el estado de la instancia EC2)
Response Timeout
Tiempo de espera para el archivo html
Interval
Cuanto tiempo toma entre una revisión del archivo y otra
Unhealthy threshold
Numero consecutivo de failures antes de considerar al EC2 en mal estado
Healthy threshold
Cuantos requests exitosos tienen que pasar antes de volver a considerar una instancia EC2 sana
  1. Presiona Next.
  2. Agrega la instancia donde esta el servidor web y presiona Next.
  3. Asigna un tag de nombre a este load balancer.
  4. Termina el proceso presionando Create.
  5. Revisa el status check para verificar el estado del load balancer.
  6. Copia y pega el DNS que se genero para el load balancer.

Si se pierde una instancia que exista detrás del load balancer la carga se repartirá entre los demás load balancers.

Resumen

  • Las instancias son monitoreadas por ELB y reportadas como: Inserver o OutofService.
  • Los Health Checks verifican el estado de la instancia comunicándose con esta.
  • Los load balancers tienen su propio DNS name, nunca se les asigna una IP única.