Source: https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/net/juniper_snmp
Juniper SNMP
Overview
For Zabbix version: 5.2 and higher
Setup
Refer to the vendor documentation.
Zabbix configuration
No specific Zabbix configuration is required.
Macros used
Name | Description | Default |
---|---|---|
{$CPU.UTIL.CRIT} | - |
90 |
{$FAN_CRIT_STATUS} | - |
6 |
{$HEALTH_CRIT_STATUS} | - |
3 |
{$MEMORY.UTIL.MAX} | - |
90 |
{$PSU_CRIT_STATUS} | - |
6 |
{$TEMP_CRIT:"Routing Engine"} | - |
80 |
{$TEMP_CRIT_LOW} | - |
5 |
{$TEMP_CRIT} | - |
60 |
{$TEMP_WARN:"Routing Engine"} | - |
70 |
{$TEMP_WARN} | - |
50 |
Template links
Name |
---|
EtherLike-MIB SNMP |
Generic SNMP |
Interfaces SNMP |
Discovery rules
Name | Description | Type | Key and additional info |
---|---|---|---|
CPU and Memory Discovery | Scanning JUNIPER-MIB::jnxOperatingTable for CPU and Memory http://kb.juniper.net/InfoCenter/index?page=content&id=KB17526&actp=search. Filter limits results to Routing Engines |
SNMP | jnxOperatingTable.discovery Filter: AND_OR- A: {#SNMPVALUE} MATCHES_REGEX |
Temperature discovery | Scanning JUNIPER-MIB::jnxOperatingTable for Temperature http://kb.juniper.net/InfoCenter/index?page=content&id=KB17526&actp=search. Filter limits results to Routing Engines |
SNMP | jnxOperatingTable.discovery.temp Filter: AND_OR- A: {#SNMPVALUE} MATCHES_REGEX |
FAN Discovery | Scanning JUNIPER-MIB::jnxOperatingTable for Fans |
SNMP | jnxOperatingTable.discovery.fans |
PSU Discovery | Scanning JUNIPER-MIB::jnxOperatingTable for Power Supplies |
SNMP | jnxOperatingTable.discovery.psu |
Items collected
Group | Name | Description | Type | Key and additional info |
---|---|---|---|---|
CPU | {#SNMPVALUE}: CPU utilization | MIB: JUNIPER-MIB The CPU utilization in percentage of this subject. Zero if unavailable or inapplicable. |
SNMP | system.cpu.util[jnxOperatingCPU.{#SNMPINDEX}] |
Fans | {#SNMPVALUE}: Fan status | MIB: JUNIPER-MIB |
SNMP | sensor.fan.status[jnxOperatingState.4.{#SNMPINDEX}] |
Inventory | Hardware serial number | MIB: JUNIPER-MIB The serial number of this subject, blank if unknown or unavailable. |
SNMP | system.hw.serialnumber Preprocessing: - DISCARD_UNCHANGED_HEARTBEAT: |
Inventory | Hardware model name | MIB: JUNIPER-MIB The name, model, or detailed description of the box,indicating which product the box is about, for example 'M40'. |
SNMP | system.hw.model Preprocessing: - DISCARD_UNCHANGED_HEARTBEAT: |
Inventory | Operating system | MIB: SNMPv2-MIB |
SNMP | system.sw.os[sysDescr.0] Preprocessing: - REGEX: - DISCARD_UNCHANGED_HEARTBEAT: |
Memory | {#SNMPVALUE}: Memory utilization | MIB: JUNIPER-MIB The buffer pool utilization in percentage of this subject. Zero if unavailable or inapplicable. |
SNMP | vm.memory.util[jnxOperatingBuffer.{#SNMPINDEX}] |
Power_supply | {#SNMPVALUE}: Power supply status | MIB: JUNIPER-MIB If they are using DC power supplies there is a known issue on PR 1064039 where the fans do not detect the temperature correctly and fail to cool the power supply causing the shutdown to occur. This is fixed in Junos 13.3R7 https://forums.juniper.net/t5/Routing/PEM-0-not-OK-MX104/m-p/289644#M14122 |
SNMP | sensor.psu.status[jnxOperatingState.2.{#SNMPINDEX}] |
Status | Overall system health status | MIB: JUNIPER-ALARM-MIB The red alarm indication on the craft interface panel. The red alarm is on when there is some system failure or power supply failure or the system is experiencing a hardware malfunction or some threshold is being exceeded. This red alarm state could be turned off by the ACO/LT (Alarm Cut Off / Lamp Test) button on the front panel module. |
SNMP | system.status[jnxRedAlarmState.0] |
Temperature | {#SENSOR_INFO}: Temperature | MIB: JUNIPER-MIB The temperature in Celsius (degrees C) of {#SENSOR_INFO} |
SNMP | sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}] |
Triggers
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
{#SNMPVALUE}: High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m) | CPU utilization is too high. The system might be slow to respond. |
{TEMPLATE_NAME:system.cpu.util[jnxOperatingCPU.{#SNMPINDEX}].min(5m)}>{$CPU.UTIL.CRIT} |
WARNING | |
{#SNMPVALUE}: Fan is in critical state | Please check the fan unit |
{TEMPLATE_NAME:sensor.fan.status[jnxOperatingState.4.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1 |
AVERAGE | |
Device has been replaced (new serial number received) | Device serial number has changed. Ack to close |
{TEMPLATE_NAME:system.hw.serialnumber.diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber.strlen()}>0 |
INFO | Manual close: YES |
Operating system description has changed | Operating system description has changed. Possible reasons that system has been updated or replaced. Ack to close. |
{TEMPLATE_NAME:system.sw.os[sysDescr.0].diff()}=1 and {TEMPLATE_NAME:system.sw.os[sysDescr.0].strlen()}>0 |
INFO | Manual close: YES |
{#SNMPVALUE}: High memory utilization ( >{$MEMORY.UTIL.MAX}% for 5m) | The system is running out of free memory. |
{TEMPLATE_NAME:vm.memory.util[jnxOperatingBuffer.{#SNMPINDEX}].min(5m)}>{$MEMORY.UTIL.MAX} |
AVERAGE | |
{#SNMPVALUE}: Power supply is in critical state | Please check the power supply unit for errors |
{TEMPLATE_NAME:sensor.psu.status[jnxOperatingState.2.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1 |
AVERAGE | |
System status is in critical state | Please check the device for errors |
{TEMPLATE_NAME:system.status[jnxRedAlarmState.0].count(#1,{$HEALTH_CRIT_STATUS},eq)}=1 |
HIGH | |
{#SENSOR_INFO}: Temperature is above warning threshold: >{$TEMP_WARN:""} | This trigger uses temperature sensor values as well as temperature sensor status if available |
{TEMPLATE_NAME:sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""} Recovery expression: {TEMPLATE_NAME:sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3 |
WARNING | Depends on: - {#SENSOR_INFO}: Temperature is above critical threshold: >{$TEMP_CRIT:""} |
{#SENSOR_INFO}: Temperature is above critical threshold: >{$TEMP_CRIT:""} | This trigger uses temperature sensor values as well as temperature sensor status if available |
{TEMPLATE_NAME:sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""} Recovery expression: {TEMPLATE_NAME:sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3 |
HIGH | |
{#SENSOR_INFO}: Temperature is too low: <{$TEMP_CRIT_LOW:""} | - |
{TEMPLATE_NAME:sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""} Recovery expression: {TEMPLATE_NAME:sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3 |
AVERAGE |
Feedback
Please report any issues with the template at https://support.zabbix.com