Por motivos de curro necesitaba balancear las conexiones a un arbol LDAP (que el solo se merece un post otro dÃa). Buscando info sobre balanceo con DNS (que era lo primero que ha venido a la cabeza), me encuentro en bulma un post sobre pen. Muy espartana la web (old unix style : ) pero en el howto enseguida veo el ejemplo que justo necesito. Asà que me animo a probarlo y el resultado a sido satisfactorio por el momento.
Entrando un poco en detalle, pen es un sencillo balanceador para conexiones de tipo TCP. Básicamente se encarga de redirigir un puerto local a varios puertos en distintas máquinas que nostros le indiquemos. Como diferencias significativas a la solución de DNS tenemos que:
- No usa el tÃpico algoritmo de round robin, sinó que siempre manda al mismo cliente al mismo servidor (útil por ejemplo para webapps que mantienen sesiones).
- Es capaz de gestionar máquinas no disponibles (gran problema de la solución de balanceo con DNS).
Sencillo pero eficaz. Solo falta un script en el init.d y hacer que se cargue al arrancar la máquina.