Installation zabbix 2.4.2

zabbix_logo_500x131

Nous allons voir ici comment installer zabbix 2.4.2 sur Debian 7.

Zabbix est un logiciel Open Source qui permet de surveiller l’état du matériel composant le réseau. Il utilise le protocole SNMP pour surveiller l’équipement au sein du réseau. Un agent est également disponible pour disposer de plus d’options de supervision sur la partie serveur. Cette solution est facile à mettre en place, nous pouvons créer de nombreux déclencheurs et les configurer pour recevoir des emails en cas de soucis.

 Préparation de l’installation

Une fois Debian 7 installé, nous installons les paquets nécessaires au fonctionnement de zabbix :

apt-get install build-essential checkinstall mysql-server libmysqlclient15-dev libssl-dev libssh-dev libgnutls-dev libopenipmi-dev libiksemel-dev snmp libsnmp-dev libnet-snmp-perl libcurl4-gnutls-dev fping

Nous téléchargeons les sources de Zabbix :

wget http://downloads.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.4.2/zabbix-2.4.2.tar.gz
tar xvzf zabbix-2.4.2.tar.gz
cd zabbix-2.4.2

Nous créons un utilisateur pour Zabbix :

groupadd -g 9000 zabbix
useradd -u 9000 -g zabbix -d /usr/local/zabbix -c "Zabbix User" zabbix
passwd zabbix

Création de la base de donnée MySQL et création d’un utilisateur Zabbix :

mysql -h localhost -u root -p
create database zabbix;
grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
exit

On peuple la base de données créée :

mysql -u zabbix -pzabbix zabbix < /root/zabbix-2.4.2/database/mysql/schema.sql
mysql -u zabbix -pzabbix zabbix < /root/zabbix-2.4.2/database/mysql/images.sql
mysql -u zabbix -pzabbix zabbix < /root/zabbix-2.4.2/database/mysql/data.sql

Nous créons les répertoires nécessaires pour l’installation de Zabbix :

mkdir /usr/local/zabbix
mkdir /usr/local/zabbix/etc
mkdir /usr/local/zabbix/var
mkdir /usr/local/zabbix/var/run
mkdir /usr/local/zabbix/var/log
mkdir /usr/local/zabbix/frontend/

Lancement de l’installation

On se rend dans le répertoire d’installation, et nous installations Zabbix :

cd /root/zabbix-2.4.2/
./configure --enable-server --with-mysql --with-net-snmp --with-libcurl --with-openipmi --with-jabber --prefix=/usr/local/zabbix
make install

On met en place le script de démarrage automatique de Zabbix

cp /root/zabbix-2.4.2/misc/init.d/debian/zabbix-server /etc/init.d/

On édite le script «zabbix-server », dans un premier temps nous rajoutons les flags permettant au script de démarrer dans le dossiser « /etc/init.d ».

#!/bin/sh
### BEGIN INIT INFO
# Provides: zabbix-server
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Example initscript
# Description: This file should be used to construct scripts to be
# placed in /etc/init.d.
### END INIT INFO

Dans ce même fichier, il y a quelque lignes à remplacer :

DAEMON=/usr/local/sbin/${NAME}
par
DAEMON=/usr/local/zabbix/sbin/${NAME}
PID=/tmp/$NAME.pid
Par
PID=/usr/local/zabbix/var/run/$NAME.pid

Une fois le script modifié, nous le rendons éxécutable et l’activons au démarage

chmod +x /etc/init.d/zabbix-server
update-rc.d zabbix-server defaults

Maintenant on configure le fichier de configuration « zabbix_server.conf »

nano /usr/local/zabbix/etc/zabbix_server.conf

[…]
LogFile=/usr/local/zabbix/var/log/zabbix_server.log
PidFile=/usr/local/zabbix/var/run/zabbix_server.pid
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
DBSocket=/var/run/mysqld/mysqld.sock

On fixe les droits au dossier Zabbix. 640 : lecture/écriture pour le propriétaire, lecture pour le groupe, aucun droit pour les autres.

chmod 640 /usr/local/zabbix/etc/zabbix_server.conf
chown -R zabbix:zabbix /usr/local/zabbix*

On démarre le serveur Zabbix

service zabbix-server start

Pour vérifier que le serveur zabbix est bien démmarré tapez la commande suivante:

tail -100 /usr/local/zabbix/var/log/zabbix_server.log

S’il n’y a pas d’erreurs c’est que votre serveur Zabbix est fonctionnel

Configuration d’Apache

Nous installons les dépendances pour l’interface web de gestion zabbix

apt-get install apache2 php5 php5-gd php5-mysql

On copie les fichiers d’installation du frontend présents dans les sources de Zabbix

cp -R /root/zabbix-2.4.2/frontends/php/* /usr/local/zabbix/frontend

Nous créons un hôte virtuel pour zabbix :

nano /etc/apache2/sites-available/zabbix

<VirtualHost *:80>
        Servername zabbix
        ServerAdmin webmaster@localhost 
        DocumentRoot /usr/local/zabbix/frontend/ 
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /usr/local/zabbix/frontend/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory> 
        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
        <Directory "/usr/lib/cgi-bin">
                AllowOverride None
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny
                Allow from all
        </Directory> 
        ErrorLog ${APACHE_LOG_DIR}/error.log 
        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn 
        CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Nous activons l’hôte virtuel zabbix et nous désactivons le site par défaut:

a2ensite zabbix
a2dissite default

il reste des modifications à effectuer dans le fichier php.ini

nano /etc/php5/apache2/php.ini

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

Nous redémarrons le service Apache

service apache2 restart

installation interface WEB

Connectez-vous à l’url suivante: http://IP-DE-VOTRE-SERVEUR/
Vous devriez attérir sur cette page :

zabbix1

Cliquer sur Next, tous les prérequis doivent être OK comme ci dessous :

zabbix2

Il faut renseigner les champs relatif à votre base de donnée :

zabbix3

On rajoute dans name « zabbix »:

zabbix4

Vérifier que les informations sont justes :

zabbix5

A l’étape 6, il est nécessaire de télécharger le fichier de configuration « zabbix.conf.php » en cliquant sur « Download configuration file ». Il faut ensuite le placer sur votre serveur dans le dossier suivant :  » /usr/local/zabbix/frontend/conf/ ».

zabbix6

cliquer sur « retry », l’erreur à disparu :

zabbix7

Vous pouvez à présent vous connecter, l’identifiant par défaut est admin :

zabbix8

Vous voici sur l’interface de zabbix 2.4.2 🙂

zabbix9

L’installation de zabbix est à présent terminée.

 

Bookmarquez le permalien.