Installation d'un serveur de supervision Zabbix.
1. Installation
1.1. Préparation
1.1.1 Information
Prérequis : Machine UNIX
Version choisie : Ubuntu Server
Critère : Unix connu et une bonne prise en charge de l’applicatif Zabbix.
Choix de la release : 12.04.2 LTS : « Long Term Support »
La release que nous avons choisi est intéressante dans un environnement de production car c’est une version stable et qui est mis à jour jusqu’en Avril 2017.
1.1.2 Téléchargement
Récupération des sources (http://www.zabbix.com/download.php)
1.1.3 Création dossier
Nous allons d'abord procéder à la création des répertoires qui vont nous servir à l'installation de Zabbix.
- Création d'un répertoire pour stocker les paquets nécessaire à l'installation de Zabbix :
- Création d'un répertoire pour stocker les paquets nécessaire à l'installation de Zabbix :
root@FRCHA3ZABU1:~#mkdir /pkg
- Création du dossier où sera stocké l'application Zabbix :
root@FRCHA3ZABU1:~#mkdir /opt/zabbix-2.0.5
- Création du dossier où sera stocké les fichiers nécessaire à l'applicatif Web :
root@FRCHA3ZABU1:~#mkdir /var/www/zabbix-2.0.5
I.1.4 Création utilisateurs
Création de l'utilisateur zabbix (si non crée lors de l'installation) qui est l'utilisateur qui aura les droits sur les dossiers et base de donnée Zabbix.
root@FRCHA3ZABU1:~# adduser zabbix
Adding user `zabbix' ... Adding new group `zabbix' (1001) ... Adding new user `zabbix' (1001) with group `zabbix' ... Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully
I.1.5 Vérification serveur Web
Vérification de la présence du LAMP qui peut être installé lors de l'installation d'Ubuntu Server ( voir chapitre : « Installation de base d’un ubuntu »)
- Accéder à l'adresse IP et tomber sur la page Apache par défaut
- Vérifier que les services Apache & Mysql tourne sur le Serveur.
root@FRCHA3ZABU1:~#ps -ef | grep mysql
root@FRCHA3ZABU1:~#ps -ef |grep apache
I.1.6 Transfert des fichiers
Nous allons utiliser l'Outil Winscp( à condition d’avoir installé le package sshd au prealable : apt-get install sshd ou coché l’option lors de l’installation, voir : Installation de base d’un ubuntu afin d'envoyer les fichiers qui nous serviront à la compilation de Zabbix & nous allons ensuite décompresser les archives.
I.1.7 Décompression
root@FRCHA3ZABU1:~# cd /pkg
root@FRCHA3ZABU1:/pkg# gzip -d zabbix-2.0.5.tar.gz
root@FRCHA3ZABU1:/pkg# tar tvf zabbix-2.0.5.tar
{Permet de voir les fichiers que contienne l'archive}
root@FRCHA3ZABU1:/pkg# tar xvf zabbix-2.0.5.tar
{Décompresse l'archive}
root@FRCHA3ZABU1:/pkg# ls
zabbix-2.0.5 zabbix-2.0.5.tar
I.1.8 Procédure sur base de donnée
Il faut maintenant installer une application web de gestion pour les système de base de donnée, nous prenons celui qui est le plus largement utilisé : Phpmyadmin.
root@FRCHA3ZABU1:/# apt-get install phpmyadmin
Il faut maintenant créer l'utilisateur Zabbix, sa base ainsi qu'importer ses tables.
- On se connecte donc comme ceci en remplaçant bien sur l'adresse IP par la bonne :
On arrive sur cette page d’accueil, il faut donc maintenant se connecter en utilisant ses logins et se cliquer sur Exécuter.
- Dans phpmyadmin, cliquer sur privilèges :
- Cliquer sur ajouter un utilisateur :
- Entrer le nom Zabbix, spécifier client local et saisissez votre mot de passe :
- On lui assigne une base de donnée à son nom et dont il à les accès GRANT ( tout les accès)
On clique ensuite sur créer un nouvel utilisateur.
On va importer les structure de base dans la base en utilisant cette méthode :
root@FRCHA3ZABU1:~# ls /pkg/zabbix-2.0.5/database/mysql/
data.sql images.sql schema.sql
root@FRCHA3ZABU1:~# cd /pkg/zabbix-2.0.5/database/mysql/
root@FRCHA3ZABU1:/pkg/zabbix-2.0.5/database/mysql#mysql -u root -p zabbix <schema.sql
root@FRCHA3ZABU1:/pkg/zabbix-2.0.5/database/mysql#mysql -u root -p zabbix <images.sql
root@FRCHA3ZABU1:/pkg/zabbix-2.0.5/database/mysql#mysql -u root -p zabbix <data.sql
I.1.9 Vérification
Vérifier la présence des librairies et des applicatifs obligatoire pour la compilation et la futur mise en route de Zabbix.
Si ce n'est pas déjà fait , installer les paquets suivant :
Le compilateur ainsi que les fichiers includes essentielle à la compilation :
root@FRCHA3ZABU1:/apt-get install build-essential
Librairie mysql (dev)
root@FRCHA3ZABU1:/apt-get install libmysqlclient15-dev
Paquet pour compilé avec du service SNMP
root@FRCHA3ZABU1:/apt-get install snmp libsnmp-dev snmpd
Librairie pour la mise en place du LDAP, HTTP, SMTP ...
root@FRCHA3ZABU1:/apt-get install libcurl4-openssl-dev
Programme comme Ping en amélioré.
root@FRCHA3ZABU1:/apt-get install fping
I.2 Compilation & Configuration & Privilèges
- Configuration
root@FRCHA3ZABU1:/pkg/zabbix-2.0.5/./configure --prefix=/opt/zabbix-2.0.5 --with-mysql --with-net-snmp --with-jabber --with-libcurl --enable-server --enable-agent --sysconfdir=/etc/zabbix/
{ --prefix Permet de définir dans quel dossier vont se trouver les fichiers de configuration }
{ --with-# Permet de définir les dépendances }
{ --enable-# Permet de compiler les agents et/ou serveurs
{ --sysconfdir Permet de donner la destination des fichiers de configuration }
- Préparation
root@FRCHA3ZABU1:/pkg/zabbix-2.0.5/ make
- Installation
root@FRCHA3ZABU1:/pkg/zabbix-2.0.5/ make install
I.2.1 Lien symbolique
root@FRCHA3ZABU1:/ ln -s /opt/zabbix-2.0.5 /opt/zabbix
I.2.2 Droit et privilège
Affectation de droit au dossier de log et de Web :
root@FRCHA3ZABU1:/chown -R zabbix /var/log/zabbix
root@FRCHA3ZABU1:/chown -R zabbix /var/www/zabbix-2.0.5
Et on donne temporairement tous les droits au dossier zabbix-2.0.5 pour procédure automatique de création de fichier de configuration :
root@FRCHA3ZABU1:/var/www chmod -R 777 zabbix-2.0.5/
I.2.3 Fichier de configuration
Le fichier de configuration serveur doit ressembler à celui-ci :
root@FRCHA3ZABU1:/cat /etc/zabbix/zabbix_server.conf | grep -v '^#' | uniq
LogFile=/var/log/zabbix/zabbix_server.log
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix86+
FpingLocation=/usr/bin/fping
Le fichier de configuration client doit ressembler à celui-ci :
root@FRCHA3ZABU1:/# cat /etc/zabbix/zabbix_agentd.conf | grep -v '^#' | uniq
LogFile=/var/log/zabbix/zabbix_agentd.log
Server=127.0.0.1
ServerActive=127.0.0.1
Hostname=FRCHA3ZABU1
I.3 Apache
I.3.1 Lien symbolique et fichier source
On va maintenant copié les fichiers Zabbix qui dans le répertoire Apache et créer un lien symbolique :
root@FRCHA3ZABU1:/# cp -r /pkg/zabbix-2.0.5/fronteds/php/ /var/www/zabbix-2.0.5 root@FRCHA3ZABU1:/ ln -s /var/www/zabbix-2.0.5 /var/www/zabbix
I.3.2 Creation de Vhost
(Etant donné que l'on veut juste modifier le dossier Zabbix, nous allons copier le fichier default et modifier après le dossier qui pointe vers le lien symbolique Zabbix).
root@FRCHA3ZABU1:/etc/apache2/sites-available#cp default zabbix
root@FRCHA3ZABU1:/etc/apache2/sites-available#nano zabbix
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/zabbix/
{Modifie le lien vers le dossier ou sont stocké les répertoires web}
<Directory />
I.3.3 Gestion des sites
root@FRCHA3ZABU1:/a2ensite zabbix
root@FRCHA3ZABU1:/a2dissite default
{a2dissite default désactive le site default et a2ensite active le site zabbix}
I.4 Upstart
Gestionnaire de démarrage des Processus
Afin de lancer le process Zabbix au démarrage de notre machine Ubuntu Server, nous utilisons le gestionnaire de démarrage des processus appelé Upstart et qui s’effectue au moyen de commande initctl. Pour commencer nous avons copié les fichiers de démarrage dans le dossier /etc/init/ auquel nous avons changé le chemin d’exécution :
I.4.1 Configuration
root@FRCHA3ZABU1:/# cp /pkg/zabbix-2.0.6/misc/init.d/ubuntu/zabbix_server.conf /etc/init/
# zabbix-server - Start zabbix server
description "Zabbix Server"
author "S. CANCHON"
start on (runlevel [2345]
and started mysql)
stop on runlevel [016]
respawn
expect daemon
exec /opt/zabbix/sbin/zabbix_server
root@FRCHA3ZABU1:/# cp /pkg/zabbix-2.0.6/misc/init.d/ubuntu/zabbix_agent.conf /etc/init/
# zabbix-agent - Start zabbix agent
description "Zabbix Agent"
author "S. CANCHON"
start on runlevel [2345]
stop on runlevel [016]
respawn
expect daemon
exec /opt/zabbix/sbin/zabbix_agentd
I.4.2 Activation
Maintenant que la configuration est effectué nous pouvons utilisé les commandes pour lancé les processus :
root@FRCHA3ZABU1:/# initctl start zabbix_server
root@FRCHA3ZABU1:/# initctl start zabbix_agent
II Ajout Client
Cette documentation explique l’installation d’un client Zabbix sur une machine Windows ainsi que la configuration sur le serveur.
II.1 Procédure Ajout Windows
II.1.1 Création de répertoire
Nous allons tout d’abord créer sur le poste cible un répertoire prog. ( C:\prog)
( ce répertoire peut servir plus tard à d’autre chose que Zabbix )
Dans ce répertoire, nous créons le répertoire zabbix . ( veuillez respecter l’absence de majuscule pour une bonne syntax)
II.1.2 Récupération Agent Zabbix
Copier les fichiers sysème (Win32 ou Win64) dans le repertoire :
Copier ensuite le fichier de configuration en fonction du serveur de supervision :
II.1.3 Modification fichier de configuration
Nous allons donc maintenant modifier le fichier de configuration pour configurer notre client comme il faut :
Vérifier :
· LogFile=c:/prog/zabbix/zabbix_agentd.log
- Server=IP du serveur
- ServerActive= IP Correspondant au réseau
- Hostname= Nom de la machine
II.1.4 Installation
Exécuter le fichier zabbix\windows\agents 2.0.6\Install Service Zabbix.cmd
- Les messages suivant doivent apparaitre dans votre fenêtre de commande :
- Zabbix Agent installed successfully
- Event source "Zabbix Agent ” installed successfully
Ouvrir le gestionnaire de service et démarrer le service Zabbix.
II.1.5 Vérification
Vérifier que l’on peut accéder au client depuis le serveur :
Depuis le serveur, faire : telnet ip_du_client 10050
si pas de réponse, Vérifier l’accès au port 10050.
Dans le cas d’un échec de communication au superviseur, il faut exécuter le fichier suivant :
II.2 Procédure Ajout sur Zabbix
II.2.1 Ajout Client
Pour ajouter un hôte cliquer sur configuration>Hosts .
Une fois dans le menu Hosts, nous allons cliquer en haut à gauche sur le bouton Create Host, comme ci-dessous.
On va ensuite remplir les champs d’utilisateur :
Les champs Hostname, Groups et IP Address sont obligatoires pour la création d’un client
II.4.2 Configuration Client
Cliquer ensuite Save. Vous avez maintenant un nouvel hôte dans Zabbix. Pour le moment, il n’est pas surveillé car aucune règle de surveillance lu est affecté.
II.1.2.1 Template général
Afin de donner le minimum de surveillance à notre poste Zabbix, on va lui affecter un template généraliste Windows qui nous informera sur sa mémoire RAM, ses processus, sa taille disque, etc …
1. Cliquer sur Host et le client à modifier.
2. Cliquer sur modèle
3. Le Modèle à ajouter Sélectionner
4. Sauver la modification
Il faut attendre quelque minute avant d’obtenir les première information de supervision.
0 commentaires :
Enregistrer un commentaire