This is the documentation page for an unsupported version of Zabbix.
Is this not what you were looking for? Switch to the current version or choose one from the drop-down menu.

1 Serveur

Aperçu

Le serveur Zabbix est le processus central du logiciel Zabbix.

Le serveur effectue l'interrogation et la réception des données, il calcule les déclencheurs, envoie des notifications aux utilisateurs. C'est le composant central auquel les agents et les proxys de Zabbix rapportent des données sur la disponibilité et l'intégrité des systèmes. Le serveur peut lui-même vérifier à distance les services en réseau (tels que les serveurs Web et les serveurs de messagerie) à l'aide de simples vérifications de service.

Le serveur est le référentiel central dans lequel sont stockées toutes les données de configuration, statistiques et opérationnelles, et c'est l'entité de Zabbix qui alertera activement les administrateurs lorsque des problèmes surviendront sur l'un des systèmes surveillés.

Le fonctionnement d'un serveur Zabbix de base est divisé en trois composants distincts ; ils sont : serveur Zabbix, interface web et stockage de base de données.

Toutes les informations de configuration de Zabbix sont stockées dans la base de données, avec laquelle interagissent le serveur et l'interface Web. Par exemple, lorsque vous créez un nouvel élément à l'aide de l'interface Web (ou l'API), il est ajouté à la table des éléments de la base de données. Ensuite, environ une fois par minute, le serveur Zabbix interroge la table des éléments pour obtenir une liste des éléments actifs qui sont ensuite stockés dans un cache dans le serveur Zabbix. C'est pourquoi cela peut prendre jusqu'à deux minutes pour que les modifications apportées dans l’interface utilisateur Zabbix apparaissent dans la dernière section de données.

Exécution du serveur

Si installé en tant que package

Le serveur Zabbix s'exécute en tant que processus démon. Le serveur peut être démarré en exécutant :

shell> service zabbix-server start

Cela fonctionnera sur la plupart des systèmes GNU/Linux. Sur d'autres systèmes, vous devrez peut-être exécuter :

shell> /etc/init.d/zabbix-server start

De même, pour arrêter/redémarrer/afficher l'état, utilisez les commandes suivantes :

shell> service zabbix-server stop
       shell> service zabbix-server restart
       shell> service zabbix-server status
Démarrage manuel

Si ce qui précède ne fonctionne pas, vous devez le démarrer manuellement. Recherchez le chemin d'accès au fichier binaire zabbix_server et exécutez :

shell> zabbix_server

Vous pouvez utiliser les paramètres de ligne de commande suivants avec le serveur Zabbix :

-c --config <file>              chemin vers le fichier de configuration (par défaut /usr/local/etc/zabbix_server.conf)
       -R --runtime-control <option>   effectue des fonctions administratives
       -h --help                       donne cet aide
       -V --version                    affiche le numéro de version 

Le runtime-control n'est pas supportée sur OpenBSD et NetBSD.

Exemples d'exécution du serveur Zabbix avec des paramètres de ligne de commande :

shell> zabbix_server -c /usr/local/etc/zabbix_server.conf
       shell> zabbix_server --help
       shell> zabbix_server -V
Runtime control

Option du Runtime control :

Option Description Cible
config_cache_reload Recharge le cache de configuration. Ignoré si le cache est en cours de chargement.
housekeeper_execute Démarre la procédure de nettoyage. Ignoré si la procédure de nettoyage est actuellement en cours d'exécution.
log_level_increase[=<cible>] Augmente le niveau de journalisation, affecte tous les processus si la cible n'est pas spécifiée 
process type – Tous les processus d’un type spécifique (ex : poller) Voir tous les types de processus serveur

process type,N – Type de processus et numéro (ex : poller,3)
pid - Identifiant du processus (1 to 65535). Pour des valeurs plus grandes, spécifiez la cible comme 'process type,N'.
log_level_decrease[=<cible>] Diminue le niveau de journalisation, affecte tous les processus si la cible n'est pas spécifiée.

Exemple d'utilisation du runtime control pour recharger le cache de configuration du serveur :

shell> zabbix_server -c /usr/local/etc/zabbix_server.conf -R config_cache_reload

Exemple d'utilisation du runtime control pour déclencher l'exécution du nettoyage :

shell> zabbix_server -c /usr/local/etc/zabbix_server.conf -R housekeeper_execute

Exemple d'utilisation du runtime control pour modifier le niveau de journalisation :

