Administration et supervision de HeartBeat/Ldirectord/IPVS
( 30 Jun 2009 )On a conçu une solution de load balancing et de répartition de charge et nous l'avons mis en place. Le travail n'est pas fini pour autant. Il nous reste à administrer et superviser ces outils.
NOTE 2021: Après pas loin de 20ans dans l'informatique je dirais même que mettre en place la solution c'est les 20% du travail le plus facile. Vivre avec c'est clairement les 80% restant ^^
On peut administrer la solution à plusieurs niveaux :
- Heartbeat
- IPVS
HeartBeat
Heartbeat est particulièrement résilient. Il est plus que rare de le voir défaillir. Par contre il peut être utile de voir l'allocation des ressources et l'états des noeuds.
Par exemple pour voir l'état d'un noeud, il faut lancer la commande :
/usr/bin/cl_status nodestatus frontal2
Elle va afficher :
cl_status[22045]: 2009/06/30_14:56:43 debug: optind: 1 argv[optindex+1]: frontal2
active
=> On voit ici que le second noeud est bien en vie.
Nagios possède un scheck dédié pour cela, disponible sur http://www.monitoringexchange.org/cgi-bin/page.cgi?g=Detailed%2F1803.html;d=1
$/usr/local/nagios/libexec/check_heartbeat_link
Heartbeat Link OK: frontal2:eth0:up
Il faut le lancer sur les deux frontaux. De cette manière, vous saurez si un noeud ne réponds plus au sens cluster HeartBeat.
En cas de problème avec HeartBeat, il ne faut pas hésiter à aller lire le fichier /var/log/ha-log qui est très clair.
IPVS
En ce qui concerne IPVS, la commande ipvsadm nous permet d'obtenir les infos souhaitées. Voir les serveurs actifs :
ipvsadm -Ln
Voir le status de la table des sessions :
ipvsadm -Lnc
Voir les entrées sauvegardées :
ipvsadm -Lc | grep NONE
Voir les infos du daemon de synchronisation :
ipvsadm -L --daemon
Voir les stats d'utilisation :
ipvsadm -L --rate
Pour voir l'espace mémoire utilisé par IPVS, il faut regarder l'utilisation du module noyau ip_vs du noyau, il n'est donc pas possible de voir l'utilisation mémoire de ce module depuis top. Il faut pour cela utiliser la commande :
slabtop
et regarder la ligne ip_vs_conn.
NOTE 2021: slabtop, une commande tellement peu connue qui sauva pourtant tant de mes analyses de consommation mémoire...
On peut considérer qu'une connexion prends 1/10 de Ko. Donc une machine de 512Mo peut gérer 5121024/10=52428* connexions simultanées. Ca laisse de la marge, surtout lorsqu'on voit le prix de la mémoire actuellement...
NOTE 2021: Oui clairement avec le temps la mémoire est quand même resté sacrément bon marché