Nimble OS 2.3 - Enhancements to SNMP Management Information Base (MIB)

Blog Post created by bill on Jul 23, 2015

Simple Network Management Protocol (SNMP) is a workhorse protocol in IT. The latest version, ratified in 2004 contains a collection of Requests for Comments (RFCs), and brings configuration management, stronger security and additional features. SNMP V3 is also designated by the Internet Engineering Task Force (IETF) as a full Internet standard.


The basic structure of SNMP is simple: a Manager running on a central system communicates with Agents deployed on the systems and nodes across the Data-center or environment to gather information or make changes based on GETs and SETs. The protocol also includes the ability for Agents to generate alerts via TRAPS which are push alerts to the Manager to provide real time monitoring.





Nimble has long supported the SNMP V2 Agent that provided the manager with array level statistics. With the new version 2.3 we have expanded coverage to include support for the IF-MIB (detailed interface statistics) and expanded the Nimble supplied Management Information Base (MIB) to include per-volume statistics.


IF-MIB or . is a standard MIB that covers a wide range of Network Interface counters  such as interface speeds, MAC Addresses, Errors, Operation Status, and more. This allows tools to monitor Nimble interface status, check for any errors, and monitor packet counts over time. 


The updated Nimble MIB adds support for per-volume details in addition to the global statistics that had been available previously. What the per-volume details allow is for tracking of IO sent and received, latency, capacity and status for each individual volume. You can now create volume specific dashboards using using SNMP based tools. 


I like to use the iReasoning MIB Browser for quick tests or modeling SNMP data. Using the updated Nimble specific MIB with iReasoning we can extract Volumes names, those volumes reads, and how many connections:



In the above screen grab we see volName.0 is 4k-perf, volIoReads.0 represents the number life time IO's for the volume, and volNumConnections.0 has 0 current connections. 


With these new additions it is possible to use powerful open source  tools like Zabbix and Nagios or commercial products like BMC's TrueSight or IBM's Tivoli to collect and store these additional counters to have access to more detailed array data.


Given the large amount of data that it is now possible to obtain from the array via the SNMP V2 agent we recommend using tools like snmpget, snmpgetnext, and snmpbulkwalk in place of snmpwalk to collect the data.


The updated Nimble MIB is already on InfoSight's Downloads area and ready to be used with any array running 2.3.