Get it on Google Play
Tu partner Freelance para tus proyectos IT

Edge Service y Balanceo de carga con HAProxy, Hashicorp Consul y NodeJS | Formación microservicios

16-06-2020

Buenas Digitales! Pues en este vídeo hemos continuado la serie dedicada a los Microservicios presentando el concepto de “Edge Service” que permite el acceso de los usuario a la aplicación. El “Edge Service” tiene sentido porque necesitamos tener nuestros microservicios encerrados dentro de un entorno perimetral para que no se pueda tener acceso desde fuera(Solo desde el Edge service).

Edge Service

Edge Service

Esto lo hemos hecho montando un balanceador de carga que a partir de los microservicios registrados en nuestro Consul(Ver último vídeo de microservicios “Service Discovery con Hashicorp Consul y Javascript“) crea el balanceo automático. Si se cae un microservicio deja de balancearlo y si se crea otro automáticamente se balancea.

Para ello hemos arrancado Consul con la siguiente instrucción:

./consul agent -dev -bind=192.168.1.44 -client=0.0.0.0 -data-dir=.

Hemos creado el fichero de configuración de HAProxy llamado ‘haproxy.cfg’:

frontend stats
   bind *:1936
   stats uri /
   stats show-legends
   no log

frontend http_front
   bind *:80
   default_backend http_back
   timeout client 1m

backend http_back
   balance roundrobin
   server-template mywebapp 10 _microservicio._tcp.service.consul resolvers consul    resolve-opts allow-dup-ip resolve-prefer ipv4 check
   timeout connect 1m
   timeout server 1m

resolvers consul
   nameserver consul 192.168.1.44:8600
   accepted_payload_size 8192
   hold valid 5s

Y hemos arrancado HAProxy con Docker como si nada:

sudo docker run -d \
 --name my-running-haproxy \
 -p 8080:80 \
 -v /path/to/haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg \
 haproxy:lts-alpine

Y esto a sido todo, como siempre, fácil y rápido con estos vídeos.

Si te ha servido, por favor comparte
 

Leave a Reply