SNMP monitoring of disk utilization in SSP chassis
search cancel

SNMP monitoring of disk utilization in SSP chassis

book

Article ID: 281040

calendar_today

Updated On: 03-22-2024

Products

SSP-S410 PLATFORM SSP SSP-S210 PLATFORM SSP-S410

Issue/Introduction

You may observe that disk utilization stats of SSP chassis reported by a SNMP monitoring system don't match the values in CLI or SSP admin console. SNMP reported values are significantly less than the ones in the console. 

Environment

  • An SSP chassis with SNMP agent enabled
  • A SNMP monitoring service collecting stats from the SSP 

Cause

Disk utilization stats OIDs are described by standard SNMP MIB HOST-RESOURCES-MIB.

As stated in RFC-2790 each storage entry apart of type and description is represented by 3 values:

  • hrStorageAllocationUnits in Bytes
  • hrStorageSize in hrStorageAllocationUnits
  • hrStorageUsed in hrStorageAllocationUnits

That means hrStorageSize and hrStorageUsed do not always represent the real storage size and utilization in Bytes. Those values must be multiplied by unit size reported in hrStorageAllocationUnits to get a real storage stat in Bytes. 

Resolution

For example, an SSP chassis with 1647 GB DATA partition reports the following disk utilization in the CLI:

localhost(config-applications)# view-resources
Total Resources:
VCPUs  MEMORY     DISKS
64     320 GB     1647 GB

Available Resources:
VCPUs  MEMORY     DISKS
64     320 GB     1446 GB

SNMP poll return the same information as follows:

snmpwalk -v2c -c public 192.168.100.2 .1.3.6.1.2.1.25.2.3.1
iso.3.6.1.2.1.25.2.3.1.1.1 = INTEGER: 1
iso.3.6.1.2.1.25.2.3.1.1.3 = INTEGER: 3
iso.3.6.1.2.1.25.2.3.1.1.10 = INTEGER: 10
iso.3.6.1.2.1.25.2.3.1.1.66 = INTEGER: 66
iso.3.6.1.2.1.25.2.3.1.1.68 = INTEGER: 68
iso.3.6.1.2.1.25.2.3.1.3.1 = STRING: "Physical memory"
iso.3.6.1.2.1.25.2.3.1.3.3 = STRING: "Virtual memory"
iso.3.6.1.2.1.25.2.3.1.3.10 = STRING: "Swap space"
iso.3.6.1.2.1.25.2.3.1.3.66 = STRING: "Data"
iso.3.6.1.2.1.25.2.3.1.3.68 = STRING: "Encrypted data"
iso.3.6.1.2.1.25.2.3.1.4.1 = INTEGER: 1024
iso.3.6.1.2.1.25.2.3.1.4.3 = INTEGER: 1024
iso.3.6.1.2.1.25.2.3.1.4.10 = INTEGER: 1024
iso.3.6.1.2.1.25.2.3.1.4.66 = INTEGER: 4096
iso.3.6.1.2.1.25.2.3.1.4.68 = INTEGER: 4096
iso.3.6.1.2.1.25.2.3.1.5.1 = INTEGER: 394650772
iso.3.6.1.2.1.25.2.3.1.5.3 = INTEGER: 394650772
iso.3.6.1.2.1.25.2.3.1.5.10 = INTEGER: 0
iso.3.6.1.2.1.25.2.3.1.5.66 = INTEGER: 431737888
iso.3.6.1.2.1.25.2.3.1.5.68 = INTEGER: 14050097
iso.3.6.1.2.1.25.2.3.1.6.1 = INTEGER: 346648644
iso.3.6.1.2.1.25.2.3.1.6.3 = INTEGER: 346648644
iso.3.6.1.2.1.25.2.3.1.6.10 = INTEGER: 0
iso.3.6.1.2.1.25.2.3.1.6.66 = INTEGER: 52778879
iso.3.6.1.2.1.25.2.3.1.6.68 = INTEGER: 434411

DATA partition has index 66 in the storage table. Disk stats are represented by OIDs as follows:

  • iso.3.6.1.2.1.25.2.3.1.4.66 is hrStorageAllocationUnits in Bytes
  • iso.3.6.1.2.1.25.2.3.1.5.66 is hrStorageSize
  • iso.3.6.1.2.1.25.2.3.1.6.66 is hrStorageUsed

And the disk capacity and utilization are calculated as below:

Capacity = 431737888 * 4096 = 1768398389248 Bytes = 1646.95 GB

Utilization = 52778879 * 4096 = 216182288384 Bytes = 201.34 GB

Free = Capacity - Utilization = 1646.95 - 201.34 = 1445.61 GB 

Received numbers match the stats reported in the CLI.