Zabbix Documentation 1.8

3.04.04.2 (current)In development:4.4 (devel)Unsupported:1.82.02.22.43.23.4

User Tools

Site Tools

This translation is older than the original page and might be outdated. See what has changed.

Sidebar

fr:manual:installation

2 Installation

2.1 Comment obtenir Zabbix

Vérifier sur la page d'accueil de Zabbix à l'adresse http://www.zabbix.com pour obtenir des informations sur la version actuelle et les instructions de téléchargement.

2009/11/12 08:52

2.2 Prérequis

2.2.1 Prérequis matériels

2.2.1.1 Prérequis pour la mémoire

ZABBIX requiert à la fois de la mémoire physique et de la mémoire disque. 128 MB de mémoire physique et 256 MB d'espace disque libre peuvent être suffisant. Cependant, la valeur de la mémoire disque requise dépend évidement du nombre d'hôtes ainsi que des paramètres qui seront supervisé. Si vous prévoyiez de garder un long historique des paramètres supervisés, il sera peut-être nécessaire d'envisager des valeurs en Gigabytes pour avoir assez d'espace pour stocker l'historique dans la base de données. Chaque démon ZABBIX nécessite plusieurs connexions au serveur de base de données. La valeur de la mémoire allouée pour les connexions dépend de la configuration du moteur de la base de données.

Remarque: Plus vous avez de mémoire physique, plus rapide sera la base de données (et par conséquent ZABBIX)!
2.2.1.2 Prérequis CPU

ZABBIX et spécialement la base de données ZABBIX peuvent nécessiter d'importantes ressources CPU en fonction du nombre de paramètres supervisés ainsi que du moteur de base de données choisis.

2.2.1.3 Autres matériels

Un port de communication série ainsi qu'un modem GSM sont nécessaires pour utiliser les notifications par SMS émis par ZABBIX.

2.2.1.4 Exemples de configurations matérielles

Le tableau fournis plusieurs exemples de configurations matérielles:

Nom Plateforme CPU/Mémoire Base de données Hôtes supervisés
Small Ubuntu LinuxPII 350MHz 256MBMySQL MyISAM20
MediumUbuntu Linux 64 bitAMD Athlon 3200+ 2GBMySQL InnoDB500
LargeUbuntu Linux 64 bitIntel Dual Core 64004GB RAID10 MySQL InnoDB or PostgreSQL>1000
Very largeRedHat EnterpriseIntel Xeon 2xCPU 8GBFast RAID10 MySQL InnoDB or PostgreSQL>10000
Remarque: Les configurations réelles dépendent fortement du nombre d'items actifs et du taux de rafraîchissement. Il est fortement conseillé de mettre en place la base de données sur un serveur séparé pour les grandes installations.

2.2.2 Plateformes supportées

