Home Directory Addons Active Checks Check Lenovo DS2200

Search Exchange

Search All Sites

Nagios Live Webinars

Let our experts show you how Nagios can help your organization.

Contact Us

Phone: 1-888-NAGIOS-1
Email: sales@nagios.com

Login

Remember Me

Directory Tree

Check Lenovo DS2200

Rating
0 votes
Favoured:
0
Network Monitoring Software - Download Nagios XI
Log Management Software - Nagios Log Server - Download
Netflow Analysis Software - Nagios Network Analyzer - Download
This is a simple plugin to monitor Lenovo DS2200 storage using SSH protocol.
Nagios-Lenovo-DS2200-Check

This is a simple plugin to monitor Lenovo DS2200 storage using SSH protocol.

Overview

It was written in a hurry so I know the code is a bit messy. Maybe I'll fix it someday. For now, it works and that's enough.

Requirements

It has been tested on:

Python (2.7.6 && 3.9.5)
Lenovo ThinkSystem DS2200 - ver. GT280R008-04
Ubuntu 20.04
CentOS (7.0 && 8.0)

It's require PARAMIKO: pip install paramiko

How it works

Plugin connect to storage via ssh and check what you need. If all health elements of check will be OK (or N/A in some cases), the nagios response will be OK (GREEN). If there will be error or fail, plug in return CRITICAL alert. Only initiators check will return warning if some problem will found.
How to use it

check_lenovo_ds2200.py -H [host adress] -u [ssh user name] -p [ssh user password] -P [SSH port, its options, default is 22] -c [one form a list]

Check list: disks, psu, disk-groups, pools, init, sensors, controllers, enclosures

Example: check_lenovo_ds2200.py -H 100.100.0.10 -u monitor -p 'qwerty123' -P 666 -c disks

Nagios configuration

First edit your nagios commands.cfg file and add:

define command {
command_name check_lenovo_ds2200
command_line python $USER1$/check_lenovo_ds2200.py -H $HOSTADDRESS$ -u $ARG1$ -p $ARG2$ -P $ARG3$ -c $ARG4$
}

Then add checks in your host.cfg file. This is example of how to define one command check:

check_lenovo_ds2200.py -H 192.168.1.15 -u nagios -p 'p@ssw0rd' -P 22 -c sensors

define service {
use generic-service
hostgroup_name StorageServers
service_description Lenovo Sensors Health Check
check_command check_lenovo_ds2200!nagios!p@ssw0rd!22!sensors
check_interval 10
notifications_enabled 1
}