Qu'est-ce que Zabbix

Zabbix a été créé par Alexei Vladishev et est actuellement activement développé et pris en charge par Zabbix SIA.

Zabbix est une solution de supervision distribuée open source de niveau entreprise.

Zabbix est un logiciel qui supervise de nombreux paramètres d’un réseau ainsi que l’état et l’intégrité des serveurs, des machines virtuelles, des applications, des services, des bases de données, des sites web, du cloud, et bien plus encore. Zabbix utilise un mécanisme de notification flexible qui permet aux utilisateurs de configurer des alertes par e-mail pour pratiquement n’importe quel événement. Cela permet de réagir rapidement aux problèmes de serveur. Zabbix offre d’excellentes fonctionnalités de génération de rapports et de visualisation des données basées sur les données stockées. Cela fait de Zabbix un outil idéal pour la planification de capacité.

Zabbix prend en charge à la fois l’interrogation et la réception passive de données. Tous les rapports et statistiques de Zabbix, ainsi que les paramètres de configuration, sont accessibles via une interface web. Une interface web garantit que l’état de votre réseau et la santé de vos serveurs peuvent être évalués depuis n’importe quel endroit. Correctement configuré, Zabbix peut jouer un rôle important dans la supervision de l’infrastructure informatique. Cela est tout aussi vrai pour les petites organisations disposant de quelques serveurs que pour les grandes entreprises possédant une multitude de serveurs.

Zabbix est gratuit. Zabbix est écrit et distribué sous la licence AGPL-3.0. Cela signifie que son code source est librement distribué et accessible au grand public.

Commercial support est disponible et fourni par Zabbix Company et ses partenaires dans le monde entier.

Pour en savoir plus sur les fonctionnalités de Zabbix.

Utilisateurs de Zabbix

De nombreuses organisations de tailles diverses à travers le monde s'appuient sur Zabbix comme plateforme principale de supervision.

Architecture

Zabbix se compose de plusieurs composants logiciels majeurs. Leurs responsabilités sont décrites ci-dessous.

Serveur

Le serveur Zabbix est le composant central auquel les agents signalent les informations de disponibilité et d’intégrité ainsi que les statistiques. Le serveur est le référentiel central dans lequel sont stockées toutes les données de configuration, statistiques et opérationnelles.

Stockage de la base de données

Toutes les informations de configuration ainsi que les données collectées par Zabbix sont stockées dans une base de données.

Interface web

Pour un accès facile à Zabbix depuis n'importe où et depuis n'importe quelle plateforme, une interface web est fournie. L'interface fait partie du serveur Zabbix et s'exécute généralement (mais pas nécessairement) sur la même machine physique que celle sur laquelle le serveur est exécuté.

Proxy

Le proxy Zabbix peut collecter des données de performance et de disponibilité pour le compte du serveur Zabbix. Un proxy est un composant facultatif d’un déploiement Zabbix ; toutefois, il peut être très utile pour répartir la charge d’un seul serveur Zabbix.

Agent

Les agents Zabbix sont déployés sur les cibles de supervision afin de surveiller activement les ressources locales et les applications, puis de transmettre les données collectées au serveur Zabbix. Depuis Zabbix 4.4, deux types d’agents sont disponibles : le Zabbix agent (léger, pris en charge sur de nombreuses plateformes, écrit en C) et le Zabbix agent 2 (très flexible, facilement extensible avec des plugins, écrit en Go).

Flux de données

En outre, il est important de prendre du recul et d’examiner le flux de données global au sein de Zabbix. Afin de créer un élément qui collecte des données, vous devez d’abord créer un hôte. En passant à l’autre extrémité du spectre de Zabbix, vous devez d’abord disposer d’un élément pour créer un déclencheur. Vous devez disposer d’un déclencheur pour créer une action. Ainsi, si vous souhaitez recevoir une alerte indiquant que la charge CPU est trop élevée sur Serveur X, vous devez d’abord créer une entrée d’hôte pour Serveur X, suivie d’un élément pour surveiller son CPU, puis d’un déclencheur qui s’active si la charge CPU est trop élevée, suivi d’une action qui vous envoie un e-mail. Bien que cela puisse sembler représenter beaucoup d’étapes, avec l’utilisation des modèles, ce n’est en réalité pas le cas. Cependant, grâce à cette conception, il est possible de créer une configuration très flexible.

Fonctionnalités

Zabbix est une solution de supervision réseau hautement intégrée, offrant une multitude de fonctionnalités dans un seul package.

