Fedora Core 6 et Cacti

Publié le 15 juin 2007 par Thierry

Cacti est un logiciel de supervision (dit de « capacity planning ») basé sur RRDtool permettant de surveiller l’activité de son architecture informatique à partir de graphiques quotidiens, hebdomadaires, mensuels et annuels.

J'utilise toujours Cacti sur les serveurs que je gère car c'est un outil très fonctionnel, ergonomique grâce à son interface web et surtout personnalisable à souhait.

Voyons un peu comment mettre en place cette petite merveille de Cacti ...

Installation

Pas de surprise ! le paquet est disponible via notre yum préféré :

# yum install cacti

Les utilisateurs de CentOS devront ajouter le dépot RpmForge

L'installation de Cacti se déroule dans le répertoire /var/www/cacti/.
Pour fonctionner, nous allons avoir besoin d'un serveur Apache, d'un serveur MySql, de RRDtool, et de Net-SNMP.

# yum install httpd php mysql-server rrdtool net-snmp

Configuration de la base de données

Nous devons ensuite configurer une base de données (nous partirons du principe où votre base de données MySql est déjà fonctionnelle).
Connectons nous à la base MySql avec l'utilisateur root

$ mysql -u root -p

Créons la base nommée cacti

create database cacti;

Attribuons les droits corrects à cette nouvelle base

grant all on cacti.* to root;
grant all on cacti.* to root@localhost;
grant all on cacti.* to cactiuser;
grant all on cacti.* to cactiuser@localhost;

Définissons le mot de passe pour l'utilisateur cactiuser (utilisateur de Cacti)

set password for cactiuser@localhost=password('votremotdepasse');

exit

Nous pouvons maintenant importer la base de données fourni par Cacti

cd /var/www/cacti
mysql -uroot -p cacti < cacti.sql

Configuration du service Web

Editons le fichier /etc/httpd/conf.d/cacti.conf afin d'autoriser notre adresse IP à se connecter à Cacti.
Par exemple on ajoute :

allow from 192.168.1.0/24

il nous faut maintenant paramétrer le fichier de configuration de Cacti qui se trouve sur /var/www/cacti/include/config.php

$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cactiuser";
$database_password = "votremotdepasse";
$database_port = "3306";

Activons la récolte des données en décommentant la ligne du fichier /etc/cron.d/cacti

*/5 * * * * root php /var/www/cacti/poller.php &>/dev/null

Utilisation

Connectons nous avec notre navigateur web préféré sur l'adresse : http://localhost/cacti/install

Afin d'obtenir cette écran et de commencer l'installation à proprement dite de Cacti

Suffit après de remplir les formulaires, c'est très simple !!!
Une fois l'installation logiciel terminée, nous pouvons nous connecter au panneau d'administration grâce à l'identifiant admin et au mot de passe admin, pour arriver à cette écran :

La configuration par défaut active déjà une monitoring de la machine hébergeant Cacti si celle-ci le permet (nous n'aborderons pas ici la configuration de Net-SNMP).

Il est tout à fait possible d'interroger une machine distante comme un routeur par exemple (ici un routeur WRT54G), pour cela il suffit de cliquer dans le menu à gauche sur Devices>add puis de remplir convenablement en fonction de la configuration de l'élément à surveiller.

Nous pouvons maintenant créer des graphs de surveillance associés à cet équipement (ici je surveillerais le trafic sur les interfaces réseau de mon WRT54G), en cliquant sur *Create Graphs for this Host

Voilà nous venons de mettre en place une surveillance sur notre WRT54G :

Conclusion

Cacti est surement l'outil le plus efficace de sa catégorie, avec la possibilité d'ajout de plug-in, et sa communauté très active pour un support vraiment pointilleux.
Professionellement parlant j'utilise Cacti sur une plateforme d'environ 400 serveurs et j'en suis parfaitement satisfait !!!

Et vous vous utilisez quoi ?

ps : si vous avez des suggestions ou des questions n'hésitez pas !

A+