Cacti

From aldeid
Jump to navigation Jump to search

HOWTO-CACTI

Description

Cacti est un frontend à RRDTool qui permet, après récolte d'informations via le protocole SNMP dans une base MySQL, d'afficher de nombreuses informations (CPU, température, occupation des disques, état du réseau, etc.).

Installation

Pré-requis

Installation préalable de libperl-dev (pour compilation de net-snmp)

# apt-get install libperl-dev

Installation de NET-SNMP:

# cd /usr/local/src/
# wget http://freefr.dl.sourceforge.net/sourceforge/net-snmp/net-snmp-5.4.2.1.tar.gz
# tar xzvf net-snmp-5.4.2.1.tar.gz
# cd net-snmp-5.4.2.1/
# ./configure
# make
# make install

Installation de RRDTOOL

# apt-get install rrdtool

Installation de SNMPWALK

# apt-get install snmp

Recompilation de PHP avec les bonnes options > Voir howto-lamp>PHP

Installation de Cacti

Téléchargement et installation

# cd /usr/local/src/
# wget http://www.cacti.net/downloads/cacti-0.8.7d.tar.gz
# tar xzvf cacti-0.8.7d.tar.gz
# mv cacti-0.8.7d /usr/local/www/admin/cacti

Partie base de données

# cd /usr/local/www/admin/cacti/
# mysqladmin -u root create cacti
# mysql cacti < cacti.sql
# mysql --user=root mysql
mysql> GRANT ALL ON cacti.* TO cacti@localhost IDENTIFIED BY 'P4ssw0rD';
mysql> flush privileges;
mysql> exit;

Paramétrage

Modification du fichier de configuration

# vim /usr/local/www/admin/cacti/include/config.php

Puis modifier le fichier comme suit:

$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cacti";
$database_password = "P4ssw0rd";

Appliquer les permissions adéquates

# groupadd cacti
# useradd –g cacti cacti
# cd /usr/local/www/admin/cacti/
# chown -R cacti:cacti rra/ log/

Crontab

# crontab -e

Puis ajouter :

*/5 * * * * cacti /usr/local/bin/php /usr/local/www/admin/cacti/poller.php > /dev/null 2>&1

Première connexion

1. Se rendre à l'adresse suivante : http://www.aldeid.com/admin/cacti/
2. Se connecter avec admin/admin
3. Changer son mot de passe lorsque cela est demandé
4. Vérifier que tous les chemins sont corrects (apparaissent en vert ou rouge)
5. Valider l'installation

Résolution des problèmes

Si les graphiques ne se génèrent pas, vérifier dans les logs les éventuels messages d'erreur. Si une erreur du type "POLLER: Poller[0] Maximum runtime of 298 seconds exceeded. Exiting" survient, il se peut que vous deviez initialiser manuellement les graphiques : Aller dans le menu Management > Data Sources puis cliquer sur un graphique. Activer le mode debug ("Turn On Data Source Debug Mode.") Copier le script de création du graphique puis coller-le dans un terminal. Faire de même pour les autres graphiques.

Plugins

{{Remarque|Il peut être nécessaire d'activer les permissions de plugins dans "User Management", onglet "Realm Permissions".

CPA (Cacti Plugins Architecture)

Téléchargement

Sans même avoir paramétré Cacti, installer "Cacti Plugins Architecture":

# cd /usr/local/www/cacti/
# wget http://mirror.cactiusers.org/downloads/plugins/cacti-plugin-0.8.7d-PA-v2.4.zip
# unzip cacti-plugin-0.8.7d-PA-v2.4.zip

(préciser yes pour le remplacement de la licence)

Application du patch

# patch -p1 -N < cacti-plugin-0.8.7d-PA-v2.4.diff

Vous obtiendrez le message d'erreur suivant :

Hunk #1 FAILED at 175.
1 out of 1 hunk FAILED — saving rejects to file include/global_constants.php.rej

Aller dans include/global_constants.php et rajouter a la fin

define('OPER_MODE_NATIVE', 0);
define('OPER_MODE_RESKIN', 1);
define('OPER_MODE_IFRAME_NONAV', 2);

Paramétrage fichiers

Editer includes/global.php:

--- 
Adapter les ligne 34-37 (connexion)
---
Modifier (Ligne 44)
 $plugins = array();
 //$plugins[] = 'thold';
Par:
 $plugins = array();
 //$plugins[] = 'thold';
 plugins[] = 'weathermap';
---
Modifier (Ligne 57):
 $config['url_path'] = '/';
Par :
 $config['url_path'] = '/cacti/';
---

Editer le fichier config.php et adapter la chaîne de connexion

Composants SQL

Exécuter ensuite cacti.sql puis pa.sql

Weathermap

Description

Téléchargement

Installation

Utilisation

Settings

Description

Settings est un pré-requis nécessaire à thold

Téléchargement et installation

# cd /usr/local/www/cacti/plugins/
# wget http://cactiusers.org/downloads/settings.tar.gz
# tar xzvf settings-0.5.tar.gz
# rm -f settings-0.5.tar.gz
# vim ../include/global.php

Puis ajouter la déclaration du plugin settings comme suit :

$plugins[] = 'settings';

Utilisation

Thold

Description

Thold est un plugin permettant d'alerter par email lorsque des seuils définis sont atteints. Ce plugin requiert l'installation préalable de CPA et settings (voir plus haut).

Téléchargement et installation

# cd /usr/local/www/cacti/plugins/
# wget http://cactiusers.org/downloads/thold.tar.gz
# tar xzvf thold-0.4.1.tar.gz
# rm -f thold-0.4.1.tar.gz
# vim ../include/global.php

Puis ajouter la déclaration du plugin settings comme suit :

$plugins[] = 'thold';

Utilisation

Aller dans le menu "Plugin Management" puis, dans le panel "thold", cliquer sur "Install". Puis dans le panel "Thresholds", cliquer sur "Enable".

Templates HP Procurve 2424M

Vous trouverez ici des templates (data et graph) pour un switch HP Procurve 2424M : http://dl.dropbox.com/u/10761700/Cacti-HP_ProCurve.tar.gz

  • Suivi CPU
  • Suivi MEM
  • Suivi nombre de MAC addresses
  • Suivi température