1 Découverte des systèmes de fichiers montés
Vue d’ensemble
Il est possible de découvrir les systèmes de fichiers montés et leurs propriétés :
- nom du point de montage
- type de système de fichiers
- taille du système de fichiers
- statistiques des inodes
- options de montage
Pour ce faire, vous pouvez utiliser une combinaison de :
- l’élément d’agent
vfs.fs.getcomme élément maître - une règle de découverte de bas niveau dépendante et des prototypes d’éléments
Configuration
Élément maître
Créez un élément d'agent Zabbix en utilisant la clé suivante :
vfs.fs.get

Définissez le type d'information sur « Texte » pour les données JSON potentiellement volumineuses.
Les données renvoyées par cet élément contiendront quelque chose de similaire à ce qui suit pour un système de fichiers monté :
[
{
"fsname": "/",
"fstype": "ext4",
"bytes": {
"total": 249405239296,
"free": 24069537792,
"used": 212595294208,
"pfree": 10.170306,
"pused": 89.829694
},
"inodes": {
"total": 15532032,
"free": 12656665,
"used": 2875367,
"pfree": 81.487503,
"pused": 18.512497
},
"options": "rw,noatime,errors=remount-ro"
}
]
Règle LLD dépendante
Créez une règle de découverte de bas niveau de type « Élément dépendant » :

Comme élément maître, sélectionnez l’élément vfs.fs.get que nous avons créé.
Dans l’onglet « Macros LLD », définissez des macros personnalisées avec le JSONPath correspondant :

Dans l’onglet « Filtres », vous pouvez ajouter une expression régulière qui filtre uniquement les systèmes de fichiers lecture-écriture :

Prototype d'élément dépendant
Créez un prototype d'article avec le type "Élément dépendant" dans cette règle LLD. Comme élément maître pour ce prototype, sélectionnez l'élément vfs.fs.get que nous avons créé.

Notez l'utilisation de macros personnalisées dans le nom et la clé du prototype d'élément :
- Nom: Free disk space on {#FSNAME}, type: {#FSTYPE}
- Clé: Free[{#FSNAME}]
Comme type d'information, utilisez :
- Numérique (non signé) pour les métriques telles que 'free', 'total', 'used'
- Numérique (flottant) pour les métriques telles que 'pfree', 'pused' (pourcentage)
Dans l'onglet "Prétraitement" du prototype d'élément, sélectionnez JSONPath et utilisez l'expression JSONPath suivante comme paramètre :
$.[?(@.fsname=='{#FSNAME}')].bytes.free.first()

Lorsque la découverte démarre, un élément par point de montage sera créé. Cet élément renverra le nombre d'octets libres pour le point de montage donné.