Zabbix

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Zabbix
Logo

Tableau de bord de Zabbix 3.0.0 en japonais
Tableau de bord de Zabbix 3.0.0 en japonais

Fondateur Alexei Vladishev (d)Voir et modifier les données sur Wikidata
Développeur Zabbix LLC (d)Voir et modifier les données sur Wikidata
Première version [1]Voir et modifier les données sur Wikidata
Dernière version 3.4.3 ()[2]Voir et modifier les données sur Wikidata
Écrit en C, PHP et JavaVoir et modifier les données sur Wikidata
Environnement GNU/Linux, Solaris, macOS, HP-UX, NetBSD, FreeBSD, IBM Power Systems et AIXVoir et modifier les données sur Wikidata
Type Supervision
Licence GPLv2[3]Voir et modifier les données sur Wikidata
Site web www.zabbix.comVoir et modifier les données sur Wikidata

ZABBIX est un logiciel libre permettant de surveiller l'état de divers services réseau, serveurs et autres matériels réseau et produisant des graphiques dynamiques de consommation des ressources. C'est un logiciel open source créé par Alexei Vladishev.

Structure du logiciel[modifier | modifier le code]

Le « serveur ZABBIX » peut être décomposé en trois parties séparées : Le serveur de données, l'interface de gestion et le serveur de traitement. Chacune d'elles peut être disposée sur une machine différente pour répartir la charge et optimiser les performances.

Le système dont l'utilisation des ressources doit être analysée comporte un agent fonctionnant sous forme de daemon appelé zabbix-agentd et écoutant par défaut sur le port TCP 10050. Celui-ci est chargé d’exécuter sur le système différents scripts permettant d'échantillonner l'état des ressources des différents composants du système (Mémoire, CPU, débit réseau, entrées-sorties, nombre de connexion à une application, etc.). Le serveur Zabbix appelle donc régulièrement cet agent et lui demande les informations concernant telle ou telle ressource.

Le serveur de données[modifier | modifier le code]

ZABBIX utilise MySQL, PostgreSQL ou Oracle pour stocker les données. Selon l'importance du nombre de machines et de données à surveiller, le choix du SGBD influe grandement sur les performances. Il existe une section relative à ce choix dans le manuel officiel.

L'interface de gestion[modifier | modifier le code]

Son interface web est écrite en PHP. Elle agit directement sur les informations stockées dans la base de données. Chaque information nécessaire au serveur de traitement étant réactualisée automatiquement, il n'y a pas d'action à effectuer sur le binaire pour lui indiquer qu'il y a eu une mise à jour.

Cette interface dispose des fonctionnalités principales suivantes:

  • Affichage des données et état des machines
  • Génération de graphiques (évolution des données et état des machines/liens)
  • Classement et groupement des machines surveillées
  • Auto découverte de machines et ajout automatique
  • Gestion fine des droits d'accès pour les utilisateurs de l'interface

Le serveur de traitement[modifier | modifier le code]

Il s'agit d'un démon binaire existant pour Linux, BSD et divers Unix (voir site officiel : http://www.zabbix.com/requirements.php). Il offre diverses options de monitoring. La vérification simple permet de vérifier la disponibilité ainsi que le temps de réponse de services standards comme SMTP ou HTTP 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... Le logiciel peut réaliser le monitoring via SNMP.

Fonctionnalité intéressante, il est possible de configurer des "proxy Zabbix" afin de répartir la charge ou d'assurer une meilleure disponibilité de service.

Methode de traitement[modifier | modifier le code]

Pour ZABBIX, chaque valeur récupérée correspond à un item. A chacun d'eux peut être associé un ou plusieurs tests appelés triggers. Des actions peuvent être liées aux triggers, ce qui permet d'effectuer un traitement particulier pour chaque problème pouvant survenir. Par exemple, si une machine devient indisponible on peut envoyer un mail à l'administrateur système. Si la charge d'un programme devient trop importante pendant trop longtemps, on peut lancer un programme qui fera un flush...

Items[modifier | modifier le code]

Les items sont des valeurs récupérées par le serveur ZABBIX. Leur source peut être sélectionnée. Elles peuvent être des réponses ou trap SNMP, des codes de retour ou le résultat de programmes externes, des valeurs demandées à un agent ZABBIX... Pour chaque item, on peut spécifier la durée d'enregistrement dans la base de chaque valeur remontée

Triggers[modifier | modifier le code]

Les triggers sont des tests effectués sur un item. Chaque trigger ne peut être lié qu'à un seul item mais il peut avoir des dépendances. Cela permet d'éviter de générer des alertes pour des machines si c'est le réseau en amont qui est défaillant.

Action[modifier | modifier le code]

Une action est lancée lorsqu'un trigger est déclenché. Cette action peut permettre de résoudre certains problèmes récurrents et aléatoires.

Licence[modifier | modifier le code]

ZABBIX est distribué sous licence GNU General Public License Version 2 (GPL v.2).

Voir aussi[modifier | modifier le code]

Articles connexes[modifier | modifier le code]

Autres logiciels de supervision[modifier | modifier le code]

Divers[modifier | modifier le code]

Références[modifier | modifier le code]

Liens externes[modifier | modifier le code]