Du fait des exigences de sécurité et de la nature critique de la mission qui est la supervision des serveurs, UNIX est le seul système d'exploitation qui peut offrir le rendement nécessaire en termes de performance, de tolérance de pannes et de résilience. ZABBIX fonctionne sur les versions leader du marché. ZABBIX est testé sur les plateformes suivantes:

  • AIX
  • FreeBSD
  • HP-UX
  • Linux
  • Mac OS/X
  • NetBSD
  • OpenBSD
  • SCO Open Server
  • Solaris
  • Windows 2000, 2003, XP, Vista (uniquement l'agent ZABBIX)
Remarque: ZABBIX peut fonctionner sur les systèmes d'exploitation similaires à Linux.

2.2.3 Prérequis logiciels

ZABBIX est construit autour du serveur web Apache, d'un moteur de base de données et du langage PHP.

Les logiciels suivant sont requis pour faire fonctionner ZABBIX:

LogicielVersionCommentaires
Apache 1.3.12 ou supérieure
PHP 5.2 ou supérieure
PHP modules:
php-gd
GD 2.0 ou supérieureLe module PHP GD doit sup-porter le format d'image PNG.
PHP bc support php-bcmath, –enable-bcmath
PHP socket support php-net-socket, –enable-sockets. Requis pour le support des scripts utilisateurs.
MySQL
php-mysql
3.22 ou supérieure Requis si MySQL est utilisé comme SGBD pour ZABBIX.
Oracle
php-oci8
Requis si Oracle est utilisé comme SGBD pour ZABBIX.
PostgreSQL
php-pgsql
7.0.2 ou supérieure Requis si postgreSQl est utili-sé comme SGBD pour ZABBIX..
Il est a noter qu'utiliser Post-greSQL version 8.x ou supé-rieure apporte de meilleures performances.
SQLite
php-sqlite3
3.3.5 ou supérieure Requis si SQlite est utilisé comme SGBD pour ZABBIX.
Remarque: ZABBIX peut aussi bien fonctionner sur les versions précédentes d'Apache, MySQL, Oracle et PostgreSQL.

Le support de l'HTML et des images PNG est requis. MS Explorer (5.xx et 6.xx ainsi que Mozilla 1.x fonctionnent parfaitement. Les cookies et le javascript doivent être activés. Les autres navigateurs peuvent aussi bien fonctionner avec ZABBIX..

2.2.4 Prérequis serveur

PrérequisDescription
OpenIPMI Requis pour le support d'IPMI
libssh2 Requis pour le support du SSH

2.2.5 Choix du moteur de base de données

Le serveur ZABBIX et Proxy supportent quatre moteurs de base de données:

  • MySQL
  • Oracle
  • PostgreSQL
  • SQLite

2.2.6 Taille de la base de données

La configuration des données de ZABBIX requiert une valeur fixe d'espace disque qui ne doit pas beaucoup évoluer.

La taille de la base de données ZABBIX dépend principalement des variables suivantes qui définissent la quantité d'historique des données stockées:

  • Nombre de valeurs traitées par seconde

Ceci est une moyenne du nombre de nouvelles valeurs que le serveur ZABBIX reçoit chaque seconde. Par exemple, si nous avons 3000 items pour la supervision avec un taux de rafraîchissement de 60 secondes, Le nombre de valeurs par seconde est donné par la formule suivante: 3000/60 = 50.

Cela signifie que 50 nouvelles valeurs par seconde sont ajoutées dans la base de données ZABBIX.

  • Paramètres de l'Housekeeper pour l'historique

ZABBIX conserve les valeurs durant une période de temps fixée, normalement plusieurs semaines ou mois. Chaque nouvelle valeur nécessite une certaine valeur d'espace disque pour les données et les index.

Donc, si nous voulons conserver un historique sur 30 jours et que nous recevons 50 valeurs par seconde, le nombre total de valeur sera au alentour de (30*24*3600)* 50 = 129.600.000, soit environ 130 Millions de valeurs.

En fonction du moteur de base de données utilisé, du type de valeurs reçues (décimaux, entiers, chaînes de caractères, fichiers log, etc), l'espace disque pour conserver une seule valeur peut varier de 40 octets à plusieurs centaines d'octets. Normalement, cela tourne autour de 50 octets par valeur. Dans notre cas, Cela signifie que 130M de valeurs vont nécessiter 130M * 50 octets = 6.5Go d'espace disque.

  • Paramètres de l'Housekeeper pour les tendances (trends)

ZABBIX conserve 1 heure max/min/avg/count de statistiques pour chaque item dans la table trends. La donnée est utilisée pour les tendances et les graphiques sur les longues périodes.

La base de données ZABBIX, en fonction du type de la base de données, nécessite 128 octets pour chacun au total. Supposons que nous voulons garder les tendances des données sur 5 ans. 3000 valeurs vont nécessiter (3000/1800)*(24*3600*365)* 128 = 6.3Go par an, ou 31.5Go pour les 5 ans.

  • Paramètres de l'Housekeeper pour les événements

Chaque événement ZABBIX nécessite approximativement 130 octets d'espace disque. Il est difficile d'estimer le nombre d'événement généré par ZABBIX en une journée. Dans le pire des scénarios, nous pouvons supposer que ZABBIX génère un événement par seconde.

Cela signifie que si nous voulons garder les événements sur 3 ans, 3*365*24*3600* 130 = 11Go seront nécessaires.

Le tableau contient des formules qui peuvent être utilisées pour calculer l'espace disque nécessaire pour le système ZABBIX:

ParamètreFormule pour l'espace disque requis (en octets)
Configuration de ZABBIX Taille fixe. Normalement 10 Mo ou moins.
Historique jours*(items/taux de rafraichissement)*24*3600*octets
items: nombre d'items
jours: nombre de jours de conservation de l'historique
taux de rafraîchissment: Moyenne du taux de rafraîchissement des items
octets: nombre d'octets nécessaire pour conserver une seule valeur, dépend du moteur de base de données, normalement 50 octets.
Tendances jours*(items/1800)*24*3600*octets
items: nombre d'items
jours: nombre de jours de conservation de l'historique
octets: nombre d'octets nécessaire pour conserver une seule tendance, dépend du moteur de base de données, normalement 128 octets.
Evénements Jours*événements*24*3600*octets
événements: nombre d'événements par se-conde. Un événement par seconde dans le pire des scénarios
jours: nombre de jours de conservation de l'historique.
octets: nombre d'octets nécessaire pour conserver un seul événement, dépend du moteur de base de données, normalement 130 octets.

Donc, L'espace disque total requis peut-être calculé par:
Configuration + Historique + Tendances + Evénements
L'espace disque ne sera pas utilisé immédiatement après l'installation de Zabbix. La taille de la base de données augmentera jusqu'à un certain point, qui dépends des paramètres de l'Housekeeper

Remarque: L'espace disque requis pour les noeuds dans une installation distribuées est calculée de manière similaire. Cependant, cela dépends aussi du nombre total de noeuds enfant liés à un autre noeud.

2.2.7 Synchronisation du temps

Il est très important que la date soit réglée de façon précise sur le serveur Zabbix. timed est un des démons qui synchronise le temps de l'hôte avec le temps d'autres machines les plus populaires.

2009/11/12 09:53

2.3 Composants

2.3.1 Composants de ZABBIX

ZABBIX se compose de plusieurs composants logiciels majeurs, dont les rôles sont décrit ci-dessous.

2.3.2 Serveur ZABBIX

Ceci est la partie centrale du logiciel Zabbix. Le serveur peut vérifier à distance les services réseau (comme les serveurs Web et serveurs de courrier électronique) en utilisant les vérifications simples, mais il est aussi l'élément central auquel les agents rapporteront la disponibilité ,l'intégrité des informations ainsi que les statistiques. Le serveur est le référentiel central où toute la configuration des données statistiques et opérationnelles est stockée. Il est l'entité dans le logiciel Zabbix qui avertira les administrateurs lorsque des problèmes surgiront dans l'un des systèmes surveillés.

Zabbix peut également effectuer la supervision sans agent et surveiller les périphériques réseau en utilisant des agents SNMP.

2.3.3 Proxy ZABBIX

Le proxy est une partie optionnelle du déploiement ZABBIX. Le Proxy recueille les performances et la disponibilité des données pour le compte du serveur ZABBIX. Toutes les données recueillies sont bufferisées au niveau local puis transférées au serveur Zabbix auquel appartient le proxy.

ZABBIX Proxy est une solution idéale pour une surveillance centralisée des sites distants, des succursales, et des réseaux n'ayant pas d'administrateur locaux.

Les proxy ZABBIX peuvent également être utilisés pour répartir la charge d'un serveur ZABBIX. Dans ce cas, seuls les proxy recueillent les données permettant ainsi moins de traitement CPU et d'E/S disque sur le serveur.

2.3.4 Agent ZABBIX

Afin de surveiller activement les ressources locales et les applications (comme les disques durs, mémoire, processeur, etc) sur les systèmes en réseau, les systèmes doivent exécuter l'Agent ZABBIX. L'agent va recueillir des informations à partir du système sur lequel il est en marche, et déclarer ces données à ZABBIX pour un traitement ultérieur. En cas d'échecs (comme un disque dur plein, ou le plantage d'un processus de service), le serveur ZABBIX peut directement alerter les administrateurs de la machine qui a signalé l'erreur.

