OPEN MIND - OPEN SOURCE

Linux - Zabbix - OpenFire - OpenSsh - Asterisk - Vmware - VirtualBox - Avaya

Vous n'êtes pas identifié.

#1 08-01-2014 15:18:24

zabbixagent
Administrateur

Installaton de Zabbix 2.2.1 sous Ubuntu 12.04 Desktop (FR)

http://musikforever.free.fr/zabbix.jpg

PRESENTATION DE ZABBIX:

Zabbix est un outil relativement méconnu jusqu'ici, qui se propose de remplacer à la fois Nagios et MRTG. Il permet de suivre l'état complet d'un réseau (débits, etc.) et des systèmes le composant (utilisations processeur, disque, mémoire, processus, etc.) en proposant des graphiques personnalisables de chacune des caractéristiques surveillées et de déclencher des alertes sur des seuils personnalisables ou prédéfinis. Il est extrêmement configurable au travers d'une interface web.
Zabbix permet à la fois de suivre l'évolution d'un système d'un point de vue statistique avec des graphiques (générés par RRDtool) mais également de déclencher des alertes lorsqu'un seuil (réglable) est dépassé.
Par exemple, il permet d'envoyer un email lorsque la machine est inaccessible ou encore d'exécuter un script lorsque le serveur web ne répond plus.
Zabbix fonctionne soit en utilisant un système d'analyse "simple", comme Nagios, à base de scripts locaux, soit un agent spécifique devant être installé sur chaque machine à surveiller, permettant ainsi le suivi de nombreux éléments (processus, réseau, mémoire, processeurs, capteurs, etc.). Il est enfin capable d'utiliser un agent SNMP.
Tout se configure au travers d'une interface web un peu déroutante au début, mais relativement pratique une fois que l'on a pris l'habitude.
L'installation est pour le moment un peu compliquée car il faut compiler les agents démons, installer une base de données, etc. Elle reste néanmoins accessible à tout administrateur système.
Enfin, Zabbix permet de générer des schémas du réseau sur lesquels sont également affichés l'état de chaque serveur, permettant de contrôler d'un coup d'œil l'état complet du réseau.


INSTALLATION de ZABBIX-SERVER

Mise à jour de Ubuntu:

Pour valider ce tutoriel, j'ai installé Ubuntu de cette manière : http://zabbixagent.free.fr/viewtopic.php?id=203

$ sudo su -
(entrer son mot de passe)
# apt-get update(liste les packages qui seront mis à jour)
# apt-get upgrade -y (met à jour les packages)


Installation de packages supplémentaires avant de commencer l'installation de Zabbix :

# apt-get install -y build-essential vim checkinstall ssh man

Création utilisateurs zabbix :

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

Télécharger et installer les dépendances nécessaires au fonctionnement de Zabbix Server :

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


Pendant l'installation des packages, une fenêtre apparaîtra pour vous proposer de configurer un mot de passe pour l'application mysql.

http://zabbixagent.free.fr/zabbix221/img/zabbubuntu1.png

Configuration de fping :

# chmod 755 /usr/bin/fping

Télécharger et décompresser zabbix 2.2.1 (dans le dossier /usr/src/):

# cd /usr/src/
# wget http://zabbixagent.free.fr/zabbix221/za … 2.1.tar.gz
# tar -xvf zabbix-2.2.1.tar.gz

Créer un utilisateur zabbix et le dossier sous /usr/local :

# 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

Création de la database zabbix et utilisateur zabbix sous MYSQL :


# mysql -u root -p
(entrez son mot de passe défini plus haut)
mysql> CREATE DATABASE zabbix charset=utf8;
mysql> GRANT DROP,INDEX,CREATE,SELECT,INSERT,UPDATE,ALTER,DELETE ON zabbix.* TO zabbix@localhost IDENTIFIED BY 'zabbix';
mysql > quit;

# cd /usr/src/zabbix-2.2.1
# mysql -u zabbix -pzabbix zabbix < /usr/src/zabbix-2.2.1/database/mysql/schema.sql
# mysql -u zabbix -pzabbix zabbix < /usr/src/zabbix-2.2.1/database/mysql/images.sql
# mysql -u zabbix -pzabbix zabbix < /usr/src/zabbix-2.2.1/database/mysql/data.sql

Installation de zabbix server:

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

Copier des fichiers d'exemples de configurations du serveur dans /usr/local/zabbix/etc:

# cp conf/zabbix_server.conf /usr/local/zabbix/etc

Configurer zabbix_server.conf:

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

Et modifier ces champs:

LogFile=/usr/local/zabbix/var/log/zabbix_server.log
PidFile=/usr/local/zabbix/var/run/zabbix_server.pid
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
DBSocket=/var/run/mysqld/mysqld.sock

Création des scripts pour service /etc/init.d/zabbix_server :

[root@zabbix]# nano /etc/init.d/zabbix-server

#!/bin/sh -e
#
# Zabbix Server init.d script.
#
# Written by Ludovic Valentin.
# Monitoring-fr.org.

PATH="/bin:/sbin:/usr/bin:/usr/sbin"

