IBM

International Business Machines (IBM), is a global technology company that provides hardware, software, cloud-based services and cognitive computing.

Available solutions




This template is for Zabbix version: 6.2
Also available for: 6.0 5.4 5.0

Source: https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/server/ibm_imm_snmp?at=release/6.2

IBM IMM SNMP

Overview

For Zabbix version: 6.2 and higher
for IMM2 and IMM1 IBM serverX hardware

This template was tested on:

  • IBM System x3550 M2 with IMM1
  • IBM x3250M3 with IMM1
  • IBM x3550M5 with IMM2
  • System x3550 M3 with IMM1

Setup

Refer to the vendor documentation.

Zabbix configuration

No specific Zabbix configuration is required.

Macros used

Name Description Default
{$DISK_OK_STATUS}

-

Normal
{$FAN_OK_STATUS}

-

Normal
{$HEALTH_CRIT_STATUS}

-

2
{$HEALTH_DISASTER_STATUS}

-

0
{$HEALTH_WARN_STATUS}

-

4
{$ICMP_LOSS_WARN}

-

20
{$ICMP_RESPONSE_TIME_WARN}

-

0.15
{$PSU_OK_STATUS}

-

Normal
{$SNMP.TIMEOUT}

-

5m
{$TEMP_CRIT:"Ambient"}

-

35
{$TEMP_CRIT_LOW}

-

5
{$TEMP_CRIT}

-

60
{$TEMP_WARN:"Ambient"}

-

30
{$TEMP_WARN}

-

50

Template links

There are no template links in this template.

Discovery rules

Name Description Type Key and additional info
FAN Discovery

IMM-MIB::fanDescr

SNMP fan.discovery
Physical Disk Discovery

-

SNMP physicalDisk.discovery
PSU Discovery

IMM-MIB::powerFruName

SNMP psu.discovery
Temperature Discovery

Scanning IMM-MIB::tempTable

SNMP tempDescr.discovery

Filter:

AND_OR