Les agents Zabbix sont extrêmements efficaces en raison du recours à des appels système natif de collecte d'informations statistiques.

2.3.5 Interface Web

L'interface Web permet un accès facile aux données ainsi que la configuration de ZABBIX de n'importe où et depuis n'importe quelle plateforme. L'interface est une partie du Serveur ZABBIX, et est habituellement (mais pas nécessairement) exécutée sur la même machine physique que celle exécutant le serveur ZABBIX.

L'interface ZABBIX doit s'exécuter sur la même machine physique, si SQLite est utilisé.
2009/11/12 11:14

2.4 Installation depuis Les Sources

2.4.1 Prérequis logiciels

L'installation de Zabbix serveur ou agent depuis les sources requiert des logiciels additionnels. Les logiciels suivant sont requis pour compiler Zabbix:

Un des moteurs de base de données suivant:

  • En-têtes et librairies MySQL

Version 3.22 ou supérieure requise.

  • En-têtes et librairies Oracle

Les en-têtes et librairies Sqlora8 sont requis.

  • En-têtes et librairies PostgreSQL

Version 7.0.2 ou supérieure requise. Pensez à utiliser PostgreSQL 8.x pour de meilleures performances.

  • En-têtes et librairies SQLite

Version 3.3.5 ou supérieure requise.

