Active IQ Unified Manager Discussions
Active IQ Unified Manager Discussions
Is there a way to graph inode usage in volumes?
Solved! See The Solution
Hi @CSCOTTENO
Capacity info is collected from OCUM and as far as I know inodes used (files) per volume is not tracked, which means Harvest can't pull it either. If you use Quotas then Harvest does pull 'files_used'. If your data is in qtrees then summing them up in Graphite/Grafana, grouped by volume, would give you the volume total file count. A query like this would do it:
groupByNode(netapp.capacity.$Group.$Cluster.svm.$SVM.vol.$Volume.qtree.*.files_used, 7, 'sum')
If your data is not in qtrees, you or you want to collect it natively, you can use a custom template to add in a counter that shows inodes used "wv_fsinfo_public_inos_used" which contains the current inode count for a volume. To do this follow these steps:
1) Create a new config template that includes this counter:
cat << EOF > /opt/netapp-harvest/template/cdot-volume-files.conf %poller = ( 'volume' => { counter_list => [ qw(vserver_name vserver_uuid node_name node_uuid parent_aggr read_data write_data read_ops write_ops other_ops total_ops read_latency write_latency other_latency avg_latency wv_fsinfo_public_inos_used )], graphite_leaf => 'svm.{vserver_name}.{node_name}.{parent_aggr}.{instance_name}', plugin => 'cdot-volume', plugin_options => {'svm' => 1, 'node' => 1, 'aggr' => 1}, enabled => '1' } ); EOF
2) Update your poller entry in /opt/netapp-harvest.conf to merge this config template on top of the default one by using the template variable like this:
[sdt-cdot1] hostname = 10.64.28.242 site = dev template = default,cdot-volume-files.conf
3) Restart your pollers
/opt/netapp-harvest/netapp-manager -restart
4) After 2 polling cycles (120 seconds) create a graph in Grafana for a metrics path like (replace my site/cluster/svm/volume names with your own, use wildcards, or use template variables in Grafana):
netapp.perf.dev.sdt-cdot1-dev.svm.sdt-vs-nas1.vol.wfa1131.wv_fsinfo_public_inos_used
In case your next question is to show % inodes used or total (potential) inode count for a volume I checked for counters for these but could not find any. To capture these you would be best to use the volume API (Harvest only knows how to use the counter manager API from the conf template) or a shell script of df -i and parse and send these in to Graphite directly.
Hope this helps!
Cheers,
Chris Madden
Solution Architect - 3rd Platform - Systems Engineering NetApp EMEA (and author of Harvest)
Blog: It all begins with data
If this post resolved your issue, please help others by selecting ACCEPT AS SOLUTION or adding a KUDO or both!
Hi @CSCOTTENO
Capacity info is collected from OCUM and as far as I know inodes used (files) per volume is not tracked, which means Harvest can't pull it either. If you use Quotas then Harvest does pull 'files_used'. If your data is in qtrees then summing them up in Graphite/Grafana, grouped by volume, would give you the volume total file count. A query like this would do it:
groupByNode(netapp.capacity.$Group.$Cluster.svm.$SVM.vol.$Volume.qtree.*.files_used, 7, 'sum')
If your data is not in qtrees, you or you want to collect it natively, you can use a custom template to add in a counter that shows inodes used "wv_fsinfo_public_inos_used" which contains the current inode count for a volume. To do this follow these steps:
1) Create a new config template that includes this counter:
cat << EOF > /opt/netapp-harvest/template/cdot-volume-files.conf %poller = ( 'volume' => { counter_list => [ qw(vserver_name vserver_uuid node_name node_uuid parent_aggr read_data write_data read_ops write_ops other_ops total_ops read_latency write_latency other_latency avg_latency wv_fsinfo_public_inos_used )], graphite_leaf => 'svm.{vserver_name}.{node_name}.{parent_aggr}.{instance_name}', plugin => 'cdot-volume', plugin_options => {'svm' => 1, 'node' => 1, 'aggr' => 1}, enabled => '1' } ); EOF
2) Update your poller entry in /opt/netapp-harvest.conf to merge this config template on top of the default one by using the template variable like this:
[sdt-cdot1] hostname = 10.64.28.242 site = dev template = default,cdot-volume-files.conf
3) Restart your pollers
/opt/netapp-harvest/netapp-manager -restart
4) After 2 polling cycles (120 seconds) create a graph in Grafana for a metrics path like (replace my site/cluster/svm/volume names with your own, use wildcards, or use template variables in Grafana):
netapp.perf.dev.sdt-cdot1-dev.svm.sdt-vs-nas1.vol.wfa1131.wv_fsinfo_public_inos_used
In case your next question is to show % inodes used or total (potential) inode count for a volume I checked for counters for these but could not find any. To capture these you would be best to use the volume API (Harvest only knows how to use the counter manager API from the conf template) or a shell script of df -i and parse and send these in to Graphite directly.
Hope this helps!
Cheers,
Chris Madden
Solution Architect - 3rd Platform - Systems Engineering NetApp EMEA (and author of Harvest)
Blog: It all begins with data
If this post resolved your issue, please help others by selecting ACCEPT AS SOLUTION or adding a KUDO or both!
Thanks! I never was notified you responded. Just stumbled across your reply now. I will give it a shot.
So is there a way to get % inodes used and left so we can alert on them in counters?
Great post
Thanks
Have tested this and it is working great in combination with Graphite. Now have an embeddible graph for management perusal. Thanks again!