Je comprends que, pour obtenir le basculement sur une configuration d'équilibrage de charge HAProxy, vous avez besoin de deux machines exécutant HAproxy (et l'acheminer vers plusieurs instances de serveur Web). Mais dans ce cas, disons abcd.com, comment diviser / acheminer ce trafic vers 2 adresses IP au lieu d'une? DNS résout généralement les noms de domaine en une seule IP. Comment procéder en utilisant des outils / services gratuits / bon marché?
load-balancing
failover
haproxy
mixdev
la source
la source
Réponses:
Si vous avez tellement de charge que vous devez équilibrer la charge entre deux instances haproxy, le round robin DNS n'est pas une mauvaise idée (je serais surpris si vous avez cette charge). Le round robin DNS ne fournira cependant pas un bon basculement.
Chez Stack Overflow, nous utilisons
heartbeat
pour fournir une seule adresse IP virtuelle, cette adresse IP est active sur un seul hôte haproxy à la fois (si elle tombe en panne, l'autre reprend cette adresse IP). Vous pouvez utiliser Heartbeat pour avoir une IP sur chaque machine, puis un round robin DNS entre les deux. Si l'un venait à échouer, l'autre aurait ces deux IP.HAProxy utilise environ 1-5% de CPU sur notre serveur physique pour équilibrer notre trafic qui en a un seul
Intel(R) Xeon(R) CPU E5504 @ 2.00GHz
. Ainsi, HAProxy peut généralement gérer beaucoup de trafic facilement.la source
-c
, mais il pourrait ne pas détecter des erreurs comme une erreur de configuration.Comme le dit Kyle, le battement de cœur peut être utilisé pour faire en sorte que deux serveurs haproxy agissent comme une paire de basculement. Cependant, alors que de nombreuses personnes utilisent le rythme cardiaque pour le travail, keepalived est suggéré par l'auteur de haproxy.
Il décrit les détails de la liste de diffusion haproxy: http://www.formilux.org/archives/haproxy/1003/3259.html
En bref, cela se passe comme suit:
le rythme cardiaque est orienté cluster. Il garantit qu'un seul serveur a accès à une ressource (ex. Stockage SAN)
keepalived est orienté réseau. Il garantit qu'au moins un serveur possède l'IP en question.
la source
Vous pouvez trouver ce que vous recherchez ici: http://blog.haproxy.com/2014/01/17/emulating-activepassing-application-clustering-with-haproxy/
la source