- {#SNMPVALUE} MATCHES_REGEX (DIMM|PSU|PCH|RAID|RR|PCI).*

Temperature Discovery Ambient

Scanning IMM-MIB::tempTable with Ambient filter

SNMP tempDescr.discovery.ambient

Filter:

AND_OR

- {#SNMPVALUE} MATCHES_REGEX Ambient.*

Temperature Discovery CPU

Scanning IMM-MIB::tempTable with CPU filter

SNMP tempDescr.discovery.cpu

Filter:

AND_OR

- {#SNMPVALUE} MATCHES_REGEX CPU [0-9]* Temp

Items collected

Group Name Description Type Key and additional info
Fans {#FAN_DESCR}: Fan status

MIB: IMM-MIB

A description of the fan component status.

SNMP sensor.fan.status[fanHealthStatus.{#SNMPINDEX}]
Fans {#FAN_DESCR}: Fan speed, %

MIB: IMM-MIB

Fan speed expressed in percent(%) of maximum RPM.

An octet string expressed as 'ddd% of maximum' where:d is a decimal digit or blank space for a leading zero.

If the fan is determined not to be running or the fan speed cannot be determined, the string will indicate 'Offline'.

SNMP sensor.fan.speed.percentage[fanSpeed.{#SNMPINDEX}]

Preprocessing:

- REGEX: (\d{1,3}) *%( of maximum)? \1

General SNMP traps (fallback)

The item is used to collect all SNMP traps unmatched by other snmptrap items

SNMP_TRAP snmptrap.fallback
General System location

MIB: SNMPv2-MIB

The physical location of this node (e.g., telephone closet, 3rd floor'). If the location is unknown, the value is the zero-length string.</p> |SNMP |system.location[sysLocation.0]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT:12h`

General System contact details

MIB: SNMPv2-MIB

The textual identification of the contact person for this managed node, together with information on how to contact this person. If no contact information is known, the value is the zero-length string.

SNMP system.contact[sysContact.0]

Preprocessing:

- DISCARD_UNCHANGED_HEARTBEAT: 12h

General System object ID

MIB: SNMPv2-MIB

The vendor's authoritative identification of the network management subsystem contained in the entity. This value is allocated within the SMI enterprises subtree (1.3.6.1.4.1) and provides an easy and unambiguous means for determiningwhat kind of box' is being managed. For example, if vendorFlintstones, Inc.' was assigned the subtree1.3.6.1.4.1.4242, it could assign the identifier 1.3.6.1.4.1.4242.1.1 to its Fred Router'.</p> |SNMP |system.objectid[sysObjectID.0]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT:12h`

General System name

MIB: SNMPv2-MIB

An administratively-assigned name for this managed node.By convention, this is the node's fully-qualified domain name. If the name is unknown, the value is the zero-length string.

SNMP system.name

Preprocessing:

- DISCARD_UNCHANGED_HEARTBEAT: 12h

General System description

MIB: SNMPv2-MIB

A textual description of the entity. This value should

include the full name and version identification of the system's hardware type, software operating-system, and

networking software.

SNMP system.descr[sysDescr.0]

Preprocessing:

- DISCARD_UNCHANGED_HEARTBEAT: 12h

Inventory Hardware model name

MIB: IMM-MIB

SNMP system.hw.model

Preprocessing:

- DISCARD_UNCHANGED_HEARTBEAT: 1d

Inventory Hardware serial number

MIB: IMM-MIB

Machine serial number VPD information

SNMP system.hw.serialnumber

Preprocessing:

- DISCARD_UNCHANGED_HEARTBEAT: 1d

Physical disks {#SNMPINDEX}: Physical disk status

MIB: IMM-MIB

SNMP system.hw.physicaldisk.status[diskHealthStatus.{#SNMPINDEX}]
Physical disks {#SNMPINDEX}: Physical disk part number

MIB: IMM-MIB

disk module FRU name.

SNMP system.hw.physicaldisk.part_number[diskFruName.{#SNMPINDEX}]
Power supply {#PSU_DESCR}: Power supply status

MIB: IMM-MIB

A description of the power module status.

SNMP sensor.psu.status[powerHealthStatus.{#SNMPINDEX}]
Status Overall system health status

MIB: IMM-MIB

Indicates status of system health for the system in which the IMM resides. Value of 'nonRecoverable' indicates a severe error has occurred and the system may not be functioning. A value of 'critical' indicates that a error has occurred but the system is currently functioning properly. A value of 'nonCritical' indicates that a condition has occurred that may change the state of the system in the future but currently the system is working properly. A value of 'normal' indicates that the system is operating normally.

SNMP system.status[systemHealthStat.0]
Status Uptime

MIB: SNMPv2-MIB

The time (in hundredths of a second) since the network management portion of the system was last re-initialized.

SNMP system.uptime[sysUpTime.0]

Preprocessing:

- MULTIPLIER: 0.01

Status SNMP agent availability

Availability of SNMP checks on the host. The value of this item corresponds to availability icons in the host list.

Possible value:

0 - not available

1 - available

2 - unknown

INTERNAL zabbix[host,snmp,available]
Status ICMP ping

-

SIMPLE icmpping
Status ICMP loss

-

SIMPLE icmppingloss
Status ICMP response time

-

SIMPLE icmppingsec
Temperature {#SNMPVALUE}: Temperature

MIB: IMM-MIB

Temperature readings of testpoint: {#SNMPVALUE}

SNMP sensor.temp.value[tempReading.{#SNMPINDEX}]
Temperature Ambient: Temperature

MIB: IMM-MIB

Temperature readings of testpoint: Ambient

SNMP sensor.temp.value[tempReading.Ambient.{#SNMPINDEX}]
Temperature CPU: Temperature

MIB: IMM-MIB

Temperature readings of testpoint: CPU

SNMP sensor.temp.value[tempReading.CPU.{#SNMPINDEX}]

Triggers

Name Description Expression Severity Dependencies and additional info
{#FAN_DESCR}: Fan is not in normal state

Please check the fan unit

count(/IBM IMM SNMP/sensor.fan.status[fanHealthStatus.{#SNMPINDEX}],#1,"ne","{$FAN_OK_STATUS}")=1 INFO
System name has changed

System name has changed. Ack to close.

last(/IBM IMM SNMP/system.name,#1)<>last(/IBM IMM SNMP/system.name,#2) and length(last(/IBM IMM SNMP/system.name))>0 INFO

Manual close: YES

Device has been replaced

Device serial number has changed. Ack to close

last(/IBM IMM SNMP/system.hw.serialnumber,#1)<>last(/IBM IMM SNMP/system.hw.serialnumber,#2) and length(last(/IBM IMM SNMP/system.hw.serialnumber))>0 INFO

Manual close: YES

{#SNMPINDEX}: Physical disk is not in OK state

Please check physical disk for warnings or errors

count(/IBM IMM SNMP/system.hw.physicaldisk.status[diskHealthStatus.{#SNMPINDEX}],#1,"ne","{$DISK_OK_STATUS}")=1 WARNING
{#PSU_DESCR}: Power supply is not in normal state

Please check the power supply unit for errors

count(/IBM IMM SNMP/sensor.psu.status[powerHealthStatus.{#SNMPINDEX}],#1,"ne","{$PSU_OK_STATUS}")=1 INFO
System is in unrecoverable state!

Please check the device for faults

count(/IBM IMM SNMP/system.status[systemHealthStat.0],#1,"eq","{$HEALTH_DISASTER_STATUS}")=1 HIGH
System status is in critical state

Please check the device for errors

count(/IBM IMM SNMP/system.status[systemHealthStat.0],#1,"eq","{$HEALTH_CRIT_STATUS}")=1 HIGH

Depends on:

- System is in unrecoverable state!

System status is in warning state

Please check the device for warnings

count(/IBM IMM SNMP/system.status[systemHealthStat.0],#1,"eq","{$HEALTH_WARN_STATUS}")=1 WARNING

Depends on:

- System is in unrecoverable state!

- System status is in critical state

has been restarted

Uptime is less than 10 minutes.

last(/IBM IMM SNMP/system.uptime[sysUpTime.0])<10m WARNING

Manual close: YES

Depends on:

- No SNMP data collection

No SNMP data collection

SNMP is not available for polling. Please check device connectivity and SNMP settings.

max(/IBM IMM SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0 WARNING

Depends on:

- Unavailable by ICMP ping

Unavailable by ICMP ping

Last three attempts returned timeout. Please check device connectivity.

max(/IBM IMM SNMP/icmpping,#3)=0 HIGH
High ICMP ping loss

-

min(/IBM IMM SNMP/icmppingloss,5m)>{$ICMP_LOSS_WARN} and min(/IBM IMM SNMP/icmppingloss,5m)<100 WARNING

Depends on:

- Unavailable by ICMP ping

High ICMP ping response time

-

avg(/IBM IMM SNMP/icmppingsec,5m)>{$ICMP_RESPONSE_TIME_WARN} WARNING

Depends on:

- High ICMP ping loss

- Unavailable by ICMP ping

{#SNMPVALUE}: Temperature is above warning threshold

This trigger uses temperature sensor values as well as temperature sensor status if available

avg(/IBM IMM SNMP/sensor.temp.value[tempReading.{#SNMPINDEX}],5m)>{$TEMP_WARN:"{#SNMPVALUE}"}

Recovery expression:

max(/IBM IMM SNMP/sensor.temp.value[tempReading.{#SNMPINDEX}],5m)<{$TEMP_WARN:"{#SNMPVALUE}"}-3
WARNING

Depends on:

- {#SNMPVALUE}: Temperature is above critical threshold

{#SNMPVALUE}: Temperature is above critical threshold

This trigger uses temperature sensor values as well as temperature sensor status if available

avg(/IBM IMM SNMP/sensor.temp.value[tempReading.{#SNMPINDEX}],5m)>{$TEMP_CRIT:"{#SNMPVALUE}"}

Recovery expression:

max(/IBM IMM SNMP/sensor.temp.value[tempReading.{#SNMPINDEX}],5m)<{$TEMP_CRIT:"{#SNMPVALUE}"}-3
HIGH
{#SNMPVALUE}: Temperature is too low

-

avg(/IBM IMM SNMP/sensor.temp.value[tempReading.{#SNMPINDEX}],5m)<{$TEMP_CRIT_LOW:"{#SNMPVALUE}"}

Recovery expression:

min(/IBM IMM SNMP/sensor.temp.value[tempReading.{#SNMPINDEX}],5m)>{$TEMP_CRIT_LOW:"{#SNMPVALUE}"}+3
AVERAGE
Ambient: Temperature is above warning threshold

This trigger uses temperature sensor values as well as temperature sensor status if available

avg(/IBM IMM SNMP/sensor.temp.value[tempReading.Ambient.{#SNMPINDEX}],5m)>{$TEMP_WARN:"Ambient"}

Recovery expression:

max(/IBM IMM SNMP/sensor.temp.value[tempReading.Ambient.{#SNMPINDEX}],5m)<{$TEMP_WARN:"Ambient"}-3
WARNING

Depends on:

- Ambient: Temperature is above critical threshold

Ambient: Temperature is above critical threshold

This trigger uses temperature sensor values as well as temperature sensor status if available

avg(/IBM IMM SNMP/sensor.temp.value[tempReading.Ambient.{#SNMPINDEX}],5m)>{$TEMP_CRIT:"Ambient"}

Recovery expression:

max(/IBM IMM SNMP/sensor.temp.value[tempReading.Ambient.{#SNMPINDEX}],5m)<{$TEMP_CRIT:"Ambient"}-3
HIGH
Ambient: Temperature is too low

-

avg(/IBM IMM SNMP/sensor.temp.value[tempReading.Ambient.{#SNMPINDEX}],5m)<{$TEMP_CRIT_LOW:"Ambient"}

Recovery expression:

min(/IBM IMM SNMP/sensor.temp.value[tempReading.Ambient.{#SNMPINDEX}],5m)>{$TEMP_CRIT_LOW:"Ambient"}+3
AVERAGE
CPU: Temperature is above warning threshold

This trigger uses temperature sensor values as well as temperature sensor status if available

avg(/IBM IMM SNMP/sensor.temp.value[tempReading.CPU.{#SNMPINDEX}],5m)>{$TEMP_WARN:"CPU"}

Recovery expression:

max(/IBM IMM SNMP/sensor.temp.value[tempReading.CPU.{#SNMPINDEX}],5m)<{$TEMP_WARN:"CPU"}-3
WARNING

Depends on:

- CPU: Temperature is above critical threshold

CPU: Temperature is above critical threshold

This trigger uses temperature sensor values as well as temperature sensor status if available

avg(/IBM IMM SNMP/sensor.temp.value[tempReading.CPU.{#SNMPINDEX}],5m)>{$TEMP_CRIT:"CPU"}

Recovery expression:

max(/IBM IMM SNMP/sensor.temp.value[tempReading.CPU.{#SNMPINDEX}],5m)<{$TEMP_CRIT:"CPU"}-3
HIGH
CPU: Temperature is too low

-

avg(/IBM IMM SNMP/sensor.temp.value[tempReading.CPU.{#SNMPINDEX}],5m)<{$TEMP_CRIT_LOW:"CPU"}

Recovery expression:

min(/IBM IMM SNMP/sensor.temp.value[tempReading.CPU.{#SNMPINDEX}],5m)>{$TEMP_CRIT_LOW:"CPU"}+3
AVERAGE

Feedback

Please report any issues with the template at https://support.zabbix.com

Known Issues

  • Description: Some IMMs (IMM1) do not return disks

    • Version: IMM1
    • Device: IBM x3250M3
  • Description: Some IMMs (IMM1) do not return fan status: fanHealthStatus

    • Version: IMM1
    • Device: IBM x3250M3
  • Description: IMM1 servers (M2, M3 generations) sysObjectID is NET-SNMP-MIB::netSnmpAgentOIDs.10

    • Version: IMM1
    • Device: IMM1 servers (M2,M3 generations)
  • Description: IMM1 servers (M2, M3 generations) only Ambient temperature sensor available

    • Version: IMM1
    • Device: IMM1 servers (M2,M3 generations)

Articles and documentation

+ Propose new article

Не нашли то, что искали?