Monitoring “inodes-full”

Screenshot inodes full message Obviously, one of the first plugins that we implemented was designed to monitor volumes and aggregates and their respective usage (“how many bytes are still available”). This plugin is called Usage  and from the get-go it could monitor disk space usage in bytes as well as the number available (or used) inodes. In order to monitor inodes, two metrics are available:

  • inodes_relative
  • inodes_absolute

The first metric, _inodes_relative, _measures the percentage of used inodes relative to the maximum number of available inodes. This means that at 100%, the volume would be full. Here’s an example:$ ./ **check\_netapp\ Usage -H filer -o volume ‑m inodes\_relative -w 80 -c 95** NETAPP\_PRO USAGE OK - 5 volumes checked vol0: 19.6% vol1: 17.8% vol12: 17.8% vol2: 17.8% vol11: 17.0% | vol0=20%;80;95;0;100 vol1=18%;80;95;0;100 vol11=17%;80;95;0;100 vol12=18%;80;95;0;100 vol2=18%;80;95;0;100The metric inodes_absolute measures the absolute number of inodes and sends an alarm if a configurable number of used inodes has been exceeded.``` $ ./ Usage -H filer -o volume -m inodes_absolute -w 10000 -c 15000 NETAPP_PRO USAGE CRITICAL - 5 volumes checked, 1 critical and 0 warning vol0: 18480.0 (CRITICAL) vol1: 101.0 vol12: 101.0 vol2: 101.0 vol11: 96.0 | vol0=18480;10000;15000;0;94151 vol1=101;10000;15000;0;566 vol11=96;10000;15000;0;566 vol12=101;10000;15000;0;566 vol2=101;10000;15000;0;566

As you can see in this example, an absolute threshold does not make much sense, if multiple volumes with different sizes are being monitored. That's why it's also possible to set a relative threshold by setting a formula as threshold, despite it being an absolute metric. A formula is always preceded by an equals sign (=). Please note that the equals sign is part of the value and there should be a space between argument and equals sign. $ ./ Usage -H filer -o volume -m inodes_absolute -w =MAX/100*80 -c =MAX/100*95 NETAPP_PRO USAGE OK - 5 volumes checked vol0: 18480.0 vol1: 101.0 vol12: 101.0 vol2: 101.0 vol11: 96.0 | vol0=18480;75320.8;89443.45;0;94151 vol1=101;452.8;537.7;0;566 vol11=96;452.8;537.7;0;566 vol12=101;452.8;537.7;0;566 vol2=101;452.8;537.7;0;566

This way, we're getting an **absolute value in the performance data as well as in the output** and yet we can **set a relative threshold**. Using such formulas as thresholds, **free**\-inodes (instead of used-inodes) can also be checked - in case you would like to set free instead of used inodes as a threshold. $ ./ Usage -H filer -o volume -m inodes_absolute -w =MAX-20000 -c =MAX-15000 -I vol0 NETAPP_PRO USAGE OK - 1 volume checked 4 volumes skipped because of –include/–exclude settings. vol0: 18480.0 | vol0=18480;74151;79151;0;94151

Trending the Inode-Usage