2 Agent

Aperçu

L'agent Zabbix est déployé sur une cible de supervision afin de surveiller activement les ressources locales et les applications (disques durs, mémoire, statistiques du processeur, etc.).

L'agent collecte localement les informations de fonctionnement et transmet les données au serveur Zabbix pour un traitement ultérieur. En cas de défaillance (par exemple, un disque dur saturé ou un processus de service arrêté de manière inattendue), le serveur Zabbix peut alerter activement les administrateurs de la machine concernée ayant signalé la défaillance.

Les agents Zabbix sont très efficaces grâce à l'utilisation d'appels système natifs pour collecter des informations statistiques.

Vérifications passives et actives

Les agents Zabbix peuvent effectuer des vérifications passives et actives :

  • Vérifications passives - l’agent Zabbix répond à une requête du serveur Zabbix (ou du proxy). Par exemple, le serveur demande des données (par ex. la charge CPU), et l’agent renvoie le résultat.
  • Vérifications actives - l’agent Zabbix collecte et envoie des données sans attendre de requête du serveur Zabbix (ou du proxy). Il récupère d’abord une liste d’éléments de supervision depuis le serveur (charge CPU, mémoire disponible, etc.), puis collecte les données requises et lui renvoie périodiquement de nouvelles valeurs.

Le type de vérification de l’agent est configuré en sélectionnant le type d’élément de supervision correspondant. L’agent Zabbix traite les éléments de type « Zabbix agent » ou « Zabbix agent (active) ».

Plateformes prises en charge

Pour connaître les plateformes prises en charge, consultez la page Requirements.

Agent sur les systèmes de type Unix

L’agent Zabbix sur les systèmes de type Unix s'exécute sur l’hôte qui est surveillé.

Installation

L'agent Zabbix peut être installé sur des systèmes basés sur Linux à l'aide de l'une des méthodes suivantes :

  • Paquets Zabbix - sélectionnez le composant Agent (après avoir sélectionné votre version de Zabbix, la distribution de votre système d'exploitation et la version du système d'exploitation), puis suivez les instructions fournies.
  • Sources Zabbix - téléchargez les fichiers source et compilez l'agent Zabbix en configurant les sources avec l'option --enable-agent.

En général, les agents Zabbix 32 bits fonctionneront sur des systèmes 64 bits, mais peuvent échouer dans certains cas.

Des binaires précompilés de l'agent Zabbix sont disponibles en téléchargement pour macOS, IBM AIX, FreeBSD, OpenBSD et Solaris. Des binaires hérités, compatibles avec la version actuelle de Zabbix server/proxy, sont disponibles pour NetBSD et HP-UX.

Si installé en tant que paquet

Zabbix agent s’exécute en tant que processus démon. L’agent peut être démarré en exécutant :

systemctl start zabbix-agent

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

/etc/init.d/zabbix-agent start

Pour arrêter, redémarrer ou vérifier l’état de Zabbix agent, utilisez les commandes suivantes :

systemctl stop zabbix-agent
systemctl restart zabbix-agent
systemctl status zabbix-agent
Démarrage manuel

Vous pouvez démarrer l'agent Zabbix en localisant le binaire zabbix_agentd et en l'exécutant directement ; par exemple :

zabbix_agentd

Agent sur les systèmes Windows

L'agent Zabbix sur Windows s'exécute en tant que service Windows.

Installation

L'agent Zabbix peut être installé sur Windows à l'aide de l'une des méthodes suivantes :

