Knowledge Search


×
 

[EX] How to check temperature, CPU/memory usage by SNMP OID

  [KB17526] Show Article Properties


Summary:
How to check temperature, CPU/memory usage by SNMP OID.  This explanation is written for a EX series device, but it also applies to other Junos devices.
Symptoms:
Using the SNMP OID's to get the current temperature, CPU and memory utilization.
Solution:
The related OBJ/OID are defined in the Juniper MIB file named mib-jnx-chassis.txt.
The following highlighted entries will be using in this article:

JnxOperatingEntry ::= SEQUENCE {
jnxOperatingContentsIndex Integer32,
jnxOperatingL1Index Integer32,
jnxOperatingL2Index Integer32,
jnxOperatingL3Index Integer32,
jnxOperatingDescr DisplayString,
jnxOperatingState INTEGER,
jnxOperatingTemp Gauge32,
jnxOperatingCPU Gauge32,
jnxOperatingISR Gauge32,
jnxOperatingDRAMSize Integer32,
jnxOperatingBuffer Gauge32,
jnxOperatingHeap Gauge32,
jnxOperatingUpTime TimeInterval,
jnxOperatingLastRestart TimeStamp,
jnxOperatingMemory Integer32,
jnxOperatingStateOrdered INTEGER,
jnxOperatingChassisId JnxChassisId,
jnxOperatingChassisDescr DisplayString,
jnxOperatingRestartTime DateAndTime
}

First, check the inventory of the chassis by "jnxOperatingDescr" or OID "1.3.6.1.4.1.2636.3.1.13.1.5".  Do this as follows:
From the EX system itself, using CLI command as below:
lab@EX8208-DC1> show snmp mib walk jnxOperatingDescr

From outside of the EX, for example, from a Solaris system,
-bash-3.00$ /usr/sfw/bin/snmpwalk -c public -v 2c 172.27.11.138 1.3.6.1.4.1.2636.3.1.13.1.5
Note: where the 172.27.11.138 is the IP address of the EX, and public is the SNMP community string.

Then, take the last 4 octets of where you want to measure and add them on to:

Temperature:
jnxOperatingTemp.x.x.x.x
or
1.3.6.1.4.1.2636.3.1.13.1.7.x.x.x.x

CPU usage:
jnxOperatingCPU.x.x.x.x
or
1.3.6.1.4.1.2636.3.1.13.1.8.x.x.x.x

Memory (buffer) usage:
jnxOperatingBuffer.x.x.x.x
or
1.3.6.1.4.1.2636.3.1.13.1.11.x.x.x.x



Below is a full sample showing how to retrieve temperature, and CPU/Memory usage of RE0 from a EX8208 system trough a Solaris system.
  • Check the inventory of the chassis and note down the last 4 octets which is "Router Engine 0"
-bash-3.00$ /usr/sfw/bin/snmpwalk -c public -v 2c 172.27.11.138 1.3.6.1.4.1.2636.3.1.13.1.5
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.1.1.0.0 = STRING: "backplane"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.2.1.0.0 = STRING: "PEM 0"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.2.2.0.0 = STRING: "PEM 1"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.2.3.0.0 = STRING: "PEM 2"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.2.4.0.0 = STRING: "PEM 3"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.2.5.0.0 = STRING: "PEM 4"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.2.6.0.0 = STRING: "PEM 5"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.4.1.1.0 = STRING: "Fan 1"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.4.1.2.0 = STRING: "Fan 2"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.4.1.3.0 = STRING: "Fan 3"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.4.1.4.0 = STRING: "Fan 4"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.4.1.5.0 = STRING: "Fan 5"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.4.1.6.0 = STRING: "Fan 6"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.4.2.1.0 = STRING: "Fan 7"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.4.2.2.0 = STRING: "Fan 8"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.4.2.3.0 = STRING: "Fan 9"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.4.2.4.0 = STRING: "Fan 10"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.4.2.5.0 = STRING: "Fan 11"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.4.2.6.0 = STRING: "Fan 12"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.7.1.0.0 = STRING: "FPC: EX8200-48T @ 0/*/*"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.7.2.0.0 = STRING: "FPC: EX8200-48F @ 1/*/*"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.7.3.0.0 = STRING: "FPC: EX8200-8XS @ 2/*/*"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.7.6.0.0 = STRING: "FPC: EX8200-48F @ 5/*/*"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.7.8.0.0 = STRING: "FPC: EX8200-8XS @ 7/*/*"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.8.1.1.0 = STRING: "PIC: 48x 10/100/1000 Base-T @ 0/0/*"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.8.2.1.0 = STRING: "PIC: 48x 100 Base-FX/1000 Base-X @ 1/0/*"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.8.3.1.0 = STRING: "PIC: 8x 10GE SFP+ @ 2/0/*"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.8.6.1.0 = STRING: "PIC: 48x 100 Base-FX/1000 Base-X @ 5/0/*"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.8.8.1.0 = STRING: "PIC: 8x 10GE SFP+ @ 7/0/*"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.9.1.0.0 = STRING: "Routing Engine 0"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.9.2.0.0 = STRING: "Routing Engine 1"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.12.1.0.0 = STRING: "CB 0"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.12.2.0.0 = STRING: "CB 1"
SNMPv2-SMI::enterprises.2636.3.1.13.1.5.12.3.0.0 = STRING: "CB 2"
  • Now you know 9.1.0.0 is refer to RE0, in this system.
  • Then, for RE0 real time temperature, enter the following command:
-bash-3.00$ /usr/sfw/bin/snmpwalk -c public -v 2c 172.27.11.138 1.3.6.1.4.1.2636.3.1.13.1.7.9.1.0.0
SNMPv2-SMI::enterprises.2636.3.1.13.1.7.9.1.0.0 = Gauge32: 29
  • For RE0 real time CPU utilization, enter the following command:
-bash-3.00$ /usr/sfw/bin/snmpwalk -c public -v 2c 172.27.11.138 1.3.6.1.4.1.2636.3.1.13.1.8.9.1.0.0
SNMPv2-SMI::enterprises.2636.3.1.13.1.8.9.1.0.0 = Gauge32: 5
  • For RE0 real time memory usage, enter the following command:
-bash-3.00$ /usr/sfw/bin/snmpwalk -c public -v 2c 172.27.11.138 1.3.6.1.4.1.2636.3.1.13.1.11.9.1.0.0
SNMPv2-SMI::enterprises.2636.3.1.13.1.11.9.1.0.0 = Gauge32: 19


Note: 1. The value for CPU/memory usage is in percentage. Zero means unavailable or inapplicable.
           2. You can use the CLI command "show chassis routing-engine" and "show chassis environment" to compare the value, but remember, the value is real time, so it may be different.

Related Links: