L'agent Zabbix 2 est une nouvelle génération d'agent Zabbix et peut être utilisé à la place de l'agent Zabbix. L'agent Zabbix 2 a été développé pour :
L'agent 2 est écrit en langage de programmation Go (avec du code C de l'agent Zabbix réutilisé). Un environnement Go configuré avec une version Go actuellement prise en charge est requis pour créer l'agent Zabbix 2.
L'agent 2 n'a pas de prise en charge intégrée de la démonisation sous Linux ; il peut être exécuté en tant que service Windows.
Les vérifications passives fonctionnent de la même manière que l'agent Zabbix. Les vérifications actives prennent en charge les intervalles planifiés/flexibles et vérifient la simultanéité au sein d'un serveur actif.
Par défaut, l'agent Zabbix 2 planifiera la première collecte de données pour les vérifications actives à une heure conditionnellement aléatoire dans l'intervalle de mise à jour de l'élément pour éviter les pics d'utilisation des ressources. Pour effectuer des vérifications actives qui n'ont pas d'intervalle de mise à jour planifié immédiatement après le redémarrage de l'agent, définissez le paramètre ForceActiveChecksOnStart
(niveau global) ou Plugins .<Plugin name>.System.ForceActiveChecksOnStart
(affecte uniquement les vérifications de plugins spécifiques) dans le fichier de configuration. Le paramètre au niveau du plugin, s'il est défini, remplacera le paramètre global. Forcer les vérifications actives au démarrage est pris en charge depuis Zabbix 6.0.2.
Vérifier la simultanéité
Les vérifications de différents plugins peuvent être exécutées simultanément. Le nombre de vérifications simultanées dans un plugin est limité par le paramètre de capacité du plugin. Chaque plug-in peut avoir un paramètre de capacité codé en dur (100 étant la valeur par défaut) qui peut être réduit à l'aide du paramètre Plugins.<PluginName>.System.Capacity=N
dans la configuration le paramètre Plugins. L'ancien nom de ce paramètre Plugins.<PluginName>.Capacity
est toujours pris en charge, mais a été déprécié dans Zabbix 6.0.
Voir aussi : Directives de développement de plugins.
Passive checks work similarly to Zabbix agent. Active checks support scheduled/flexible intervals and check concurrency within one active server.
By default, after a restart, Zabbix agent 2 will schedule the first data collection for active checks at a conditionally random time within the item's update interval to prevent spikes in resource usage. To perform active checks that do not have Scheduling update interval immediately after the agent restart, set ForceActiveChecksOnStart
parameter (global-level) or Plugins.<Plugin name>.System.ForceActiveChecksOnStart
(affects only specific plugin checks) in the configuration file. Plugin-level parameter, if set, will override the global parameter. Forcing active checks on start is supported since Zabbix 6.0.2.
Checks from different plugins can be executed concurrently. The number of concurrent checks within one plugin is limited by the plugin capacity setting. Each plugin may have a hardcoded capacity setting (100 being default) that can be lowered using the Plugins.<PluginName>.System.Capacity=N
setting in the Plugins configuration parameter. Former name of this parameter Plugins.<PluginName>.Capacity
is still supported, but has been deprecated in Zabbix 6.0.
L'agent Zabbix 2 est pris en charge pour les plates-formes suivantes.
L'agent Zabbix 2 est disponible dans des paquets Zabbix pré-compilés. Pour compiler l'agent Zabbix 2 à partir des sources, vous devez spécifier l'option de configuration --enable-agent2
.
Les paramètres de ligne de commande suivants peuvent être utilisés avec l'agent Zabbix 2 :
Paramètre | Description |
---|---|
-c --config <config-file> | Chemin d'accès au fichier de configuration. Vous pouvez utiliser cette option pour spécifier un fichier de configuration qui n'est pas celui par défaut. Sous UNIX, la valeur par défaut est /usr/local/etc/zabbix_agent2.conf ou tel que défini par les variables compile-time --sysconfdir ou --prefix |
-f --foreground | Exécuter l'agent Zabbix au premier plan (par défaut : vrai). |
-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). |
-h --help | Afficher les informations d'aide et quitter. |
-v --verbose | Afficher les informations de débogage. Utiliser cette option avec les options -p et -t. |
-V --version | Afficher la version de l'agent et les informations de licence. |
-R --runtime-control <option> | Effectuer des fonctions administratives. Voir contrôle d'exécution. |
Exemples spécifiques d'utilisation de paramètres de ligne de commande :
Le contrôle d'exécution fournit quelques options pour le contrôle à distance.
Option | Description |
---|---|
log_level_increase | Augmenter le niveau de journalisation. |
log_level_decrease | Diminuer le niveau de journalisation. |
metrics | Lister les métriques disponibles. |
version | Afficher la version de l'agent. |
userparameter_reload | Recharger les paramètres utilisateur à partir du fichier de configuration actuel. Notez que UserParameter est la seule option de configuration de l'agent qui sera rechargée. |
help | Afficher les informations d'aide sur le contrôle d'exécution. |
Exemples :
Les paramètres de configuration de l'agent 2 sont pour la plupart compatibles avec l'agent Zabbix à quelques exceptions près.
Nouveaux paramètres | Description |
---|---|
ControlSocket | Le chemin du socket de contrôle d'exécution. L'agent 2 utilise un socket de contrôle pour les commandes d'exécution. |
EnablePersistentBuffer, PersistentBufferFile, PersistentBufferPeriod |
Ces paramètres sont utilisés pour configurer le stockage persistant sur l'agent 2 pour les éléments actifs. |
ForceActiveChecksOnStart | Détermine si l'agent doit effectuer des vérifications actives immédiatement après le redémarrage ou réparties uniformément dans le temps. Pris en charge depuis Zabbix 6.0.2. |
Plugins | Les plugins peuvent avoir leurs propres paramètres, au format Plugins.<Plugin name>.<Parameter>=<value> . Un paramètre de plugin courant est System.Capacity, définissant la limite des vérifications pouvant être exécutées en même temps. |
StatusPort | L'agent de port 2 écoutera la demande d'état HTTP et affichera une liste de plugins configurés et certains paramètres internes |
Paramètres abandonnés | Description |
AllowRoot,User | Non pris en charge car la démonisation n'est pas prise en charge. |
LoadModule,LoadModulePath | Les modules chargeables ne sont pas pris en charge. |
StartAgents | Ce paramètre a été utilisé dans l'agent Zabbix pour augmenter la simultanéité des vérifications passives ou pour les désactiver. Dans l'agent 2, la simultanéité est configurée au niveau du plug-in et peut être limitée par un paramètre de capacité. Alors que la désactivation des vérifications passives n'est actuellement pas prise en charge. |
HostInterface,HostInterfaceItem | Pas encore pris en charge. |
Pour plus de détails, consultez les options du fichier de configuration pour zabbix_agent2.
À partir de la version 4.4.8, l'agent Zabbix 2 peut également être compilé avec les anciennes versions d'OpenSSL (1.0.1, 1.0.2).
Dans ce cas, Zabbix fournit des mutex pour le verrouillage dans OpenSSL. Si un verrouillage ou un déverrouillage mutex échoue, un message d'erreur est écrit dans le flux d'erreurs standard (STDERR) et l'agent 2 quitte avec le code de retour 2 ou 3, respectivement.