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.
Si requieres de mi ayuda para administrar tu infraestructura contáctame.
Comments are closed