Collecte de données

  • vérifications de disponibilité et de performance
  • prise en charge de SNMP (à la fois les traps et l'interrogation), IPMI, JMX, supervision VMware
  • vérifications personnalisées
  • collecte des données souhaitées à des intervalles personnalisés
  • effectuée par le serveur/proxy et par les agents

Définitions flexibles des seuils

  • vous pouvez définir des seuils de problème très flexibles, appelés déclencheurs, en référençant des valeurs de la base de données backend

Alertes hautement configurables

  • l'envoi des notifications peut être personnalisé selon le calendrier d'escalade, le destinataire et le type de média
  • les notifications peuvent être rendues explicites et utiles à l'aide de variables de macro
  • les actions automatiques incluent des commandes distantes

Création de graphiques en temps réel

  • les éléments supervisés sont immédiatement représentés sous forme de graphiques à l'aide de la fonctionnalité de création de graphiques intégrée

Capacités de supervision web

  • Zabbix peut suivre un parcours simulé de clics de souris sur un site web et vérifier la fonctionnalité et le temps de réponse

Options de visualisation étendues

  • possibilité de créer des graphiques personnalisés pouvant combiner plusieurs éléments dans une seule vue
  • cartes réseau
  • diaporamas dans une vue d'ensemble de type tableau de bord
  • rapports
  • vue de haut niveau (métier) des ressources supervisées

Stockage des données historiques

  • données stockées dans une base de données
  • historique configurable
  • procédure de nettoyage intégrée

Configuration facile

  • ajouter des dispositifs supervisés en tant qu'hôtes
  • les hôtes sont pris en compte pour la supervision une fois dans la base de données
  • appliquer des modèles aux dispositifs supervisés

Utilisation de modèles

  • regroupement des vérifications dans des modèles
  • les modèles peuvent hériter d'autres modèles

Découverte réseau

  • découverte automatique des dispositifs réseau
  • auto-enregistrement de l'agent
  • découverte des systèmes de fichiers, des interfaces réseau et des OID SNMP

Interface web rapide

  • une interface web basée sur PHP
  • accessible depuis n'importe où
  • navigation intuitive par clics
  • journal d'audit

API Zabbix

  • L'API Zabbix fournit une interface programmable vers Zabbix pour les manipulations de masse, l'intégration de logiciels tiers et d'autres usages.

Système d'autorisations

  • authentification sécurisée des utilisateurs
  • certains utilisateurs peuvent être limités à certaines vues

Agent complet et facilement extensible

  • déployé sur les cibles de supervision
  • peut être déployé à la fois sur Linux et Windows

Démons binaires

  • écrits en C, pour de hautes performances et une faible empreinte mémoire
  • facilement portables

Prêt pour les environnements complexes

  • la supervision à distance est facilitée grâce à l'utilisation d'un proxy Zabbix

Glossaire

Dans cette section, vous pouvez découvrir la signification de certains termes couramment utilisés dans Zabbix.

hôte

- tout dispositif physique ou virtuel, application, service, ou toute autre collection logiquement liée de paramètres surveillés.

groupe d'hôtes

- un regroupement logique d'hôtes. Les groupes d'hôtes sont utilisés lors de l'attribution des droits d'accès aux hôtes pour différents groupes d'utilisateurs.

élément

- une donnée particulière que vous souhaitez recevoir d'un hôte, une métrique de données.

prétraitement des valeurs

- une transformation de la valeur de métrique reçue avant son enregistrement dans la base de données.

déclencheur

- une expression logique qui définit un seuil de problème et qui est utilisée pour "évaluer" les données reçues dans les éléments.

Lorsque les données reçues sont au-dessus du seuil, les déclencheurs passent de l'état 'Ok' à l'état 'Problem'. Lorsque les données reçues sont en dessous du seuil, les déclencheurs restent dans l'état 'Ok' ou y reviennent.

modèle

- un ensemble d'entités (éléments, déclencheurs, graphiques, règles de découverte de bas niveau, scénarios web) prêtes à être appliquées à un ou plusieurs hôtes.

Le rôle des modèles est d'accélérer le déploiement des tâches de supervision sur un hôte ; ils facilitent également l'application de modifications en masse aux tâches de supervision. Les modèles sont liés directement aux hôtes individuels.

groupe de modèles

- un regroupement logique de modèles. Les groupes de modèles sont utilisés lors de l'attribution des droits d'accès aux modèles pour différents groupes d'utilisateurs.

événement

- une occurrence unique de quelque chose qui mérite attention, comme un déclencheur changeant d'état ou une découverte/autoregistration d'agent en cours.

tag d'événement

- un marqueur prédéfini pour l'événement. Il peut être utilisé dans la corrélation d'événements, la granularité des permissions, etc.

corrélation d'événements

- une méthode permettant de corréler les problèmes à leur résolution de manière souple et précise.

Par exemple, vous pouvez définir qu'un problème signalé par un déclencheur peut être résolu par un autre déclencheur, qui peut même utiliser une méthode différente de collecte de données.

problème

- un déclencheur qui est dans l'état "Problem".

mise à jour de problème

- options de gestion des problèmes fournies par Zabbix, telles que l'ajout d'un commentaire, l'acquittement, le changement de gravité ou la fermeture manuelle.

action

- un moyen prédéfini de réagir à un événement.

Une action se compose d'opérations (par ex. l'envoi d'une notification) et de conditions (quand l'opération est effectuée)

