Tu as la version DNSLB du pauvre, j'en ai fait depuis 2007.

Ca utilise le fait que naturellement, la chaine de resolution DNS va chercher à trouver un NS up pour une zone.

Soit ton site www.example.com

Soit ta Machine A comme ip 1.2.3.4

Soit ta Machine B comme ip 5.6.7.8

Tu cree une sous zone lb.example.com

Voici un extrait de ton fichier de zone:

machineA IN A 1.2.3.4

machineB IN A 5.6.7.8

lb IN NS machineA

lb IN NS machineB

www IN CNAME www.lb.example.com.


Et sur chacun des serveur tu fais aussi tourner un bind, chacun faisant autorité pour lb.example.com

Et qui contient

www 60 IN A 1.2.3.4  (sur la machineA)

ou

www 60 IN A 5.6.7.8 (sur la machine B)

(pas de master/slave pour cette zone)


Si les 2 serveurs fonctionnent, tu auras grosso modo du round robin.

Si un serveur est down, immédiatement les client qui n'ont pas l'IP en cache seront tous sur l'instance encore UP.

Au bout de 60 sec, les cache auront expiré et pareil tout le traffic arrivera sur la machine UP


Il te reste a faire un mecanisme sur chaque serveur pour eteindre bind si ton haproxy (ou tous ses backend) est down pour ne plus servir la mauvaise IP.


On 03/03/2020 11:15, Mickael Hubert wrote:
Bonjour à tous,
nous devons réaliser du HA (et si possible du loadbalancing) entre 2
instances HAProxy, ces 2 Haproxy doivent-être hébergés dans 2 DC différents.
Pas possible de réaliser du VRRP car nous ne pouvons pas switcher l'IP
publique de l'un à l'autre des DC.

La solution la plus simple serait de réaliser du round robin DNS pour
pointer sur les 2 IP publiques des 2 HAproxy. Mais avant de se lancer tête
baissée dans le truc, je souhaitais savoir si vous auriez d'autre solutions
à me proposer ?
Car à ma connaissance, si un des HAProxy est HS, le DNS n'en saura rien et
continuera à balancer du trafic dessus (avec 50% d'échec).

Merci d'avance pour votre aide !

++

---------------------------
Liste de diffusion du FRnOG
http://www.frnog.org/



---------------------------
Liste de diffusion du FRnOG
http://www.frnog.org/

Répondre à