Installation du serveur de monitoring Zabbix

By | 18 juillet 2012

Zabbix est un logiciel de monitoring  open source créé par Alexei Vladishev. Zabbix.  Celui-ci  permet de surveiller la disponibilité ainsi que le temps de réponse de services standards  sans installer aucun logiciel sur l’hôte monitoré. Un agent Zabbix peut aussi être installé sur les hôtes Linux, UNIX et Windows afin d’obtenir des statistiques comme la charge CPU, l’utilisation du réseau, l’espace disque… Zabbix peut enfin réaliser le monitoring via SNMP Je vais vous expliquez comment installer cette alternative à Nagios.

Objets

Pour cela j’utilise :

Nouvel utilisateur

Ajout d’un nouvel utilisateur zabbix faisant parti du groupe admin:

sudo -s
useradd -G admin zabbix
passwd zabbix

Installation des dépendances :

Avant de récupérer le packet, nous allons installer les dépendances manquantes :

apt-get install apache2 libapache2-mod-php5 php5 php5-mysql fping mysql-server checkinstall

Si c’est votre première installation du serveur mysql, un mot de passe vous seras demandé.

apt-get install libmysql++-dev libmysql++3 php5-mysql php5-gd libcurl3 libiksemel-dev libiksemel3 libsnmp-dev snmp libiksemel-utils libcurl4-openssl-dev

Création de la base de données et des tables

Connectez-vous à votre base SQL, Par défaut le compte root ainsi que le mot de passe défini précedement.

mysql --user= --password=
create database zabbix character set utf8;
grant all privileges on zabbix.*  to [email protected] identified by 'votre_mot_de_passe_ici' 
exit

Les sources 

Je vais récupérer les sources de zabbix 2.0

cd /usr/src/
wget http://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/2.0.0/zabbix-2.0.0.tar.gz
tar xvzf zabbix-2.0.0.tar.gz

Zabbix fournit, dans les sources, les scripts SQL de création des tables nécessaires au fonctionnement de zabbix.

cd zabbix-2.0.0/database/mysql/
cat schema.sql | mysql --user=root --password="votre_mot depasse_ici" zabbix
cat images.sql | mysql --user=root --password="votre_mot depasse_ici" zabbix
cat data.sql | mysql --user=root --password="votre_mot depasse_ici" zabbix

Installations :

Nous allons préparer le terrain en créeantun répertoire zabbix dans /etc/

mkdir /etc/zabbix
cd ../..

C’est parti pour la compilation (de l’été) désolé.

./configure --enable-server --enable-agent --prefix=/etc/zabbix --with-mysql --with-net-snmp --with-libcurl

make install

Les fichiers de configuration de Zabbix se trouvent dans le répertoire« misc/conf » dans le répertoire des sources (/usr/src/zabbix/zabbix-2.0.0/misc/conf), et nous allons les déplacer dans le répertoire« /etc/zabbix/ ».

cp -R /usr/src/zabbix-2.0.0/misc/* /etc/zabbix/

Puis on édite le fichier de configuration du serveur

vi /etc/zabbix/etc/zabbix_server.conf

Modifier les options suivantes :

        Logfile=/var/log/zabbix/zabbix_server.log
    Pidfile=/var/run/zabbix/zabbix_server.pid
    DBUser=zabbix
    DBPassword=

Création des 2 répertoires et application des droits manquants :

mkdir /var/log/zabbix
mkdir /var/run/zabbix
chmod -R /var/log/zabbix
chmod -R /var/run/zabbix

Je vais ensuite modifier les fichiers de configuration de l’agent :

vim /etc/zabbix/etc/zabbix_agentd.conf

Voici les options à modifier :

        Logfile=/var/log/zabbix/zabbix_agentd.log
        Pidfile=/var/run/zabbix/zabbix_agentd.pid
        Server=127.0.0.1
        Hostname=

 Configuration de l’interface WEB :

Les fichiers de l’interface web se trouvent dans le répertoire « frontends/php/ » à la racine du répertoire des sources, il faut les déplacer dans le répertoire Zabbix de votre DocumentRoot.

mkdir /var/www/zabbix/
cp -R /usr/src/zabbix-2.0.0/frontends/php/* /var/www/zabbix/

Configuration via l’adresse web  http://IP_serveur_ZABBIX/zabbix

Pour lancer le setup cliquer sur « Nex t>> »

Gestion des prérequis

Vous aurez surement l’erreur suivantes, pour la corriger, veuillez éditer le fichier de configuration  /etc/php5/apache2/php.ini

vi /etc/php5/apache2/php.ini

Voici les paramètres à changer :

        memory_limit = 256M
        post_max_size = 32M
    upload_max_filesize = 16M
    max_execution_time = 600
    max_input_time = 600
    date.timezone = Europe/Paris

Une fois les paramètres changé, cliquez sur « Retry ».

Si ça ne suffit pas recharger votre service apache2

/etc/init.d/apache2 reload

 

Connexion à la base SQL :

Effectuer un test de connexion, celui-ci doit-être OK

Votre serveur Apache est sur le même serveur que votre Zabbix donc cliquez juste sur Next >>

Comme indiquez sur l’écran, le fichier de configuration zabbix.conf.php doit être dans le répertoire : « /var/www/zabbix/conf/zabbix.conf.php »

Si vous ne savez pas comment faire, utilisez l’excellent winscp pour copier votre fichier de conf vers votre serveur Linux.

ou :

cp /var/www/zabbix/conf/zabbix.conf.php.exemple /var/www/zabbix/conf/zabbix.conf.php
vi /var/www/zabbix/conf/zabbix.conf.php

Puis modifier les paramètres du zabbix.conf.php que vous avez téléchargé depuis le bouton « Download configuration file« .

Script de démarrage :

Les scripts de démarrage ce trouve dans le dossier source : « /usr/src/zabbix-2.0.0/misc/init.d/debian »
Pour mettre en place ces scripts, il vous suffit de copier le contenu du dossier «  /usr/src/zabbix-2.0.0/misc/init.d/debian » dans le dossier « /etc/init.d/ ».

cp /usr/src/zabbix-2.0.0/misc/init.d/debian/* /etc/init.d/
chmod -R +x /etc/init.d/zabbix-server
chmod -R +x /etc/init.d/zabbix-agent

Le serveur étant maintenant démarré, rendez-vous sur http://ip_du_server/zabbix ! Le couple log in/mot de passe par défaut est : admin/zabbix

 
Author: matstar

Administrateur système et réseau depuis quelques années, j'ai créé ce blog comme carnet de route. De petits rien qui j'espère profiteront au plus grand nombre !

Laisser un commentaire