Administration et supervision de HeartBeat/Ldirectord/IPVS

Gabès Jean ( 30 Jun 2009 ) blog Talk /

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é

Archives