Astuces

De Wiki de Jordan LE NUFF
< Outillage‎ | Zabbix
Révision datée du 13 décembre 2021 à 09:40 par Jordan (discussion | contributions) (→‎Libérer de l'espace)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)
Sauter à la navigation Sauter à la recherche

Présentation

Cette page a pour objet de lister quelques astuces quant à l'utilisation de l'outil Zabbix.

Template php-fpm

Dans le cas de l'utilisation du template zabbix-php-fpm disponible sur https://github.com/rvalitov/zabbix-php-fpm, la découverte automatique ne fonctionne pas sur un serveur CentOS.

En effet, cela a donné lieu à l'ouverture d'un bug (https://github.com/rvalitov/zabbix-php-fpm/pull/9).

La correction consiste à aller modifier le fichier zabbix_php_fpm_discovery.sh, ligne 50 :

POOL_SOCKET=`$S_LSOF -p $POOL_PID 2>/dev/null | $S_GREP unix | $S_HEAD -1 | $S_AWK '{ print $(NF-1)}'`

par :

POOL_SOCKET=`$S_LSOF -p $POOL_PID 2>/dev/null | $S_GREP unix | $S_HEAD -1 | $S_AWK '{ print $(NF)}

Libérer de l'espace

La plus grosse consommation d'espace disque de la part de Zabbix se fait en base de données, par la table history_uint qui sert à stocker l'historique des données relevées.

Un moyen rapide à faire en cas d'urgence est de supprimer toutes les données d'historique au-delà d'un certaine date.

Pour ce faire, se connecter au système de gestion de la base de données :

mysql -umyzabbixdbuser -p

Si besoin, se connecter également à la base de données :

use zabbix_db;

Lancer ensuite les commandes suivantes afin de purger les tables d'historique, où 35 représente le nombre de jours à conserver :

DELETE FROM history_uint WHERE clock < UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 35 DAY));
DELETE FROM history WHERE clock < UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 35 DAY));
DELETE FROM trends_uint WHERE clock < UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 35 DAY));
DELETE FROM trends WHERE clock < UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 35 DAY));
DELETE FROM events WHERE clock < UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 35 DAY));
DELETE FROM alerts WHERE clock < UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 35 DAY));

Enfin, lancer une optimisation de la table d'historique :

optimize table history_uint;