Documentation
StorageUtilization-Check
Reports the filers storage utilisation.
Usage
$ check_netapp_pro.pl StorageUtilization -H <host> [...] [--help]
Description
This plugin retrieves several metrics about each aggregate and summarises them to provide an overview for the whole filer.
Each metrics value of each aggregates is returned as perf-data (label:
<metric-name>_<aggr-name>
).Each metrics sum of all aggregates is returned as perf-data (label:
<metric-name>_SUM>
).The task of this plugin is to collect data, which can be used later to analyze and plan your storage.
Examples of metrics collected by this plugin:
- Space used by A-SIS metafiles
- Total space used by aggregates metadata
- Space used by aggregate snapshots
- Total space allocated to volumes in the aggregate
You can get the whole list together with the data of your filer with --explore
.
Following an example of the --explore
output from a 7-mode filer using the
check_netapp
version of StorageUtilization:
Perfdata aggr0:
size-asis-used_aggr0 = 0B;;;0
size-metadata_aggr0 = 6963200B;;;0
size-snap-used_aggr0 = 20779008B;;;0;
size-volume-allocated_aggr0 = 853725184B;;;0
volume-count_aggr0 = 1;;;0
size-free_aggr0 = 42590208B;;;0;
size-used_aggr0 = 853942272B;;;0
size-nominal_aggr0 = 943718400B;;;0
size-volume-used_aggr0 = 267735040B;;;0;
Perfdata aggr1:
size-asis-used_aggr1 = 0B;;;0
size-metadata_aggr1 = 10776576B;;;0
size-snap-used_aggr1 = 45027328B;;;0;
size-volume-allocated_aggr1 = 1317203968B;;;0
volume-count_aggr1 = 3;;;0
size-free_aggr1 = 475553792B;;;0;
size-used_aggr1 = 1317511168B;;;0
size-nominal_aggr1 = 1887436800B;;;0
size-volume-used_aggr1 = 3465216B;;;0;
Perfdata all-aggregates (summarized):
size_ALL_used = 2237259776B;;;0;2831155200
size-image-backup-used_SUM = 0;;;0
size-bssm-nvlog-used_SUM = 0;;;0;
size-asis-used_SUM = 0B;;;0
size-metadata_SUM = 17739776B;;;0
size-snap-used_SUM = 65806336B;;;0;
size-volume-allocated_SUM = 2170929152B;;;0
volume-count_SUM = 4;;;0
size-free_SUM = 518144000B;;;0;
size-used_SUM = 2171453440B;;;0
size-nominal_SUM = 2831155200B;;;0
size-volume-used_SUM = 271200256B;;;0;
Note: In the check_netapp
-version size-used and size-snap-used are
summarised to size_ALL_used
. The MAX-value is set to the sum of all
aggregates size-nominal.
The output of the check_netapp_pro
-version differs in format and content:
$ ./check_netapp_pro.pl StorageUtilization -H filer --explore
Existing data for object 'aggregate'
Node: cluster1-01
Instance: aggr0 (uuid n/a)
aggregate-name = aggr0
aggregate-uuid = 10252bea-a009-44b5-8eda-740b31e9e927
files-total = 30384
files-used = 96
home-id = 4082368507
home-name = cluster1-01
nodes =
owner-id = 4082368507
owner-name = cluster1-01
percent-used-capacity = 95
raid-status = raid_dp, normal
raid-type = raid_dp
size-available = 45641728
size-total = 943718400
size-used = 898076672
state = online
total-reserved-space = 0
used-including-snapshot-reserve = 898076672
volume-footprints = 897802240
Instance: aggr3 (uuid n/a)
aggregate-name = aggr3
aggregate-uuid = 9d90167e-e080-4823-9a45-b586e5d847e3
files-total = 31142
files-used = 96
home-id = 4082368507
home-name = cluster1-01
nodes =
owner-id = 4082368507
owner-name = cluster1-01
percent-used-capacity = 1
raid-status = raid_dp, normal
raid-type = raid_dp
size-available = 2809659392
size-total = 2831155200
size-used = 21495808
state = online
total-reserved-space = 0
used-including-snapshot-reserve = 21495808
volume-footprints = 21184512
Explore done - now configure your nagios ...
Note for the `check_netapp_pro`-version: This check requires DataONTAP 8.2.x or
higher for some metrics.
Return Code (Nagios Status)
This plugin works as pure trending-plugin. It will always return UNKNOWN
or whatever you have set on the commandline (--return_code
).
Inspections, Troubleshooting
Consider using -v
for inspection, if you are not satisfied with the result.
Simple Examples
Checks the filer. Returns the sum of all aggregates per metric.
Includes aggregate aggr1 (but also aggr11 or some_aggr1). See next example for how to avoid that.
Includes only aggregate aggr1.
Includes aggregates aggr1 and aggr2
Same as above, includes aggregates aggr1 and aggr2 but needs just one -I
Includes only aggregates if their name starts with a.
Excludes any aggregate, which name ends with bak.
Returns OK instead of UNKNOWN. Again, this plugin does not check anything yet - it is just for trending.
Show results in Mega Bytes (MiB) instead of Bytes.
Advanced Examples
Hint: The input for advanced examples is shortend. Replace the '...' below with ‑H <your filers ip or host-name>
Shows a human-readable list of all metrics per aggregate. This may be used for further analyzing the details if you find something strange or interesting in your performance-graphs.
Monitor all aggregates, whose name starts with abc but does not end in bak.
abc => included
xabc => excluded
xxx => excluded
abcdef => included
abc.bak => excluded
abcd.bak => excluded
...
Please look into the advanced examples in the Usage-module for even more possibilities of the --include
and --exclude
switches.
Monitor aggr00, aggr01, ... aggr39 and aggr43, aggr44, ...aggr99
In other words: exclude aggr40, aggr41 and aggr42
Monitor all aggregates from finance and sales, but exclude the backups. This example assumes a naming-convention, where the aggregates name starts with the departments name and backups have the string bak at the end.
Monitor all aggregates of project_a - any aggregate, whose name contains the string project_a.
Monitor the project_a-aggregate (singular!) - this is the same and can be better done by using the -n switch (-n project_a) in order to save ressources.
Monitor all aggregates, but not if their name contains project_a