Robert Bolton presentation on creating custom SNMP OID's for use with Nagios.
The presentation was given during the Nagios World Conference North America held Sept 25-28th, 2012 in Saint Paul, MN. For more information on the conference (including photos and videos), visit: http://go.nagios.com/nwcna
Nagios Conference 2012 - Robert Bolton - Custom SNMP OID Creation
1. Custom SNMP OID Creation for System Monitoring
Robert V. Bolton
robert.bolton@utah.edu
2. About Robert V. Bolton
Systems Administrator
Center for High Performance Computing @ University of Utah
Mac Desktops, Linux Servers, HP Networking
Infrastructure Monitoring: Nagios and Cacti
Pyton Coder
Nagios Plugins and Cacti Scrtips
Student
Computer Engineering or Electrical Engineering
Expected Graduation = ?
Geek
Board Game Enthusiast
Amateur Radio Operator (KE7ZEA)
www.robertvbolton.com
2012 2
3. What we’re going to cover today.
Why Bother Creating Custom OIDs
OID Tree Structure
Python Module: snmp_passpersist
Real World Example: IOStat Statistics
2012 3
4. Why Bother Creating Custom OIDs
• SNMP is “simple” to use to gather system
statistics.
• Nagios Plugins work great with Nagios, but may
not provide data to other monitoring software.
• Example: NRPE Remote Execution.
• Offload Time Consuming System Checks.
• Provides Statistics for things not normally
provided by in the SNMP tree.
2012 4
6. OID Tree Structure Conitued
• Numbers are used to locate information
• Each number corresponds to a specific branch
of the OID tree.
• Management Information Base (MIB) files map
OID numbers to human readable format
• .1.3.6.1.4 is the top of the private branch
• Vendor OIDs
• Our Custom OIDs
2012
7. Python Module: snmp_passpersist
• Why Python…Because I know Python!
• I believe it is possible to create OIDs with Perl as
well if your prefer.
• Github: nagius/snmp_passpersist
• Requires Net-SNMP
• Installation is easy: Download source, python
setup.py install, and you’re done.
• Import: import snmp_passpersist as snmp
2012
10. Real World Example: Iostat
• Problem
• User: “The network is slow!”
• Support: To many users hammering on a file
system
• Solution Requirements
• Present Users with easy to read graphs of disk
statistics.
• Allow for Nagios monitoring of disk statistics
• Minimal Impact of monitoring because of Iostat
2012
11. Real World Example: Iostat
• Iostat
• First output from Iostat is garbage.
• Cron Job runs Iostat and stores the results in a
temp file
• Python Script iostat.py
• Reads results from temp file and uses
snmp_passpersist to update a custom branch of
OID tree.
• SNMP OID
• Data accessible to both Nagios and Cacti.
2012