[HA KeepAlived] Configuration de KeepAlived pour Squid

Bonjour à tous,

J’ai pour projet d’augmenter la disponibilité de certains services avec la mise en place de Clusters.
Je n’ai jamais vraiment mis en place ce genre d’infrastructure et j’avoue que je m’emmele les pinceaux en me documentant avec les différents termes et software.

Avec mes recherches j’ai conclu que mon infrastructure ressemblera surement à cela :

[code]| INTERNET |

  |
  |

|Load Balancer| — |Load Balancer|(en failover)


  |
  |
  |_______________
  |               |
  |               |
------          ------

|Noeud1| |Noeud1|
------ ------[/code]

Je bloque alors sur ce que j’ai réellement besoin pour mettre en place cette infra (Entierement Linux) :

Sur les Loadbalancing : LVS pour le loadbalancing ? et Heartbeat pour le failover ?
Sur les noeuds ? Juste Heartbeat ?

Cela vous semble t-il correct ?

Cordialement,

titres-dans-sd-y-en-a-marre-t41207.html

Je te conseille d’utiliser keepalived. Je l’utilise sur une infra et ça marche niquel. Par contre quel service utilises tu sur tes serveurs réels ?

Keepalived te permet d’utiliser LVS pour le load balancing et utilise des healthcheckers pour savoir si les serveurs réels sont toujours UP. Pour la redondance du load balancer keepalived utilise VRRP.

Oui KeepAlived. J’avais commencé à me pencher dessus, mais du coup cela remplacerai Heartbeat ?

Les serveurs réels seront des proxies squid3.

Merci

Oui ça remplacerait heartbeat.
Squid3 pour faire un cache web ? Si c’est le cas regarde du côté de Varnish qui est vraiment vraiment tres performant. Si non tu peux oublier ma remarque :wink:

D’accord, je vais tester ca. Je reviens en cas de soucis sur KeepAlived.
Ce sont des proxies transparent qui servent de filtre Internet :wink:

EDIT : Il me semble qu’il y a une configuration particulière dans le sysctl afin de bien configurer keepalived (il est en DR) ?

Merci !

Une configuration spéciale dans sysctl ? Heu … non je ne crois pas. Si tu as des soucis sur ta conf poste la sur le forum dans un new post.

Je reviens vers vous, j’ai commencé la configuration de keepalived afin de mettre en cluster mes deux serveurs Squid.

Pour cela j’ai installé KeepAlived sur mes prochains LoadBalancers, et je l’ai configuré comme cela :

[code]global_defs {
lvs_id LVS_MASTER
}

vrrp_instance LB-01 {
state MASTER
interface eth0
virtual_router_id 1
priority 150
authentication {
auth_type PASS
auth_pass unMotdepasse
}
virtual_ipaddress {
192.168.1.200/32 dev eth0
}
}

virtual_server 192.168.1.200 3128 {
delay_loop 30
lb_algo wrr
lb_kind DR
persistence_timeout 50
protocol TCP
real_server 192.168.1.201 3128 {
weight 1
inhibit_on_failure
TCP_CHECK {
connect_port 3128
connect_timeout 3
nb_get_retry 3
delay_before_retry 1
}
}

real_server 192.168.1.202 3128 {
weight 1
inhibit_on_failure
TCP_CHECK {
connect_port 3128
connect_timeout 3
nb_get_retry 3
delay_before_retry 1
}
}
}[/code]

Voici le retour de la commande “ipvsadm” sur le LB :

IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn TCP 192.168.1.200:3128 wrr persistent 50 -> 192.168.1.201:3128 Route 1 0 0 -> 192.168.1.202:3128 Route 1 0 0

Sur le LB_1 : L’adresse virtuelle 192.168.1.200/32 est bien up.
J’ai configuré une adresse virtuelle sur chaque l’interface “lo” serveur réel : 192.168.1.200/32

Le Failover entre les deux Loadbalancers fonctionne.
Cependant lorsque je configure un client avec comme proxy 192.168.1.200, le client n’accède pas à internet. (Cela fonctionne quand je configure le proxy avec une adresse d’un serveur reel comme 192.168.1.201).

Quelqu’un aurait une piste ? Merci d’avance

Bon… Le problème venait tout simplement de la configuration de mes pares-feu.
Du coup la configuration ci-dessus est juste. Si cela peut aider quelqu’un.

Merci