Outils pour utilisateurs

Outils du site


tutoriels:cacti

CACTI : Monitoring des ressources

Cacti logoIIS

Introduction et prérequis

Cacti est un logiciel libre de mesure de performances réseau et serveur basé sur la puissance de stockage de données de RRDTool. Il est bien souvent utilisé avec des logiciels de supervision (par exemple nagios), mais il ne fait pas de supervision en tant que telle. Il ne fait pas de corrélation d'incidents ni d'alerte en cas d'incident (bien que des plugins existent, ce n'est pas son but premier).
Par ailleurs, il permet de faire l'étude d'indicateurs sur une période donnée (moyenne sur le mois par exemple, ou maximum de la semaine, etc …) contrairement à la supervision qui permet de connaître l'état de l'indicateur en temps réel. Il fonctionne grâce à un serveur web équipé d'une base de données et du langage PHP. Il peut-être considéré comme le successeur de MRTG et également comme une interface d'utilisation de RRDTool.

  • Cacti est une application PHP, donc aucune restriction d'utilisation sur la plateforme système tant que les dépendances sont satisfaites (Net SNMP, php_snmp, php_sockets…)

Les prérequis pour une installation sur plateforme Windows

  • IIS 7.5
  • MYSQL 5.1
  • PHP 5.2 NTS
  • Module IIS FastCGI
  • NET SNMP
  • RRDTOOLS

Cacti Graph

Installation de la plateforme WIMP

  • WIMP : Windows IIS MYSQL PHP

Microsoft met à disposition un outil intéressant nommé WEB PLATEFORM INSTALLER pour l'installation des différents composants nécessaires.

L'interface de la web Plateform vous permettra d'installer :

Webplateform Webplateform

Création du mappage de gestionnaire PHP en fastCGI

  • Sur la page d'accueil de votre serveur IIS, créer un nouveau mappage de gestionnaire :

Accueil IISPHP FastCGI

  • Nous passerons par le module FastCGI de IIS pour exécuter le code par le CGI du moteur PHP :

Déclaration mappage PHP

  • A ce stade, vous pouvez vérifier l’exécution de PHP en créant un phpinfo() dans l'instance Web par défaut.
    La plateforme WIMP est validée.

Installation des dépendances et de Cacti

Configuration requise de PHP

PHP

Les extensions nécessaires sont livrées par défaut avec PHP, mais elles ne sont pas chargées.

  • Comme le décrit la doc officielle, modifier votre php.ini ainsi :

extension_dir = c:\php\ext
extension=php_mysql.dll
extension=php_snmp.dll
extension=php_sockets.dll
cgi.force_redirect = 0

Installation de NET-SNMP

NET-SNMP

Personnellement, j'ai installé le binaire en rapport à ma configuration: 64 bits.
Une recommandation sur le web prévoit d'installer le binaire sur la même partition que PHP… (C'est ce que j'ai fais) :-\

Téléchargement de Cacti

Cacti

Vous devez fixer les permission NTFS pour obtenir l'exécution des commandes et création des graphes:

  • IIS_IUSRS doit avoir lecture/exécution sur \cacti
  • IIS_IUSRS doit avoir lecture/écriture sur \cacti\log et \cacti\rra
  • IIS_IUSRS doit avoir exécution sur C:\Windows\System32\cmd.exe

Permissions NTFS pour Cacti

Définition des variables d'environnement

Toujours selon la doc officielle, vous devez ajouter les variables d'environnement pour PHP et les MIBS en fonction de vos emplacements :

Variables ENV

  • Activer SNMP et tester localement une requête SNMP. Les MIBS renseignées et Net-SNMP installé, le résultat est immédiat :

SNMPWALK

Créer la base de données de Cacti

Soit depuis la console MYSQL fournie avec le serveur ou depuis un PHPMyAdmin (si vous l'installez..), importez le script SQL cacti.sql situé à la racine du DocumentRoot.

  • Import SQL
  • Créer un utilisateur avec tous les privilèges sauf GRANT OPTIONS
  • Attribuer un mot de passe pour l'accès à la base

Cette configuration est a reporté dans le fichier cacti\include\config.php pour renseigner la chaine de connexion à la base de données cacti.

Config.php

Téléchargement de RRDtools

RRDTool

RRDTOOL

Ici, il suffit d'extraire le zip et de déplacer l'exécutable rrdtool.exe à la racine de Cacti.

Configuration de Cacti

L'installation de Cacti est terminée, redémarrez le serveur Web avant de tester l'accès en HTTP.

  • L'accès par défaut et à changer immédiatement est admin / admin
  • Configurer les settings avec les différents chemins de vos binaires précédemment installés

Cacti settings

Mise en place d'une tâche planifiée (poller.php)

Afin d'effectuer les requêtes SNMP pour updater les graphs, la mise en place d'un cron (tâche planifiée) est indispensable.

  • Plusieurs solutions sont possibles, ici un utilisateur spécifique avec les droits d'ouvrir une session en tant que tâche sera utilisé pour l'exécution :

user cron cacti

  • N'oubliez de réaffecter les droits de lecture,exécution et écriture si vous avez un utilisateur dédié à la tâche. :!:
  • Enfin, planifier la tâche toutes les 5 minutes dès le démarrage de l'ordinateur avec une récursion infinie:

Cacti cron

Conclusion

  • La communauté du projet fournit quelques templates et plugins intéressants.
  • Les graphiques sont entièrement personnalisables

Exemple

Bon monitoring ! ;-)

tutoriels/cacti.txt · Dernière modification: 15/04/2016 à 21:15 (modification externe)

Outils de la page