Pulumi

Un Droplet es el nombre que Digital Ocean le da a sus maquinas virtuales, es muy probable que algunas aplicaciones requieran de un arquitectura que involucre 1 o mas Droplets y que estos se encuentren balanceados.

 

Usando código en Typescript trabaje en un PoC para vincular 3 Droplets y balancear sus cargas, para ello hice uso de Pulumi para generar la arquitectura en donde un balanceador de carga recibirá las peticiones y las dirigirá hacia los droplets, a su vez un firewall evitara accesos a puertos no solicitados.

 

En un post previo hable de Pulumi con Digital Ocean, con el que trabaje en un PoC y Kubernetes. Para este PoC me base en este código  al cual le hice algunas adecuaciones para instalar docker y ejecutar el contenedor de Simple Web y validar el balanceo a través de los 3 Droplets creados.

 

En la primer creación del Load Balancer, el verificador de salud lo habia definido para revisar el protocolo TCP en el puerto 80, esto genero un fallo general debido al uso del contenedor con python, por lo que procedí a ajustarlo para revisar el protocolo HTTP en el codigo de Typescript en lugar de hacerlo en el panel administrativo de Digital Ocean obteniendo así el estado de salud satisfactorio.

Cabe señalar que existen algunos glitches que Pulumi deberá resolver como en el caso de actualizar el Userdata de los Droplets se generan errores en el recurso del Firewall y Load Balancer.

 

Les dejo a continuación unas capturas del PoC.

Pulumi Stack

Pulumi Stack

 

DO VPC creado

DO VPC creado

 

DO DROPLETS creados

DO DROPLETS creados

 

DO LB creados

DO LB creado

 

DO FW creado

DO FW creado

 

 

Si requieres de mi ayuda para administrar tu infraestructura contáctame.

Tags

Comments are closed

Optimized with PageSpeed Ninja