3 Processus Zabbix
1 Zabbix Server
Le serveur ZABBIX est un processus central du logiciel ZABBIX. Le serveur ZABBIX peut être démarré en exécutant:
shell> cd bin shell> ./zabbix_server
Le serveur ZABBIX est lancé en tant que démon.
Le serveur ZABBIX accepte les paramètres suivants en ligne de commande:
-c --config <file> Spécifie l'emplacement du fichier de configuration, la valeur par défaut est /etc/zabbix/zabbix_server.conf -h --help affiche l'aide -v --version affiche la version
Pour afficher l'aide:
shell> zabbix_server -h
Exemple de lancement du serveur ZABBIX en ligne de commande:
shell> zabbix_server -c /usr/local/etc/zabbix_server.conf shell> zabbix_server --help shell> zabbix_server -v
Le fichier de configuration contient des paramètres pour zabbix_server. Le fichier doit exister et l'utilisateur 'zabbix' doit avoir le droit de lecture dessus. Paramètres supportés:
Paramètre | Mandataire | Range | Défaut | Description |
---|---|---|---|---|
AlertScriptsPath | non | /home/zabbix/bin/ | Localisation des scripts d'alerte personnalisés | |
CacheSize | non | 131072-1073741824 (128KB-1GB) | 8388608 (8MB) | Taille du cache de configuration, en octets. Taille de la mémoire partagée, pour le stockage des hôtes ainsi que des données des items. |
CacheUpdateFrequency | non | 1-3600 | 60 (1 min) | A quelle fréquence Zabbix effectuera la mise à jour du cache de configuration, en secondes. |
DBHost | non | localhost | Nom du serveur base de données. Si la valeur localhost est paramétrée, socket is used for MySQL. |
|
DBName | oui | Nom de la base de données. Pour SQLite3, le chemin au fichier de la base de données doit être indiqué. DBUser et DBPassword sont ignorés. |
||
DBPassword | non | mot de passe de la base de données. Ignoré pour SQLite. Commenter cette ligne pour ne pas utiliser de mot de passe. |
||
DBPort | non | 1024-65535 | 3306 | Port de la base de données lorsque le socket local n'est pas utilisé. Ignoré pour SQLite. |
DBSocket | non | /tmp/mysql.sock | Chemin pour le socket MySQL. | |
DBUser | yes | Utilisateur de la base de données. Ignoré pour SQLite. | ||
DebugLevel | non | 0-4 | 3 | Specifie le niveau de debug 0 – pas de debug 1 – information critique 2 – information sur les erreurs 3 – avertissements 4 – pour le debugging (produit un grand nombre d'informations) |
DisableHousekeeping | non | 0-1 | 0 | Si la valeur 1 est paramétrée, l'housekeeping est désactivé. |
ExternalScripts | non | /etc/zabbix/externalscripts | Localisation des scripts externes | |
Fping6Location | non | /usr/sbin/fping6 | Localisation de fping6. Assurez-vous que les binaires de fping6 appartiennent à root et que le SUID est paramétré! |
|
FpingLocation | non | /usr/sbin/fping | Localisation de fping. Assurez-vous que les binaires de fping appartiennent à root et que le SUID est paramétré! |
|
HousekeepingFrequency | non | 1-24 | 1 | Fréquence à laquelle Zabbix effectuera la procédure housekeeping (en heure). Housekeeping supprime les informations qui ne sont plus nécessaire des tables history, alert, et alarms. |
Include | non | Vous pouvez inclure un ou des fichiers d'un répertoire dans le fichier de configuration. | ||
ListenIP | non | 0.0.0.0 | Interface d'écoute du trapper. Le Trapper va écouter sur toutes les interfaces réseaux si ce paramètre est manquant. |
|
ListenPort | non | 1024-32767 | 10051 | Port d'écoute du trapper. |
LogFileSize | non | 0-1024 | 1 | Taille maximum du fichier de log, en Mo. 0 – désactive la rotation automatique des logs. |
LogFile | non | Nom du fichier log. Si non renseigné, syslog est utilisé. |
||
NodeID | non | 0-999 | 0 | NodeID unique dans les installations distribuées. |
NodeNoEvents | non | 0-1 | 0 | Si '1' est paramétré, Les événements locaux ne seront pas envoyés au nœud maître. |
NodeNoHistory | non | 0-1 | 0 | Si '1' est paramétré, l'historique local ne sera pas envoyés au nœud maître. |
PidFile | non | /tmp/zabbix_server.pid | Nom du fichier PID. | |
SenderFrequency | non | 5-3600 | 30 | Fréquence à laquelle Zabbix va essayer d'envoyer les alertes qui ne l'ont pas encore été (en secondes). |
SourceIP | non | Adresse IP source pour les connexions sortantes. | ||
SSHKeyLocation | non | Localisation des clés publiques pour les vérifications SSH | ||
StartDBSyncers | non | 0 | Active le cache de la base de données: 0 – Désactivé, 1 – Activé Cette option n'est pas utilisée dans Zabbix 1.8. Le cache de base de données est activé en permanence. |
|
StartDiscoverers | non | 0-255 | 1 | Nombre de pre-forked instances des discoverers. |
StartHTTPPollers | non | 0-255 | 1 | Nombre de pre-forked instances des pollers HTTP. |
StartIPMIPollers | non | 0-255 | 0 | Nombre de pre-forked instances des pollers IPMI. |
StartPingers | non | 0-255 | 1 | Nombre de pre-forked instances des pingers ICMP. |
StartPollersUnreachable | non | 0-255 | 1 | Nombre de pre-forked instances des pollers pour les hôtes inaccessibles. |
StartPollers | non | 0-255 | 5 | Nombre de pre-forked instances des pollers. Vous ne devriez pas lancer plus de 30 pollers en temps normal. |
StartTrappers | non | 0-255 | 5 | Nombre de pre-forked instances des trappers |
Timeout | non | 1-30 | 3 | Spécifie le temps d'attente des réponses des agents (en secondes). |
TmpDir | non | /tmp | Répertoire temporaire. | |
TrapperTimeout | non | 1-300 | 300 | Spécifie le temps de traitement en seconde des trappers pour les nouvelles données. |
UnavailableDelay | non | 1-3600 | 60 | A quelle fréquence la disponibilité de l'hôte doit être vérifiée durant une période de non disponibilté. |
UnreachableDelay | non | 1-3600 | 15 | A quelle fréquence la disponibilité de l'hôte doit être vérifiée durant une période de non accessibilité. |
UnreachablePeriod | non | 1-3600 | 45 | Après combien de secondes d'inaccessibilité un hôte doit être considéré comme indisponible. |
3.2 Proxy Zabbix
3 Agent zabbix (UNIX, démon autonome)
L'agent Zabbix UNIX s'exécute sur un hôte supervisé. L'agent fourni les performances de l'hôte et la disponibilité des informations pour le serveur Zabbix. L'agent Zabbix traite des items de type 'Zabbix Agent' ou 'Zabbix Agent (actif)'.
L'agent Zabbix peut-être démarré en exécutant:
shell> cd bin shell> ./zabbix_agentd
L'agent Zabbix est exécuté en tant que démon.
L'agent Zabbix accepte les paramètres de ligne de commande suivants:
-c --config <file> spécifie l'emplacement du fichier de configuration, par défaut /etc/zabbix/zabbix_agentd.conf -h --help affiche cette aide -v --version affiche le numéro de version -p --print affiche les métriques supportées et quitte -t --test <metric> teste la métrique spécifiée et quitte
Pour pouvoir obtenir cette aide:
shell> zabbix_agentd -h
Exemple de paramètres en ligne de commande:
shell> zabbix_agentd -c /usr/local/etc/zabbix_agentd.conf shell> zabbix_agentd --help shell> zabbix_agentd --print shell> zabbix_agentd -t "system.cpu.load[all,avg1]"
Le fichier de configuration contient les paramètres de configuration pour zabbix_agentd. Le fichier doit exister et l'utilisateur 'zabbix' doit avoir les droits de lecture sur ce fichier. Paramètres pris en charge:
Paramètre | Mandataire | Rang | Défaut | Description | |
---|---|---|---|---|---|
BufferSend | non | 1-3600 | 5 | Ne pas garder les données dans le buffer plus de N secondes. | |
BufferSize | non | 1-65535 | 100 | Nombre maximum de valeurs dans la mémoire du buffer. L'agent enverra toutes les données collectée au serveur ou Proxy Zabbix si le buffer est plein. |
|
DebugLevel | non | 3 | Spécifie le niveau de debug 0 – pas de debug 1 – information critique 2 – information sur les erreurs 3 – avertissements 4 – pour le debugging (produit beaucoup d'informations) |
||
DisableActive | non | 0 | désactive les “active checks”. L'agent fonctionnera en mode passif à l'écoute du serveur. | ||
DisablePassive | non | 0 | désactive les “passive checks”. L'agent n'écoutera sur aucun des ports TCP. seulement les active checks seront exécutés. 0 – ne pas désactiver 1 – désactiver |
||
EnableRemoteCommands | non | 0 | Spécifie si les commandes à distance depuis le serveur Zabbix sont autorisées. 0 – non autorisé 1 – autorisé |
||
Hostname | system.uname | hostname Unique. Requis pour les active checks et doit correspondre au hostname configuré sur le serveur. |
|||
Include | non | Vous pouvez inclure des fichiers ou le contenu d'un répertoire dans le fichier de configuration. | |||
ListenIP | non | 0.0.0.0 | L'agent écoutera sur l'interface spécifiée. | ||
ListenPort | non | 1024-32767 | 10050 | L'agent écoutera sur ce port pour les connexions depuis le serveur. | |
LogFileSize | non | 1-1024 | 1 | Taille maximum du fichier log en Mo. 0 – Désactive la rotation automatique des logs. |
|
LogFile | non | Nom du fichier log. Si non paramétré, syslog est utilisé. |
|||
MaxLinesPerSecond | non | 1-1000 | 100 | Nombre maximum de nouvelles lignes par seconde que l'agent enverra au serveur ou Proxy Zabbix pour exécuter les 'log' et 'eventlog' des active checks. La valeur fournie sera écrasée par le paramètre 'maxlines', fournie dans l'item key 'log' ou 'eventlog'. |
|
PidFile | non | /tmp/zabbix_agentd.pid | Nom du fichier PID. | ||
RefreshActiveChecks | non | 60-3600 | 120 | Fréquence de rafraîchissement des active checks, en secondes. | |
ServerPort | non | 10051 | Port serveur pour la récupération des listes et l'envoi des active checks. | ||
Server | oui | Liste des adresses IP (ou hostnames) des serveurs Zabbix délimités par des virgules. Les espaces ne sont pas autorisés. La première valeur est utilisée pour recevoir les lites et envoyer les “active checks”. Remarque: Les hostnames doivent résoudre hostname→adresse IP et adresse IP→hostname. |
|||
SourceIP | non | Adresse IP source pour les connexions sortantes. | |||
StartAgents | non | 1-16 | 3 | Nombre de pre-forked instances de zabbix_agentd qui exécute les “passive checks”. | |
Timeout | non | 1-30 | 3 | Permet de limiter le nombre de secondes pour le traitement | |
UserParameter | Paramètres définis par l'utilisateur pour superviser. Il peut y avoir plusieurs paramètres définis par l'utilisateur. Format: UserParameter=<key>,<shell command> Remarque: les commandes Shell ne doivent pas retourner des chaînes de caractères vides ou uniquement des EOL. Exemple: UserParameter=system.test,who |
wc -l |
3.4 Agent Zabbix (UNIX, version Inetd)
Le fichier contient les paramètres de configuration pour l'agent zabbix. Le fichier doit être présent et l'utilisateur 'zabbix' doit avoir les droits de lecture dessus. Paramètres supportés:
Parametre | Mandataire | valeur par défaut | Description |
---|---|---|---|
Server | Oui | – | Liste des adresses IP des serveurs/proxy ZABBIX délimités par des virgules. Les connexions depuis les autres adresses Ip seront rejetées. |
Timeout | Non | 3 | Permet de limiter à la valeur définie le temps d'attente pour obtenir les valeurs demandées (1-255). L'agent ne terminera pas les process des User Parameters dont le temps d'attente est dépassé! |
UserParameter | Non | – | Paramètres définis par l'utilisateur pour superviser. Il peut y avoir plusieurs paramètres définis par l'utilisateur. Exemple:UserParameter=users,who|wc -l |
3.5 Agent Zabbix (Windows)
Installation
L'installation est très simple et se déroule en 3 étapes:
Étape 1
Créer le fichier de configuration.
Créer le fichier de configuration c:/zabbix_agentd.conf (Il possède la même syntaxe que l'agent UNIX).
Étape 2
Installer l'agent en tant que service Windows.
zabbix_agentd.exe --install
Si vous souhaitez utiliser un fichier de configuration autre que c:\zabbix_agentd.conf, vous pouvez utiliser la syntaxe suivante pour l'installation du service:
zabbix_agentd.exe --config <your_configuration_file> --install
Le chemin complet du fichier de configuration doit être spécifié.
Étape 3
Démarrer l'agent.
Maintenant, vous pouvez utiliser le panneau de contrôle pour démarrer le service de l'agent ou vous pouvez exécuter la commande suivante:
zabbix_agentd.exe --start
Utilisation
Syntaxe de la ligne de commande:
zabbix_agentd.exe [-Vhp] [-idsx] [-c <file>] [-t <metric>]
L'agent Zabbix Windows accepte les paramètres suivants:
Options:
-c --config <file> Specifie l'emplacement du fichier de configuration (l'emplacement par défaut est c:\zabbix_agentd.conf). -h --help Affiche l'aide. -V --version Affiche le numéro de version. -p --print Affiche la liste des checks (métriques) et quitte. -t --test <metric> Test single check (metrique) et quitte.
Fonctions:
-i --install Installe l'agent ZABBIX en tant que service. -d --uninstall Désinstalle le service de l'agent ZABBIX. -s --start Démarre le service de l'agent ZABBIX. -x --stop Arrête le service de l'agent ZABBIX.
Le fichier de configuration (c:/zabbix_agentd.conf) contient des paramètres de configuration pour zabbix_agentd.exe. Paramètres supportés:
Parametre | Mandataire | Valeur par défaut | Description |
---|---|---|---|
Alias | Non | – | Défini l'alias du paramètre. Il peut être utile pour substituer un long et complexe nom de paramètre avec un autre plus court et plus simple. Par exemple, si vous souhaitez récupérer l'utilisation du fichier d'échange en pourcent à partir du serveur, vous pouvez utiliser le paramètre “perf_counter[\Paging File(_Total)\% Usage]”, ou vous pouvez définir un alias en ajoutant la ligne suivante au fichier de configuration: Alias = pg_usage:perf_counter[\Paging File(_Total)\% Usage] Après vous pouvez utiliser le nom de paramètre “pg_usage” pour récupérer la même information. Vous pouvez spécifier autant d'“Alias” que vous le souhaitez. A noter que les alias ne peuvent pas être utilisés pour les paramètres “PerfCounter” définis dans le fichier de configuration. |
DebugLevel | Non | 3 | Spécifie le niveau de debug 0 – pas de debug 1 – information critique 2 – information sur les erreurs 3 – avertissements 4 – pour le debugging (produit beaucoup d'informations) |
Include | Non | – | Utiliser ce paramètre pour inclure un fichier dans le fichier de configuration. Le nombre de paramètres inclus n'est pas limité. Par exemple: Include=c:\user_parameters.conf |
ListenPort | Non | 10050 | L'agent écoutera sur ce port pour les connexions depuis le serveur. |
LogFile | Non | – | Nom du fichier log. Si non paramétré, syslog est utilisé. |
LogUnresolvedSymbols | Non | – | Contrôle le “logging” des symboles non résolus durant le démarrage de l'agent. Les valeurs peuvent être les chaînes de caractères ‘yes’ ou ‘no’ (sans les quotes). |
MaxCollectorProcessingTime | Non | 100 | Défini le temps maximum de traitement d'un échantillon de données par le collecteur (en millisecondes). Si le temps de traitement dépasse la valeur spécifiée, un message d'alerte sera écrit dans le fichier de log. |
NoTimeWait | Non | – | Ce paramètre n'a pas d'effet. |
PerfCounter | No | – | <parameter_name>,”<perf_counter_path>”,<period> Définissent le nouveau paramètre <parameter_name> qui est une valeur moyenne du “compteur” de performance système <perf_counter_path> pour la période de temps spécifiée <period> (in seconds). Par exemple, Si vous souhaitez recevoir le nombre moyen d'interruptions par seconde pour la dernière minute, Vous pouvez définir le nouveau paramètre “interrupts” de la manière suivante: PerfCounter = interrupts,”\Processor(0)\Interrupts/sec”,60 Notez la double quotes autour de la définition du compteur de performance. Les échantillons pour calculer la valeur moyenne seront relevés chaque seconde. Vous pouvez exécuter typeperf –qx pour obtenir la liste de tous les compteurs de performance disponibles pour Windows. |
PidFile | Non | – | Ce paramètre n'a pas d'effet. |
Server | Oui | – | Liste des adresses IP des serveurs ZABBIX délimités par des virgules. Les connexions depuis d'autres adresses IP seront rejetées. |
SourceIP | Non | – | Set source IP address all connections established by the process. |
StartAgents | Non | – | Ce paramètre n'a pas d'effet. |
UserParameter | Non | – | Paramètres définis par l'utilisateur pour superviser. Il peut y avoir plusieurs paramètres définis par l'utilisateur. la valeur est de la forme <key>,<shell command>. Ne pas utiliser d'espace autour de caractères pipe ('|')! Exemple:UserParameter=test,echo 1 |
3.6 Zabbix Sender (UNIX)
Zabbix UNIX Sender est un utilitaire en ligne de commande qui peut-être utilisé pour envoyer les données de performances au serveur ZABBIX pour traitement.
Cet utilitaire est généralement utilisé pour les long scripts utilisateur pour les envois périodiques de disponibilités et de données de performance.
Zabbix Sender peut être démarré en exécutant:
shell> cd bin shell> ./zabbix_sender -z zabbix -p 10051 -s LinuxDB3 -k db.connections -o 43
Zabbix Sender accepte les paramètres en ligne de commande suivants:
-z --zabbix-server <zabbix server> Hostname ou adresse IP du serveur ZABBIX. -p --port <zabbix server port> Spécifie le port du trapper exécuté sur le serveur. La valeur par défaut est 10051. -s --host <host name or IP> Spécifie le nom machine. L'adresse IP de l'hôte et le nom DNS ne fonctionnent pas. -I --source-address <ip address> Spécifie l'adresse IP source -k --key <key of metric> Spécifie le nom de la métrique (clé) que nous voulons envoyer. -o --value <value> Spécifie la valeur de la clé. -i --input-file <input file> Charge les valeurs depuis un fichier. -h --help Affiche cette aide. -v --version Affiche la version.
Pour afficher cette aide:
shell> zabbix_sender -h
3.7 Zabbix Get (UNIX)
Zabbix UNIX Get est un processus qui communique avec l'agent ZABBIX et récupère les informations nécessaires.
Cet utilitaire est généralement utilisé pour résoudre les problèmes des agents ZABBIX.
Zabbix Get peut être démarré en utilisant:
shell> cd bin shell> ./zabbix_get -s127.0.0.1 -p10050 -k"system.cpu.load[all,avg1]"
Zabbix Get accepte les paramètres en ligne de commandes suivants:
-p --port <port number> Spécifie le port de l'agent qui fonctionne sur l'hôte. La valeur par défaut est 10050. -s -host <host name or IP> Spécifie le nom machine ou l'adresse IP de l'hôte. -I --source-address <ip address> Spécifie l'adresse IP source -k -key <key of metric> Spécifie le nom de la métrique (clé) que nous voulons récupérer. -h --help Affiche cette aide. -v --version Affiche la version.
Pour afficher cette aide:
shell> zabbix_get -h
Data source: Zabbix