Pievienoto failu sistēmu atklāšana
Pārskats
Ir iespējams atklāt piemontētās failu sistēmas un to rekvizītus:
- piemontēšanas punkta nosaukums
- failu sistēmas tips
- failu sistēmas lielums
- inode statistika
- piemontēšanas opcijas
Lai to paveiktu, varat izmantot šādu kombināciju:
vfs.fs.getaģenta vienumu kā galveno vienumu- atkarīgu zema līmeņa atklāšanas noteikumu un vienumu prototipus
full režīmā (pēc noklusējuma) failu sistēmas statistika tiek atgriezta tikai tad, ja Zabbix aģenta lietotājam ir caurskatīšanas atļauja katrā direktorijā piemontēšanas punkta ceļā; pretējā gadījumā attiecīgā failu sistēma tiek izlaista no vfs.fs.get izvades.
Lai šādas failu sistēmas tiktu atklātas un uzrādītas kā neatbalstītas, nevis klusi izlaistas, izmantojiet atklāšanu īsajā režīmā.
Konfigurācija
Galvenais vienums
Izveidojiet Zabbix aģenta vienumu, izmantojot šādu atslēgu:
vfs.fs.get

Iestatiet informācijas tipu uz "Text", ja iespējami lieli JSON dati.
Šī vienuma atgrieztie dati saturēs, piemēram, šādu informāciju par piemontētu failu sistēmu:
[
{
"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"
}
]
Atkarīgais LLD noteikums
Izveidojiet zema līmeņa atklāšanas noteikumu kā Atkarīgais vienums tipu:

Kā galveno vienumu atlasiet izveidoto vfs.fs.get vienumu.
Cilnē LLD macros definējiet pielāgotus makro ar atbilstošo JSONPath:

Cilnē Filters varat pievienot regulāro izteiksmi, kas filtrē tikai read-write failu sistēmas:

Atkarīgā vienuma prototips
Šajā LLD noteikumā izveidojiet vienuma prototipu ar tipu "Atkarīgais vienums".
Kā šī prototipa galveno vienumu atlasiet vfs.fs.get vienumu, ko izveidojām.

Ņemiet vērā pielāgoto makro izmantošanu vienuma prototipa nosaukumā un atslēgā:
- Nosaukums: Brīvā diska vieta uz {#FSNAME}, tips: {#FSTYPE}
- Atslēga: Free[{#FSNAME}]
Kā informācijas tipu izmantojiet:
- Numeric (unsigned) tādiem rādītājiem kā 'free', 'total', 'used'
- Numeric (float) tādiem rādītājiem kā 'pfree', 'pused' (procenti)
Vienuma prototipa cilnē Preprocessing atlasiet JSONPath un kā parametru izmantojiet šādu JSONPath izteiksmi:
$.[?(@.fsname=='{#FSNAME}')].bytes.free.first()

Kad atklāšana sākas, tiks izveidots viens vienums katram montēšanas punktam. Šis vienums atgriezīs brīvo baitu skaitu attiecīgajam montēšanas punktam.
Atklāšana īsajā režīmā
Kā alternatīvu atkarīgai atklāšanas kārtulai varat izveidot atklāšanas kārtulu ar Zabbix aģenta tipu un atslēgu:
vfs.fs.get[short]
Režīmā short vienums atgriež piemontēto failu sistēmu sarakstu bez diska vietas un inode statistikas, piemēram:
[
{
"fsname": "/",
"fstype": "ext4",
"options": "rw,noatime,errors=remount-ro"
},
{
"fsname": "/home",
"fstype": "xfs",
"options": "rw,relatime,attr2,inode64,noquota"
}
]
Tā kā aģents neveic vaicājumus pašām failu sistēmām, atklāšana neizraisa automātisku montēšanu un netiek aizkavēta nereaģējošu tīkla failu sistēmu dēļ.
To var izpildīt arī retāk nekā datu apkopošanu, piemēram, reizi stundā.
Cilnē LLD makrosi definējiet pielāgotus makrosus ar atbilstošo JSONPath, piemēram, {#FSNAME} - $.fsname un {#FSTYPE} - $.fstype.
Pēc tam izveidojiet Zabbix aģenta tipa vienuma prototipu, kas atgriež vienas atklātās failu sistēmas statistiku:
- Atslēga:
vfs.fs.get[full,{#FSNAME}] - Informācijas tips: Teksts
- Priekšapstrāde: JSONPath
$[0]
Izmantojiet šo vienuma prototipu kā galveno vienumu atkarīgiem vienumu prototipiem, piemēram, ar JSONPath $.bytes.free, lai iegūtu brīvo baitu skaitu.
Ja aģents nevar iegūt atklātās failu sistēmas statistiku, piemēram, nepietiekamu atļauju dēļ, vfs.fs.get[full,{#FSNAME}] atgriež tukšu masīvu, priekšapstrādes darbība $[0] neizdodas un vienums kļūst neatbalstīts. Tādējādi problēma ir redzama, nevis failu sistēma tiek klusi izlaista.
Ņemiet vērā, ka šī konfigurācija katrai atklātajai failu sistēmai veic atsevišķu aģenta pārbaudi.
Šo pieeju izmanto kopā ar Zabbix piegādātās OS veidnes, un tai nepieciešams Zabbix aģents 8.0 vai jaunāks.