escalade

- un scénario personnalisé pour exécuter des opérations dans une action ; une séquence d'envoi de notifications/d'exécution de commandes distantes.

macro

- un espace réservé de variable qui se résout en une valeur spécifique selon le contexte.

média

- un moyen de distribuer des notifications ; canal de distribution.

notification

- un message concernant un événement, envoyé à un utilisateur via le canal de média choisi.

commande distante

- une commande prédéfinie qui est automatiquement exécutée sur un hôte surveillé lorsqu'une certaine condition est remplie.

scénario web

- une ou plusieurs requêtes HTTP pour vérifier la disponibilité d'un site web.

interface

- l'interface web fournie avec Zabbix.

tableau de bord

- section personnalisable de l'interface web affichant des résumés et des visualisations d'informations importantes dans des unités visuelles appelées widgets.

widget

- unité visuelle affichant des informations d'un certain type et d'une certaine source (un résumé, une carte, un graphique, l'horloge, etc.), utilisée dans le tableau de bord.

Zabbix API

- Zabbix API vous permet d'utiliser le protocole JSON RPC pour créer, mettre à jour et récupérer des objets Zabbix (comme des hôtes, des éléments, des graphiques et autres) ou effectuer toute autre tâche personnalisée.

serveur Zabbix

- un processus central du logiciel Zabbix qui effectue la supervision, interagit avec les proxies Zabbix et les agents, calcule les déclencheurs, envoie des notifications ; un dépôt central de données.

proxy Zabbix

- un processus qui peut collecter des données pour le compte du serveur Zabbix, en déchargeant le serveur d'une partie du traitement.

agent Zabbix

- un processus déployé sur les cibles de supervision afin de surveiller activement les ressources locales et les applications.

agent Zabbix 2

- une nouvelle génération d'agent Zabbix pour surveiller activement les ressources locales et les applications, permettant d'utiliser des plugins personnalisés pour la supervision.

Comme l'agent Zabbix 2 partage une grande partie de ses fonctionnalités avec l'agent Zabbix, le terme "agent Zabbix" dans la documentation désigne les deux - agent Zabbix et agent Zabbix 2 - si le comportement fonctionnel est identique. L'agent Zabbix 2 n'est nommé spécifiquement que lorsque sa fonctionnalité diffère.

chiffrement

- prise en charge des communications chiffrées entre les composants Zabbix (serveur, proxy, agent, utilitaires zabbix_sender et zabbix_get) à l'aide du protocole Transport Layer Security (TLS).

autoregistration d'agent

- processus automatisé par lequel un agent Zabbix est lui-même enregistré comme hôte et la supervision est démarrée.

découverte réseau

- découverte automatisée des équipements réseau.

découverte de bas niveau

- découverte automatisée d'entités de bas niveau sur un dispositif particulier (par ex. systèmes de fichiers, interfaces réseau, etc.).

règle de découverte de bas niveau

- ensemble de définitions pour la découverte automatisée d'entités de bas niveau sur un dispositif.

prototype d'élément

- une métrique avec certains paramètres comme variables, prête pour la découverte de bas niveau. Après la découverte de bas niveau, les variables sont automatiquement remplacées par les paramètres réellement découverts et la métrique commence automatiquement à collecter des données.

prototype de déclencheur

- un déclencheur avec certains paramètres comme variables, prêt pour la découverte de bas niveau. Après la découverte de bas niveau, les variables sont automatiquement remplacées par les paramètres réellement découverts et le déclencheur commence automatiquement à évaluer les données.

Des prototypes de certaines autres entités Zabbix sont également utilisés dans la découverte de bas niveau

  • prototypes de graphiques, prototypes d'hôtes, prototypes de groupes d'hôtes.