amazon-ec2 - español - ec2 docs aws
¿Cuál es la mejor práctica para lograr que las instancias de EC2 se unan a HAProxy automáticamente? (1)
No necesita sobrepensar esta solución;)
Simplemente puede "preconfigurar" servidores en su archivo de configuración de HAProxy. Aparecerán "inactivos" y nunca recibirán solicitudes hasta que realmente los traiga en línea.
Aquí hay un ejemplo, suponiendo que solo tiene 5 máquinas en línea, y espera tener 10 en los próximos 2 años:
listen web *:80
balance source
server web1 192.168.0.101:80 check inter 2000 fall 3
server web2 192.168.0.102:80 check inter 2000 fall 3
server web3 192.168.0.103:80 check inter 2000 fall 3
server web4 192.168.0.104:80 check inter 2000 fall 3
server web5 192.168.0.105:80 check inter 2000 fall 3
server web6 192.168.0.106:80 check inter 2000 fall 3
server web7 192.168.0.107:80 check inter 2000 fall 3
server web8 192.168.0.108:80 check inter 2000 fall 3
server web9 192.168.0.109:80 check inter 2000 fall 3
server web10 192.168.0.110:80 check inter 2000 fall 3
Con esta configuración, no necesitarás reiniciar HAProxy o hacer ningún tipo de hacks feos durante al menos un año (a menos que necesites más de 10, luego simplemente agrega 100 y estarás configurado).
También puede escribir un script de shell rápido para generar automáticamente esta configuración, en realidad, DEBERÍA escribir un script para eso si está agregando 100 servidores a su grupo.
Estamos trabajando para escalar nuestra arquitectura EC2 hasta un punto en el que nos gustaría administrar nuestro propio equilibrio de carga. Actualmente tenemos una serie de máquinas configuradas en HAProxy para realizar el balanceo de carga básico, pero estamos buscando la ''mejor práctica'' significa tener una nueva instancia en línea y automáticamente (o casi automáticamente) unir HAProxy.
Lo ideal es que controlemos la carga en nuestros sistemas o confiemos en unos pocos años de datos analíticos para elaborar un cronograma de rouches, y cuando alcancemos un umbral o un tiempo programado, hagamos que un proceso active una nueva instancia, tenga ese nuevo nodo conéctese a un sistema en nuestra máquina HAProxy para escribir su nombre de host en la configuración y vuelva a cargar HAProxy para que se convierta en parte de la agrupación.
Estamos considerando el ELB de Amazon una vez que crecemos lo suficiente como para necesitar cobertura de zona múltiple, pero hasta entonces, necesitamos una configuración simple que pueda agregar / eliminar máquinas de HAProxy.
Sé que hay servicios que podemos pagar para administrar esto, pero Scalr parece limitarnos a tipos de instancias muy específicos, y Rightscale es demasiado caro, así que como muchos otros, estamos buscando una solución propia.
Desafortunadamente, aquellos que tiran su propia solución parecen tener un poco de silencio sobre su proceso.