LINUX:CACTI - Configuration préalable

De WIKI sur Linux (ADB)
Aller à la navigation Aller à la recherche

retour à CACTI


But

Lors de la configuration de CACTI, ce processus vérifie la configuration des services dépendants. Si un aspect est imparfait, il sera noté en rouge. Il faudra le corriger et relancer le service concerné. Il est donc préférable de les ajuster en avance.


Configuration de PHP

Par rapport à la configuration d'origine du fichier "/etc/php.ini", il est nécessaire de modifier quelques lignes:


max_execution_time = 60
memory_limit = 400M

Le service "php-fpm.service" doit être redémarré:

systemctl restart php-fpm.service


Configuration de Mariadb

Par rapport à la configuration d'origine du fichier "/etc/my.cnf.d/mariadb-server.cnf", il est nécessaire de modifier ou d'ajouter quelques lignes:


character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
max_heap_table_size=47M
tmp_table_size=47M
innodb_doublewrite=OFF
innodb_flush_log_at_timeout=3
innodb_read_io_threads=32
innodb_write_io_threads=16
innodb_io_capacity=5000
innodb_io_capacity_max=10000
innodb_file_format=Barracuda
innodb_large_prefix=1
innodb_buffer_pool_size=720M

Le service "mariadb.service" doit être redémarré:

systemctl restart mariadb.service


Création du schéma pour Cacti dans Mariadb

Maintenant, il faut créer le schéma pour Cacti. On crée un premier fichier qui va créer le schéma vide que l'on nomme "schema.sql":


DROP SCHEMA IF EXISTS dbcacti ;
CREATE SCHEMA dbcacti ;

Nous avons nommé ce schéma "dbcacti".

On exécute ensuite la commande suivante pour effectuer cette création:

mysql --user=root --password=MOT_DE_PASSE_ROOT_MARIADB < ./schema.sql

Ensuite on charge les tables et leur contenu dans ce schéma vide "dbcacti". Un script est fourni. Il reste à exécuter la commande suivante:

mysql --user=root --password=MOT_DE_PASSE_ROOT_MARIADB -D dbcacti < /usr/share/doc/cacti/cacti.sql

On adapte le mot de passe ("MOT_DE_PASSE_ROOT_MARIADB") de l'utilisateur "root" de Mariadb selon votre installation.

Voyez l'article sur MariaDB: serveur de base de données.


Création de l'utilisateur pour Cacti dans Mariadb

On crée un utilisateur qui aura les pleins pouvoirs sur ce schéma "dbcacti".

On crée un fichier qui va créer cet utilisateur et lui donner les droits nécessaires que l'on nomme "user.sql":


create user 'usercacti'@'localhost' identified by 'PW_CACTI' ;
create user 'usercacti'@'127.0.0.1' identified by 'PW_CACTI' ;
grant all privileges on dbcacti.* to 'usercacti'@'localhost';
grant all privileges on dbcacti.* to 'usercacti'@'127.0.0.1';

Ce nom d'utilisateur est "usercacti" avec le mot de passe "PW_CACTI". Ils sont à adapter selon vos désirs.

On exécute ensuite la commande suivante pour effectuer cette création:

mysql --user=root --password=MOT_DE_PASSE_ROOT_MARIADB < ./user.sql

On adapte le mot de passe ("MOT_DE_PASSE_ROOT_MARIADB") de l'utilisateur "root" de Mariadb selon votre installation.

Voyez l'article sur MariaDB: serveur de base de données.


Ajouter de Time-Zone à Mariadb

Il faut ajouter les informations sur le Time-Zone à Mariadb. On exécute la commande de ligne suivante:

mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql --user=root --password=MOT_DE_PASSE_ROOT_MARIADB

On adapte le mot de passe ("MOT_DE_PASSE_ROOT_MARIADB") de l'utilisateur "root" de Mariadb selon votre installation.


Droits sur une table de Time-Zone

L'utilisateur "usercacti" doit avoir le droit de lecture (SELECT) sur une table Time-Zone créé ci-dessus. On crée un script en fonction que l'on nomme "droit-time-zone.sql":


use mysql;
GRANT SELECT ON mysql.time_zone_name TO usercacti@localhost;
flush privileges;

On exécute ensuite la commande suivante:

mysql --user=root --password=MOT_DE_PASSE_ROOT_MARIADB < ./droit-time-zone.sql

On adapte le mot de passe ("MOT_DE_PASSE_ROOT_MARIADB") de l'utilisateur "root" de Mariadb selon votre installation.


Configuration de Cacti

Maintenant qu'on a le nom du schéma et de l'utilisateur avec son mot de passe, on passe à la configuration de Cacti.

On modifie les options suivantes dans le fichier "/etc/cacti/db.php" suivant les informations créées ci-dessus:


$database_default  = 'dbcacti';
$database_hostname = 'localhost';
$database_username = 'usercacti';
$database_password = 'PW_CACTI';


Configuration de Spine

Lors de la phase future de récolte des informations auprès des équipements réseaux suivis, on va utiliser l'outil "Spine" via le service Cron. Il a aussi besoin des mêmes informations.

On modifie les options suivantes dans le fichier "/etc/spine.conf" suivant les mêmes informations:


DB_Host       localhost
DB_Database   dbcacti
DB_User       usercacti
DB_Pass       PW_CACTI


Configuration de Cacti pour Apache

Cacti sera utilisé au travers d'un interface Web. L'installation fourni le fichier "/etc/httpd/conf.d/cacti.conf". Comme nous désirons l'utiliser grâce à un Browser Web à partir de notre PC ayant l'adresse IP "192.168.1.2", il faut permettre cet accès. Par défaut l'accès n'est permis qu'à partir du serveur localement. Or on ne travaille pas interactivement sur un serveur, ce n'est pas une station de travail, donc il est inutile d'installer un serveur X et un interface de fenêtrage tel Gnome. On économise ainsi des ressources.

On va modifier ce fichier "/etc/httpd/conf.d/cacti.conf" en fonction.

Le bloc:


<Directory /usr/share/cacti/>
       <IfModule mod_authz_core.c>
               # httpd 2.4
               Require host localhost
       </IfModule>
       <IfModule !mod_authz_core.c>
               # httpd 2.2
               Order deny,allow
               Deny from all
               Allow from localhost
       </IfModule>
</Directory>

est modifié comme suit:


<Directory /usr/share/cacti/>
       <IfModule mod_authz_core.c>
               # httpd 2.4
               Require all denied
               Require ip 192.168.1.2
#               Require host localhost
       </IfModule>
</Directory>

Le service "httpd.service" doit être redémarré:

systemctl restart httpd.service

Remarquons au passage que le fichier "/etc/httpd/conf.d/php.conf" venant avec PHP est nécessaire.






retour à CACTI