CONF_NAME=zabbix_server.conf
CONF=/usr/local/zabbix/etc/$CONF_NAME

DAEMON_NAME=zabbix_server
DAEMON=/usr/local/zabbix/sbin/$DAEMON_NAME
DAEMON_ARGS="-c $CONF"

SCRIPT_NAME=zabbix-server
SCRIPT=/etc/init.d/$SCRIPT_NAME
DESC="$DAEMON_NAME init.d script"
PID=/usr/local/zabbix/var/run/$DAEMON_NAME.pid

test -e $DAEMON || exit 0

. /lib/lsb/init-functions

zabbix_start () {
    log_daemon_msg "Starting $DAEMON_NAME"
    start-stop-daemon --start --pidfile $PID \
        --exec $DAEMON -- $DAEMON_ARGS
        log_end_msg $?
}

zabbix_stop () {
    log_daemon_msg "Stopping $DAEMON_NAME"
    start-stop-daemon --stop --pidfile $PID --name $DAEMON_NAME
    log_end_msg $?
}


case "$1" in

    start|stop)
        zabbix_${1}
    ;;

    restart)
        zabbix_stop
        sleep 2
        zabbix_start
    ;;

    force-stop)
        log_daemon_msg "Stopping $DAEMON_NAME"
                if [ -e $PID ]; then
                        killall -q $DAEMON_NAME
                        if [ -e $PID ]; then
                                rm -R $PID
                        fi
                        log_end_msg $?
                else
                        echo "No $PID found; none $DAEMON_NAME killed."
                fi
    ;;

    status)
        log_daemon_msg "Checking $DAEMON_NAME status"
                if [ -e $PID ]; then
                        echo "Status: $DAEMON_NAME is running."
                else
                        echo "Status: $DAEMON_NAME is not running."
                fi
    ;;

    *)
        log_daemon_msg $DESC
        echo "Usage: $SCRIPT {start/stop/restart/force-stop/status}"
        exit 1
    ;;

esac

exit 0

Droit d'exécution et démarrages des services et fichiers de configuration :

# chmod +x /etc/init.d/zabbix-server

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

# /etc/init.d/zabbix-server start

Préparation et configuration de l'interface Web Zabbix:

# apt-get install -y apache2 php5 php5-gd
# apt-get install -y php5-mysql
# cp -r /usr/src/zabbix-2.2.1/frontends/php /usr/local/zabbix/frontend
# nano /etc/apache2/sites-enabled/000-default

et ajouter ce contenu à la fin du fichier 000-default et juste avant la balise </VirtualHost> :

Alias /zabbix "/usr/local/zabbix/frontend/"
<Directory "/usr/local/zabbix/frontend">
    AllowOverride FileInfo AuthConfig Limit Indexes
    Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
    <Limit GET POST OPTIONS PROPFIND>
        Order allow,deny
        Allow from all
    </Limit>
    <LimitExcept GET POST OPTIONS PROPFIND>
        Order deny,allow
        Deny from all
    </LimitExcept>
</Directory>

Modification du fichier /etc/php.ini:

[root@zabbix]# nano /etc/php5/apache2/php.ini

Modifier le comme ce qui suit:

•    change > max_execution_time = 30
•    to > max_execution_time = 600
•    change > max_input_time = 60
•    to > max_input_time = 600
•    change > memory_limit = 32M
•    to > memory_limit = 256M
•    change > post_max_size = 8M
•    to > post_max_size = 32M
•    change > upload_max_filesize = 2M
•    to > upload_max_filesize = 16M
•    change > date.timezone =
•    to > date.timezone = Europe/Paris

Et redémarrer Apache :

# /etc/init.d/apache2 restart

Lancer une page web et tapez l'adresse de votre serveur zabbix comme ceci :

http://ipdevotreserveurzabbix/zabbix/php/setup.php et suivez les étapes de configuration suivantes:

http://zabbixagent.free.fr/zabbix221/img/zabbubuntu2.png

http://zabbixagent.free.fr/zabbix221/img/zabbubuntu3.png

http://zabbixagent.free.fr/zabbix221/img/zabbubuntu4.png
Entrez les identifiants que vous avez crée lors de la requête mysql (zabbix / zabbix) dans notre exemple)

http://zabbixagent.free.fr/zabbix221/img/zabbubuntu5.png

http://zabbixagent.free.fr/zabbix221/img/zabbubuntu6.png

http://zabbixagent.free.fr/zabbix221/img/zabbubuntu7.png

http://zabbixagent.free.fr/zabbix221/img/zabbubuntu8.png
Déposer le fichier zabbix.conf.php ici après l'avoir télécharger: "/usr/local/zabbix/frontend/php/conf/zabbix.conf.php"

http://zabbixagent.free.fr/zabbix221/img/zabbubuntu9.png

Cliquez sur "Finish" si "Ok", sinon revoir les dernières étapes.

http://zabbixagent.free.fr/zabbix221/img/zabbix10.png

La première connexion se fera avec les identifiants par défaut:

login name : Admin
Password : zabbix


La solution ? On réinstalle tout....

Hors ligne

 

Pied de page des forums

Propulsé par FluxBB
Traduction par FluxBB.fr