Consultez la page Agent Zabbix sur Microsoft Windows pour plus de détails sur l'installation de l'agent Zabbix (à partir d'une archive ZIP) en tant que service Windows.

Options

Il est possible d'exécuter plusieurs instances de l'agent sur un hôte. Une seule instance peut utiliser le fichier de configuration par défaut ou un fichier de configuration spécifié dans la ligne de commande. En cas d'instances multiples, chaque instance d'agent doit avoir son propre fichier de configuration (l'une des instances peut utiliser le fichier de configuration par défaut).

Les paramètres de ligne de commande suivants peuvent être utilisés avec l'agent Zabbix :

Parameter Description
Agent UNIX et Windows
-c --config <config-file> Chemin vers le fichier de configuration.
Vous pouvez utiliser cette option pour spécifier un fichier de configuration autre que celui par défaut.
Sous UNIX, la valeur par défaut est /usr/local/etc/zabbix_agentd.conf ou celle définie par les variables de compilation --sysconfdir ou --prefix
Sous Windows, la valeur par défaut est C:\Program Files\Zabbix Agent\zabbix_agentd.conf
-f --foreground Exécuter l'agent Zabbix au premier plan (par défaut : true).
-p --print Afficher les éléments connus et quitter.
Remarque : pour renvoyer également les résultats des paramètres utilisateur, vous devez spécifier le fichier de configuration (s'il ne se trouve pas à l'emplacement par défaut).
-t --test <item key> Tester l'élément spécifié et quitter.
Remarque : pour renvoyer également les résultats des paramètres utilisateur, vous devez spécifier le fichier de configuration (s'il ne se trouve pas à l'emplacement par défaut).
-T --test-config Valider le fichier de configuration et quitter.
-h --help Afficher les informations d'aide.
-V --version Afficher le numéro de version.
Agent UNIX uniquement
-R --runtime-control <option> Exécuter des fonctions administratives. Voir le contrôle d'exécution.
Agent Windows uniquement
-m --multiple-agents Utiliser plusieurs instances d'agent (avec les options -i, -d, -s, -x).
Pour distinguer les noms de service des instances, chaque nom de service inclura la valeur Hostname du fichier de configuration spécifié.
-S --startup-type <value> Définir le type de démarrage du service de l'agent Zabbix Windows. Valeurs autorisées :
automatic - (par défaut) démarrer le service automatiquement au démarrage de Windows ;
delayed - retarder le démarrage du service jusqu'à ce que les services démarrés automatiquement aient terminé leur démarrage (disponible sur Windows Server 2008/Vista et versions ultérieures) ;
manual - démarrer le service manuellement (par un utilisateur ou une application) ;
disabled - désactiver le service afin qu'il ne puisse pas être démarré par un utilisateur ou une application.
Vous pouvez utiliser cette option avec l'option -i, ou séparément pour modifier le type de démarrage d'un service déjà installé.
-i --install Installer l'agent Zabbix Windows en tant que service.
-d --uninstall Désinstaller le service de l'agent Zabbix Windows.
-s --start Démarrer le service de l'agent Zabbix Windows.
-x --stop Arrêter le service de l'agent Zabbix Windows.

Exemples spécifiques d'utilisation des paramètres de ligne de commande :

  • affichage de tous les éléments intégrés de l'agent avec leurs valeurs
  • test d'un paramètre utilisateur avec la clé "mysql.ping" définie dans le fichier de configuration spécifié
  • installation d'un service "Zabbix Agent" pour Windows en utilisant le chemin par défaut vers le fichier de configuration C:\Program Files\Zabbix Agent\zabbix_agentd.conf
  • installation d'un service "Zabbix Agent [Hostname]" pour Windows en utilisant le fichier de configuration zabbix_agentd.conf situé dans le même dossier que l'exécutable de l'agent et en rendant le nom du service unique en l'étendant avec la valeur Hostname du fichier de configuration
  • modification du type de démarrage d'un service "Zabbix Agent" installé pour Windows en utilisant le fichier de configuration zabbix_agentd.conf situé dans le même dossier que l'exécutable de l'agent
zabbix_agentd --print
zabbix_agentd -t "mysql.ping" -c /etc/zabbix/zabbix_agentd.conf
zabbix_agentd.exe -i
zabbix_agentd.exe -i -m -c zabbix_agentd.conf
zabbix_agentd.exe -c zabbix_agentd.conf -S delayed
Contrôle d'exécution

Avec les options de contrôle d'exécution, vous pouvez modifier le niveau de journalisation des processus de l'agent.

Option Description Cible
log_level_increase[=<target>] Augmenter le niveau de journalisation.
Si la cible n'est pas spécifiée, tous les processus sont affectés.
La cible peut être spécifiée comme suit :
type de processus - tous les processus du type spécifié (par exemple, listener)
Voir tous les types de processus de l'agent.
type de processus,N - type de processus et numéro (par exemple, listener,3)
pid - identifiant du processus (1 à 65535). Pour des valeurs plus grandes, spécifiez la cible comme 'process-type,N'.
log_level_decrease[=<target>] Diminuer le niveau de journalisation.
Si la cible n'est pas spécifiée, tous les processus sont affectés.
userparameter_reload Recharger les valeurs des options UserParameter et Include à partir du fichier de configuration actuel.

Exemples :

  • augmentation du niveau de journalisation de tous les processus
  • augmentation du niveau de journalisation du troisième processus listener
  • augmentation du niveau de journalisation du processus avec le PID 1234
  • diminution du niveau de journalisation de tous les processus de vérification active
zabbix_agentd -R log_level_increase
zabbix_agentd -R log_level_increase=listener,3
zabbix_agentd -R log_level_increase=1234
zabbix_agentd -R log_level_decrease="active checks"

Le contrôle d'exécution n'est pas pris en charge sur OpenBSD, NetBSD et Windows.

Types de processus de l'agent

  • active checks - processus effectuant des contrôles actifs
  • collector - processus de collecte des données
  • listener - processus à l'écoute des contrôles passifs

Le fichier journal de l'agent peut être utilisé pour observer ces types de processus.

Le fichier journal de l'agent est créé avec des autorisations de lecture et d'écriture uniquement pour le propriétaire du fichier. De plus, le fichier est lisible par le groupe du propriétaire. Toutes les autres autorisations sont refusées.

Utilisateur du processus

L'agent Zabbix sous UNIX est conçu pour s'exécuter en tant qu'utilisateur non root. Il s'exécutera avec l'utilisateur non root sous lequel il a été démarré. Vous pouvez donc exécuter l'agent avec n'importe quel utilisateur non root sans aucun problème.

Si vous essayez de l'exécuter en tant que 'root', il basculera vers un utilisateur 'zabbix' codé en dur, qui doit être présent sur votre système. Vous ne pouvez exécuter l'agent en tant que 'root' que si vous modifiez en conséquence le paramètre 'AllowRoot' dans le fichier de configuration de l'agent.

Fichier de configuration

Pour plus de détails sur la configuration de l'agent Zabbix, consultez les options du fichier de configuration pour zabbix_agentd ou l'agent Windows.

Paramètres régionaux

Notez que l'agent nécessite des paramètres régionaux UTF-8 afin que certains éléments textuels de l'agent puissent renvoyer le contenu attendu. La plupart des systèmes modernes de type Unix utilisent UTF-8 par défaut pour les paramètres régionaux ; toutefois, sur certains systèmes, il peut être nécessaire de le définir explicitement.

Code de sortie

L'agent Zabbix renvoie 0 en cas de sortie réussie et 1 en cas d'échec.