Le souci de WebUI est de ne pouvoir utiliser qu'un seul CPU pour:
En cas de soucis de CPU (pour l'instant le cas rencontré est celui de trop de requêtes des utilisateurs, pas encore de la gestion des broks) il faut plusieurs WebUI load balancées par un frontal devant (haproxy).
Il y a deux cas:
En cas de HTTPS, haproxy ne va se comporter que comme un load balancer TCP car il ne peux analyser les trames.
Le soucis dans ce cas sera qu'alors haproxy ne donnera pas de page html de stats, mais on pourra y accéder via une socket unix.
On place donc le fichier suivant dans /etc
Ceci va faire ouvrir le port 7767 (le port "classique") par haproxy et utiliser les ports 8767 et 9767 comme serveurs réels.
Il faut deux modules WebUI, sur les ports sont donc respectivement:
Dans un screen (par encore eu le temps d'écrire un init.d):
haproxy -f /etc/haproxy-webui.cfg -V -db |
Pour lire les stats on peux voir avec (cf https://www.datadoghq.com/blog/how-to-collect-haproxy-metrics/):
Pour voir l'état de la redirection:
echo "show stat" | nc -U /var/lib/haproxy/stats |
Pour voir les info de haproxy daemon en général:
echo "show info" | nc -U /var/lib/haproxy/stats |
Il faut mettre la sonde check_haproxy en place sur le serveur du broker (dans /var/lib/shinken-user/libexec/). Elle demande des prérequis:
Pour la lancer:
/var/lib/shinken-user/libexec/check_haproxy -S /var/lib/haproxy/stats -D 'C<u,.501,0.01,.25,0.5>'
Voici un exemple de rendu de la sonde:
![]()