Habituellement fournis avec mysql-dev, postgresql-dev, sqlite3 paquets-dev.

Librairies et fichiers d'entête NET-SNMP (ou UCD-SNMP)

Requis pour le support du SNMP. Optionnel.

Librairies et fichiers d'entête Iksemel

Requis pour activer la messagerie Jabber. Optionnel.

Librairies et fichiers d'entête Libcurl

Version 7.13.1 ou supérieur requis pour le module de supervision WEB. Optionnel.

Compilateur C

Un compilateur C est requis. Le compilateur GNU C est le meilleur choix pour les plateformes libres. Les autres compilateurs C (HP, IBM) peuvent tout aussi bien être utilisés.

GNU Make

GNU make est nécessaire pour traiter les fichier Makefiles de ZABBIX.

2.4.2 Structure de la distribution ZABBIX

  • docs

Contient ce manuel au format PDF

  • src

Contient les sources pour tous les processus ZABBIX excepté les fichier concernants l'interface.

  • src/zabbix_server

Contient les Makefiles et les sources pour zabbix_server.

  • src/zabbix_agent

Contient les Makefiles et les sources pour zabbix_agent et zabbix_agentd.

  • src/zabbix_get

Contient les Makefiles et les sources pour zabbix_get.

  • src/zabbix_sender

Contient les Makefiles et les sources pour zabbix_sender.

  • include

Contient les fichiers include de ZABBIX.

  • misc
    • misc/init.d

Contient les scripts de démarrage pour les différentes plateformes.

  • frontends
    • frontends/php

Contient les fichiers de l'interface PHP.

  • create

Contient les scripts SQL pour la création de la base de données.

  • create/schema

Contient les Schémas de création de la base de données

  • create/data

Contient les données pour la création de la base de données.

  • upgrades

Contient les procédures de mise à niveau pour les différentes versions de ZABBIX.

2.4.3 ZABBIX Server

Côté serveur

Etape 1

Créer le compte du super-utilisateur ZABBIX

Ceci est l'utilisateur qui sera utilisé par le serveur ZABBIX. Pour une utilisation en production, vous devez créer un compte dédié non privilégié ( 'zabbix' est couramment utilisé). Exécuter ZABBIX en tant que 'root', 'bin', ou tout autre compte avec des droits spéciaux est un risque de sécurité. Ne faites pas ça!

Le processus serveur ZABBIX (zabbix_server) est protégé contre son exécution sous le compte root.
Etape 2

Extraction des sources ZABBIX

shell> gunzip zabbix-1.6.tar.gz && tar -xvf zabbix-1.6.tar
Etape 3

Créer la base de données ZABBIX

ZABBIX est livré avec des scripts SQL utilisés pour créer le schéma de la base de données requis et pour mettre en place une configuration par défaut. Il y a des scripts séparés pour MySQL, Oracle, Post-greSQL et SQLite. Pour MySQL:

shell> mysql -u<username> -p<password>
mysql> create database zabbix character set utf8;
mysql> quit;
shell> cd create/schema
shell> cat mysql.sql | mysql -u<username> -p<password> zabbix
shell> cd ../data
shell> cat data.sql | mysql -u<username> -p<password> zabbix
shell> cat images_mysql.sql | mysql -u<username> -p<password> zabbix

