Re: check_snmp_storage.pl Rollover
Posted: Thu Nov 29, 2018 10:48 am
Sure. Let us know how it went. We will keep the topic open for the time being.
Support for Nagios products and services
https://support.nagios.com/forum/
The link is from 2012 and therefor 6 years old, and applies to an earlier version of Windows Server.Deantwo wrote:It is indeed a windows server, which is why I was confused about it. It didn't seem like it would make sense to change it to the Nagios XI server, but you hadn't clearly said where to do it.lmiltchev wrote:It has to set on the remote server, however if your remote server is a Windows box, this option most likely won't work as expected. For more info, see this:One thing I still don't understand about this option you are talking about. Is this an option that I need to set on the Nagios XI's server or the server it is connecting to via SNMP?
https://serverfault.com/questions/43234 ... on-windows
I'll forward that to my server guy and see how that works first, then I'll try to update the plugin if the first first doesn't help.
I'll report back when done.
The fix has to come from Microsoft and if they do not have one, you can try this but is means reallocating the drive with larger allocation units which you probably do not want to do.The hrStorageTable which holds the information about memory and disk (storage systems) is part of the HOST-RESOURCES-MIB which was published around the year 1993 and revised in the year 2000. Back in 2000 there was no S-ATA standard, no huge disks nor popular RAID systems.
The way that MIB is implemented, a disks's size and utilization is calculated using three distinct readings. The table below lists some typical values that this table contains:
Property Value Unit OID
hrStorageAllocationUnits 4096 Bytes 1.3.6.1.2.1.25.2.3.1.4
hrStorageSize 60533503 AllocationUnits 1.3.6.1.2.1.25.2.3.1.5
hrStorageUsed 13423262 AllocationUnits 1.3.6.1.2.1.25.2.3.1.6
Any storage hardware would have a hrStorageAllocationUnits in bytes, as well as hrStorageSize and hrStorageUsed (in hrStorageAllocationUnits). In the above example, the values provided by the HOST-RESOURCES-MIB tells us that this storage device has a size of 60533503*4096 bytes which translates as a drive that can hold 247.945 GB.
That's not an issue so far, with the exception of one detail:
The hrStorageSize and hrStorageUsed values are reported as 32-bit Signed Integers, which imposes a maximum limit of 2147483647 (times the size of the allocation units).
This means that if your disk exceeds that size (8.79 TB with 4096 byte sectors), you will see negative values for size or used capacity. On systems with 1024 byte allocation units, the issue will arise with 2 TB disks.
One alternative that works on any operating system is increasing the size of the hrStorageAllocationUnits:
On Microsoft Windows this means formatting/partitioning the hard drive and using larger allocation units like 16 KB, 32 KB or 64 KB, because this allows the SNMP agent to report larger disk volumes.