Des jolis graphes à Facette 0.4.0 et RRD
En 2015, j'étais tombé sur Facette, un outil plutôt bien foutu pour afficher l'état de mon serveur sans avoir à m'y connecter. En 2015, après quelques mésaventures, j'avais passé mon système de monitoring sous Monitorix. Eh bien, en 2017, avec la sortie de Facette 0.4rc1 (puis rc2 le temps de rédiger le billet), je retourne à mon premier amour !
Pourquoi ? Parce que cette version 0.4 est totalement retravaillée de l'intérieur, que ses jolis graphiques me manquent et que Monitorix, aussi simple soit-il, n'est pas vraiment une solution flexible. Je vous propose ici de quoi bien commencer, vu que la doc m'a filé mal au crâne.
Installer Facette
Pour les utilisateurs de Debian Jessie en amd64, voici le wget qui va bien. Pour les autres, faites un tour par ici.wget https://github.com/facette/facette/releases/download/0.4.0rc2/facette_0.4.0rc2_jessie-amd64.debPour installer le paquet :
dpkg -i facette_0.4.0rc2_jessie-amd64.deb
Installer les dépendances RRD
Il est possible de remplir Facette avec Graphite, Influxdb, Kairosdb, ou encore Facette lui-même. J'ai choisi RDD, parce que.
apt-get install rrdtool rrdcached collectd
Configurer Nginx
Facette a besoin d'un ReverseProxy pour fonctionner : en voici un exemple.
Configurer RRD
Installer les dépendances de RRD ne suffit pas, voici les quelques étapes supplémentaires pour faire fonctionner le bousin :
Créez les répertoires rrdcached :
mkdir /var/run/rrdcached/
On donne les bons droits à l'utilisateur facette :
chown facette: /var/run/rrdcached
Ajoutez ces lignes dans /etc/default/rrdcached :
OPTS="-s facette"Cela permet, en gros, à Facette d'utiliser RRD.
OPTS="$OPTS -l unix:/var/run/rrdcached/rrdcached.sock"
OPTS="$OPTS -j /var/lib/rrdcached/journal/ -F"
OPTS="$OPTS -w 1800 -z 1800 -f 3600 -t 4"
Relancez RRDcached.
/etc/init.d/rrdcached restartAvec un ps, on vérifie que tout est comme on veut :
root@serveur:~# ps faux | grep rrd
root 14476 0.0 0.0 12736 2204 pts/0 S+ 20:33 0:00 \\_ grep rrd
root 14465 0.0 0.0 138288 2632 ? Ssl 20:33 0:00 /usr/bin/rrdcached -s facette -l unix:/var/run/rrdcached/rrdcached.sock -j /var/lib/rrdcached/journal/ -F -w 1800 -z 1800 -f 3600 -t 4 -p /var/run/rrdcached.pid
Configurer RRD comme fournisseur / provider
- Dossier de base
/var/lib/collectd/rrd
- Socket du démon rrdcached
/var/run/rrdcached/rrdcached.sock
- Motif de correspondance
(?P<source>[^/]+)/(?P<metric>.+).rrd
Voilà ! Vous devriez maintenant pouvoir commencer à faire vos propres graphiques :
Vous arriverez sans doutes à mettre en place vos graphiques comme des grands et à les afficher dans des collections, pas besoin d'expliquer comment faire.
Je reviens rapidement sur les fournisseurs de données. J'ai dit que Facette pouvait être de la partie, en plus de RRD et des autres. Cela veut dire que plusieurs instances bien configurées peuvent être agrégées sur un même serveur. C'était déjà une option bien chouette à l'époque, ça l'est toujours aujourd'hui : avoir une unique page pour, par exemple, surveiller tout le trafic réseau !