Pour Oracle (On admet que l'utilisateur zabbix avec pour mot de passe password existe déjà et possède les permissions pour créer des objets dans la base de données):

shell> cd create
shell> sqlplus zabbix/password
sqlplus> set def off
sqlplus> @schema/oracle.sql
sqlplus> @data/data.sql
sqlplus> @data/images_oracle.sql
sqlplus> exit

Pour PostgreSQL:

shell> psql -U <username>
psql> create database zabbix; 
psql> \q 
shell> cd create/schema 
shell> cat postgresql.sql | psql -U <username> zabbix 
shell> cd ../data 
shell> cat data.sql | psql -U <username> zabbix
shell> cat images_pgsql.sql | psql -U <username> zabbix

Pour SQLite:

shell> cd create/schema
shell> cat sqlite.sql | sqlite3 /var/lib/sqlite/zabbix.db 
shell> cd ../data 
shell> cat data.sql | sqlite3 /var/lib/sqlite/zabbix.db
shell> cat images_sqlite3.sql | sqlite3 /var/lib/sqlite/zabbix.db
La base de données sera automatiquement créée si elle n'existe pas.
Etape 4

Configurer et compiler le code source pour votre système

Les sources doivent être compilées à la fois pour le serveur (machine de supervision) et pour les clients (machines supervisées). Pour configurer la source du serveur, vous devez spécifier la base de données qui sera utilisée.

shell> ./configure --enable-server --with-mysql --with-net-snmp --with-jabber --with-libcurl # Pour MySQL + Jabber + WEB monitoring

ou

shell> ./configure --enable-server --with-pgsql --with-net-snmp --with-jabber --with-libcurl # Pour Post-greSQL  + Jabber + WEB monitoring

ou

shell> ./configure --enable-server --with-oracle=/home/zabbix/sqlora8 --with-net-snmp --with-jabber --with-libcurl # Pour Oracle + Jabber + WEB monitoring
Utiliser l'option –with-oracle pour spécifier la localisation de la librairie sqlora8. La librairie est requise pour le support Oracle. Elle peut-être trouvée sur la page d'accueil de libsqlora8
Utiliser l'option –enable-static pour lier de façon statique les librairies. Si vous prévoyez de distribuer des binaires compilés entre les différents serveurs, vous devez utiliser cette option pour les faire fonctionner sans les librairies requises. –enable-static ne fonctionne pas sous Solaris. L'option –with-ucd-snmp peut être utilisée à la place de –with-net-snmp. Si le SNMP n'est pas nécessaires, –with-net-snmp et –with-ucd-snmp peuvent être omis.

Cependant, si vous voulez compiler les binaires clients avec les binaires serveurs, utilisez:

shell> ./configure  --enable-server --enable-agent --with-mysql --with-net-snmp --with-jabber --with-libcurl

L'option –enable-static peut être utilisée pour forcer la liaison statique.

Etape 5

Pour tout recompiler (avec make) et installer

shell> make install

Par défaut,

make install

installera tous les fichier dans /usr/local/bin, /usr/local/lib etc. Vous pouvez spécifier un autre préfixe d'ins-tallation autre que /usr/local en utilisant –prefix

Etape 6

Configurer /etc/services

Cette étape n'est pas réellement nécessaire. Cependant, elle est recommandée. Sur les machines clientes (supervisées), ajouter les lignes suivantes au fichier /etc/services:

zabbix-agent    10050/tcp  Zabbix Agent
zabbix-agent    10050/udp  Zabbix Agent
zabbix-trapper  10051/tcp  Zabbix Trapper
zabbix-trapper  10051/udp  Zabbix Trapper 
Etape 7

Configurer /etc/inetd.conf

Si vous prévoyez d'utiliser zabbix_agent à la place de zabbix_agentd qui est l'agent recommandé, la ligne suivante doit être ajoutée:

zabbix_agent stream tcp nowait.3600 zabbix /opt/zabbix/bin/zabbix_agent

Redémarrer inetd

shell> killall -HUP inetd

Modifier les paramètres par défaut des fichiers de configuration

Etape 8

Configurer /etc/zabbix/zabbix_agent.conf

Il est nécessaire de configurer ce fichier pour chaque hôte qui possède zabbix_agent d'installé. Le fichier peut contenir l'adresse IP du serveur ZABBIX. Les connexions depuis un autre hôte seront refusées. Vous pouvez utiliser le fichier misc/conf/zabbix_agent.conf comme exemple.

Etape 9

Configurer /etc/zabbix/zabbix_agentd.conf

Il est nécessaire de configurer ce fichier pour chaque hôte qui possède zabbix_agentd d'installé. Le fichier peut contenir l'adresse IP du serveur ZABBIX. Les connexions depuis un autre hôte seront refusées. Vous pouvez utiliser le fichier misc/conf/zabbix_agentd.conf comme exemple.

Etape 10

Configurer /etc/zabbix/zabbix_server.conf

Pour les petites installations (jusqu'à dix hôtes supervisés), les paramètres par défaut sont suffisants. Cependant, Vous devriez changer ces paramètres pour optimiser les performances de ZABBIX. Voir la section [Performance tuning] pour plus de détails.

Vous pouvez utiliser le fichier misc/conf/zabbix_server.conf comme exemple. .

Etape 11

Démarrer les processus serveurs

Exécuter zabbix_server sur le serveur.

shell> cd bin
shell> ./zabbix_server
Etape 12

Démarrer l'agent

Exécuter zabbix_agentd ou c'est nécessaire.

shell> cd bin
shell> ./zabbix_agentd

2.4.4 Proxy Zabbix

Le proxy ZABBIX est un processus spécial. Il n'est pas nécessaire pour démarrer le processus.

Etape 1

Créer le compte du super-utilisateur ZABBIX

Ceci est l'utilisateur qui sera utilisé par le Proxy. Pour une utilisation en production, vous devez créer un compte dédié non privilégié ( 'zabbix' est couramment utilisé). Exécuter ZABBIX Proxy en tant que 'root', 'bin', ou tout autre compte avec des droits spéciaux est un risque de sécurité. Ne faites pas ça!

Le processus Proxy ZABBIX (zabbix_proxy) est protégé contre son exécution sous le compte root.
Etape 2

Extraction des sources ZABBIX

shell> gunzip zabbix-1.6.tar.gz && tar -xvf zabbix-1.6.tar
Etape 3

Créer la base de données ZABBIX. Optionnel.

Le processus Proxy ZABBIX va créer automatiquement la base de données au premier démarrage si elle n'existe pas. Dans le cas contraire, la base de données existante sera utilisée. La création automatique de la base de données est supportée pour SQLite uniquement.

ZABBIX est livré avec des scripts SQL utilisés pour créer le schéma de la base de données requis et pour mettre en place une configuration par défaut. Il y a des scripts séparés pour MySQL, Oracle, Post-greSQL et SQLite.

Pour MySQL:

shell> mysql -u<username> -p<password>
mysql> create database zabbix; 
mysql> quit; 
shell> cd create/schema
shell> cat mysql.sql | mysql -u<username> -p<password> zabbix
shell> cd ../data 
shell> cat data.sql | mysql -u<username> -p<password> zabbix
shell> cat images_mysql.sql | mysql -u<username> -p<password> zabbix

Pour Oracle (On admet que l'utilisateur zabbix avec pour mot de passe password existe déjà et possède les permissions pour créer des objets dans la base de données):

shell> cd create/schema 
shell> cat oracle.sql | sqlplus zabbix/password >out.log
Vérifier le fichier out.log pour visualiser les messages d'erreurs.
shell> cd ../data 
shell> cat data.sql | sqlplus zabbix/password >out.log
shell> cat images_oracle.sql | sqlplus zabbix/password >>out.log

Pour PostgreSQL:

shell> psql -U <username>
psql> create database zabbix; 
psql> \q 
shell> cd create/schema 
shell> cat postgresql.sql | psql -U <username> zabbix 
shell> cd ../data 
shell> cat data.sql | psql -U <username> zabbix
shell> cat images_pgsql.sql | psql -U <username> zabbix

Pour SQLite:

shell> cd create/schema
shell> cat sqlite.sql | sqlite3 /var/lib/sqlite/zabbix.db 
shell> cd ../data 
shell> cat data.sql | sqlite3 /var/lib/sqlite/zabbix.db
 shell> cat images_sqlite3.sql | sqlite3 /var/lib/sqlite/zabbix.db
La base de données sera automatiquement créée si elle n'existe pas.
Etape 4

Configurer et compiler le code source pour votre système

Les sources doivent être compilées pour activer la compilation des processus du Proxy ZABBIX. Pour configurer la source pour le Proxy, vous devez spécifier la base de données qui sera utilisée.

shell> ./configure --enable-proxy --with-mysql --with-net-snmp –-with-libcurl # Pour MySQL + WEB moni-toring

ou

shell> ./configure --enable-proxy --with-pgsql --with-net-snmp –-with-libcurl # Pour PostgreSQL  + WEB monitoring

ou

shell> ./configure --enable-proxy --with-oracle=/home/zabbix/sqlora8 --with-net-snmp –-with-libcurl # Pour Oracle + WEB monitoring
Utiliser l'option –with-oracle pour specifier la localisation de la bibliothèque sqlora8. La bibliothèque est requise pour le support Oracle. Elle peut-être trouvée sur la page d'accueil de libsqlora8
Utiliser l'option –enable-static pour lier de façon statique les librairies. Si vous prévoyez de distribuer des binaires compilés entre les différents serveurs, vous devez utiliser cette option pour les faire fonctionner sans les librairies requises. –enable-static ne fonctionne pas sous Solaris. L'option –with-ucd-snmp peut être utilisée à la place de –with-net-snmp. Si le SNMP n'est pas nécessaires, –with-net-snmp et –with-ucd-snmp peuvent être omis.

Cependant, si vous voulez compiler les binaires clients avec les binaires serveurs, utilisez:

shell> ./configure  --enable-server --enable-agent --with-mysql --with-net-snmp --with-jabber --with-libcurl

L'option –enable-static peut être utilisée pour forcer la liaison statique.

Etape 5

Pour tout recompiler (avec make) et installer

shell> make install

Par défaut,

make install

installera tous les fichier dans /usr/local/bin, /usr/local/lib etc. Vous pouvez spécifier un préfixe d'installation autre que /usr/local en utilisant –prefix

Etape 6

Configurer /etc/services

Cette étape n'est pas réellement nécessaire. Cependant, elle est recommandée. Sur les machines clientes (supervisées), ajouter les lignes suivantes au fichier /etc/services:

zabbix_agent 10050/tcp
zabbix_trap 10051/tcp
Etape 7

Configurer /etc/inetd.conf

Si vous prévoyez d'utiliser zabbix_agent à la place de zabbix_agentd qui est l'agent recommandé, La ligne suivante doit être ajoutée:

zabbix_agent stream tcp nowait.3600 zabbix /opt/zabbix/bin/zabbix_agent

Redémarrer inetd

shell> killall -HUP inetd

Modifier les paramètres par défaut des fichiers de configuration

Etape 8

Configurer /etc/zabbix/zabbix_proxy.conf

Pour les petites installations (jusqu'à dix hôtes superviés), les paramètres par défaut sont suffisants. Cependant, Vous devriez changer ces paramètres pour optimiser les performances de ZABBIX. Voir la section [Performance tuning] pour plus de détails. Assurez-vous que les paramètres Hostname et Server sont correctement configurés. Vous pouvez utiliser le fichier misc/conf/zabbix_proxy.conf comme exemple.

Etape 9

Démarrer le processus du Proxy

Démarrage de zabbix_proxy:

shell> cd sbin
shell> ./zabbix_proxy

2.4.5 Agent ZABBIX

Côté client

Etape 1

Créer le compte ZABBIX

Ceci est l'utilisateur utlisisé par l'agent. Pour une utilisation en production, vous devriez créer un compte dédié sans privilège (“zabbix” est couramment utilisé). L'agent ZABBIX possède une protection contre son utilisation sous le compte root.

Etape 2

Extraction des sources ZABBIX

shell> gunzip zabbix-1.6.tar.gz && tar xvf zabbix-1.6.tar
Etape 3

Configurer et compiler le code source pour votre système

Les sources doivent être compilées pour le client uniquement.

Pour configurer les sources pour le client:

shell> ./configure --enable-agent
Utiliser l'option –enable-static pour lier de façon statique les librairies. Si vous prévoyiez de distribuer les binaires compilés sur les différents hôtes, vous devez utiliser cette option pour faire fonctionner ces binaires sans les librairies requises.
Etape 4

Installer l'agent

shell> make

Copier les binaires crée depuis bin/ vers /opt/zabbix/bin ou un autre repertoire. Les autres repertoires communs sont /usr/local/bin ou /usr/local/zabbix/bin.

Etape 5

Configurer /etc/services

Cette étape n'est pas réellement nécessaire. Cependant, elle est recommandée.

Sur la machine cliente (supervisée), ajouter les lignes suivantes au fichier /etc/services:

zabbix_agent 10050/tcp 
zabbix_trap 10051/tcp 
Etape 6

Configurer /etc/inetd.conf

Si vous prévoyez d'utiliser zabbix_agent à la place de zabbix_agentd qui est l'agent recommandé, La ligne suivante doit être ajoutée:

zabbix_agent stream tcp nowait.3600 zabbix /opt/zabbix/bin/zabbix_agent

Redémarrer inetd

shell> killall -HUP inetd
Etape 7

Configure /etc/zabbix/zabbix_agent.conf

Il est nécessaire de configurer ce fichier pour chaque hôte qui possède zabbix_agent d'installé. Le fichier peut contenir l'adresse IP du serveur ZABBIX. Les connexions depuis un autre hôte seront refusées. A noter, qu'aucun caractère de fin de ligne ne doit être présent dans le fichier.

Vous pouvez utiliser le fichier misc/conf/zabbix_agent.conf comme exemple.

Etape 8

Configurer /etc/zabbix/zabbix_agentd.conf

Il est nécessaire de configurer ce fichier pour chaque hôte qui possède zabbix_agentd d'installé. Le fichier peut contenir l'adresse IP du serveur ZABBIX. Les connexions depuis un autre hôte seront refusées. Vous pouvez utiliser le fichier misc/conf/zabbix_agentd.conf comme exemple.

Etape 9

Démarrer zabbix_agentd sur toutes les machines supervisées

shell> /opt/zabbix/bin/zabbix_agentd
Vous ne devez pas utiliser zabbix_agentd si vous avez choisi d'utiliser zabbix_agent!
Assurez-vous que votre système autorise l'allocation de 2Mo de mémoire partagée. Dans le cas contraire, l'agent pourrait ne pas démarrer et vous verriez “Can't allocate shared memory for collector.” dans le fichier log de l'agent. Cela peut se produire sur Solaris 8.

2.4.6 Interface WEB ZABBIX

Etape 1

Faire pointer votre navigateur sur l'URL de ZABBIX.

Etape 2

Lire et accepter GPL v2.

Etape 3

Assurez-vous que tous les prérequis logiciels sont remplis.

PrérequisValeur minimumDescription
PHP version 4.3.0
PHP Memory limit 8MB Dans php.ini:
memory_limit = 128M
PHP post max size 8MB Dans php.ini:
post_max_size = 8M
PHP max execution time 300 secondes Dans php.ini:
max_execution_time = 300
PHP database support A choisir: MySQL, Oracle, PostgreSQL, SQLite Un des modules suivants doit être installé:
php-mysql, php-sqlora8, php-pgsql, php-sqlite3
PHP BC math Tous Compiled in PHP5.
GD Version 2.0 ou supérieure Module php-gd.
Image formats au moins PNG Module php-gd.
Etape 4

Configurer les paramètres de la base de données. La base de données ZABBIX doit déjà être créée.

Etape 5

Entrer les informations sur le serveur ZABBIX.

Etape 6

Voir le résumé des paramètres.

Etape 7

Télécharger le fichier de configuration et le placer dans conf/.

Etape 8

Terminer l'installation.

Etape 9

Pour la supervision distribuée uniquement!

Si vous utilisez un environnement distribué, vous devez exécuter:

shell> ./zabbix_server –n <nodeid>

Où Node ID est un identifiant de nœud unique. Par exemple:

shell> ./zabbix_server –n 1

Cela va convertir les données de la base de donées pour les utiliser avec Node ID '1' et aussi ajouter un nœud local.

Etape 10

L'interface ZABBIX est prête! L'utilisateur par défaut est Admin, password zabbix.

2.4.7 Mise à niveau

La procédure de mise à niveau est assez simple. Les nouveaux binaires et les fichiers de l'interface doivent être installés suivant les dernières instructions d'installation. Afin de mettre à jour la structure de la base de données, les étapes suivantes doivent être effectuées.

La procédure de mise à niveau peut durer de 0 seconde (si aucun patch n'est requis) à plusieurs heures. A noter qu'avant d'appliquer le patch sur la base de données, tous les processus ZABBIX doivent être arrêtés.

La mise à niveau de la base de données est habituellement requise pour les mises à niveau depuis une des principales versions stables vers une autre. Par exemple, depuis 1.4.x vers 1.6.x.

Pour les installations en production, une sauvegarde de la base de données est nécessaire!

2009/11/12 15:23

2.5 Mise à niveau

La procédure de mise à niveau est assez simple. Les nouveaux binaires et les fichiers de l'interface doivent être installés suivant les dernières instructions d'installation. Afin de mettre à jour la structure de la base de données, les étapes suivantes doivent être effectuées.

La procédure de mise à niveau peut durer de 0 seconde (si aucun patch n'est requis) à plusieurs heures. Elle peut donc se montrer extremement longue selon la taille de la base de données. A noter qu'avant d'appliquer le patch sur la base de données, tous les processus ZABBIX doivent être arrêtés.

La mise à niveau de la base de données est habituellement requise pour les mises à niveau depuis une des principales versions stables vers une autre. Par exemple, depuis 1.4.x vers 1.6.x.

Pour les installations en production, une sauvegarde de la base de données est nécessaire!

Mise à niveau de la base de données

Placez-vous dans le répertoire upgrades/dbpatches. Dans ce répertoire, tous les sous-dossiers sont nommés en fonction de la version de la mise à niveau (e.g. 1.0beta3_to_1.0beta4). Placez-vous dans le répertoire qui correspond à la mise à jour que vous désirez effectuer (si vous désirez mise à jour sur plusieurs versions exemple de la 1.4.x vers 1.8, vous devrez appliquer les mises à jour une par une: 1.4.x =⇒ 1.6.x =⇒ 1.8). En fonction de la base de données utilisée:

shell> cd mysql; cat patch.sql |mysql zabbix -u<username> -p<password>

ou

shell> cd postgresql; cat patch.sql|psql -U <username> zabbix

Ne pas oublier de mettre à jour les fichiers PHP de l'interface.

Pour finir, lire les notes concernant la version pour toutes procédures et informations supplémentaires.

2009/11/13 09:19