Augmente le niveau de journalisation de tous les processus :
       shell> zabbix_server -c /usr/local/etc/zabbix_server.conf -R log_level_increase
       
       Augmente le niveau de journalisation du deuxième processus 'poller' :
       shell> zabbix_server -c /usr/local/etc/zabbix_server.conf -R log_level_increase=poller,2
       
       Augmente le niveau de journalisation du processus ayant le PID 1234:
       shell> zabbix_server -c /usr/local/etc/zabbix_server.conf -R log_level_increase=1234
       
       Diminue le niveau de journalisation de tous les processus 'http poller' :
       shell> zabbix_server -c /usr/local/etc/zabbix_server.conf -R log_level_decrease="http poller"
Processus utilisateur

Le serveur Zabbix est conçu pour fonctionner en tant qu'utilisateur non root. Il fonctionnera avec n’importe quel utilisateur non-root qui lancera les processus. Vous pouvez donc exécuter le serveur en tant qu'utilisateur non root sans aucun problème.

Si vous essayez de l'exécuter en tant que 'root', il passera à un utilisateur 'zabbix' codé en dur, qui doit être présent sur votre système. Vous pouvez uniquement exécuter le serveur en tant que 'root' si vous modifiez le paramètre 'AllowRoot' dans le fichier de configuration associé du serveur.



Si le serveur et l'agent Zabbix sont exécutés sur la même machine, il est recommandé d'utiliser un autre utilisateur pour exécuter le serveur que pour exécuter l'agent. Sinon, si les deux sont exécutés sous le même utilisateur, l'agent peut accéder au fichier de configuration du serveur et tout utilisateur de niveau Admin dans Zabbix peut facilement récupérer, par exemple, le mot de passe de la base de données.

Fichier de configuration

Voir les options du fichier de configuration pour plus de détails sur la configuration de zabbix_server.

Scripts de démarrage

Les scripts sont utilisés pour démarrer/arrêter automatiquement les processus Zabbix pendant le démarrage/l'arrêt du système. Les scripts sont situés dans le répertoire misc/init.d.

Types de processus serveur

  • alert manager - gestionnaire des tâches d'alertes
  • alerter - processus pour l'envoi des notifications
  • configuration syncer - processus de gestion du cache en mémoire de la configuration des données
  • discoverer - processus pour la découverte des équipements
  • escalator - processus pour l'escalade des actions
  • history syncer - écriture en BDD de l'historique
  • housekeeper - processus pour la suppression des anciennes données d'historique
  • http poller - poller pour la supervision web
  • icmp pinger - poller pour les vérifications icmpping
  • ipmi manager - gestionnaires de poller IPMI
  • ipmi poller - poller pour les vérifications IPMI
  • java poller - poller pour les vérifications Java
  • poller - poller pour les vérifications passives
  • preprocessing manager - gestionnaire des tâches de pré-traitement
  • preprocessing worker - processus pour le pré-traitement des données
  • proxy poller - poller pour les proxys passifs
  • self-monitoring - processus de collecte des statistiques internes du serveur
  • snmp trapper - trapper pour les traps SNMP
  • task manager - processus pour l'exécution à distance de tâches demandées par d'autres composants (ex : fermeture d'un problème, acquittement d'un problème, vérification de la valeur d'un élément immédiatement, fonctionnalité d'exécution de commande à distance)
  • timer - timer pour le traitement des maintenances
  • trapper - trapper pour les vérifications actives, les traps, la communication avec le proxy
  • unreachable poller - poller pour les équipements injoignables
  • vmware collector - Collecte des données VMware responsable de la récupération des données pour les services VMware

Le fichier journal du serveur peut être utilisé pour observer les types de processus.

Plusieurs types de processus du serveur Zabbix peuvent être supervisés en utilisant l'élément interne zabbix[process,<type>,<mode>,<state>].

Plates-formes supportées

En raison des exigences de sécurité et de la nature critique du fonctionnement du serveur, UNIX est le seul système d'exploitation capable de fournir systématiquement les performances, la tolérance aux pannes et la résilience nécessaires. Zabbix fonctionne sur les meilleures versions du marché.

Le serveur Zabbix a été testé sur les plateformes suivantes :

  • Linux
  • Solaris
  • AIX
  • HP-UX
  • Mac OS X
  • FreeBSD
  • OpenBSD
  • NetBSD
  • SCO Open Server
  • Tru64/OSF1

Zabbix peut également fonctionner sur d'autres systèmes d'exploitation de type Unix.

Environnement local

Notez que le serveur requiert un environnement local UTF-8 afin que certains éléments textuels puissent être interprétés correctement. La plupart des systèmes modernes de type Unix ont un paramètre régional UTF-8 par défaut, cependant, certains systèmes peuvent avoir besoin d'être définis spécifiquement.