Monitoring LSI SMC1078 RAID Controller in VMware ESXi 5.5.0

Log in through ssh service and take a look of a raid controller model

~ # esxcfg-scsidevs -l | egrep -i 'display name|vendor'
Display Name: Local LSILOGIC Enclosure Svc Dev (mpx.vmhba2:C0:T2:L0)
Vendor: LSILOGIC Model: SASX36 A.0 Revis: 9
Display Name: Local USB CD-ROM (mpx.vmhba32:C0:T0:L0)
Vendor: AMI Model: Virtual CDROM Revis: 1.00
Display Name: Local USB Direct-Access (mpx.vmhba32:C0:T0:L1)
Vendor: AMI Model: Virtual Floppy Revis: 1.00
Display Name: Local LSI Disk (naa.6003048004319400196ff10f1cd9e340)
Vendor: LSI Model: SMC1078 Revis: 1.40
Display Name: Local LSI Disk (naa.6003048004319400196ff17d2365327d)
Vendor: LSI Model: SMC1078 Revis: 1.40
Display Name: Local LSI Disk (naa.60030480043194001a1cfe07181f1b2b)
Vendor: LSI Model: SMC1078 Revis: 1.40
~ #

We need to download VMware SMIS Provider, go to LSI web site and download it.
Other useful tool is MegaClI, go to the same link and download MegaCLI 5.5 P1 .Copy files to remote server.

scp vmware-esx-provider-lsiprovider.vib root@172.16.0.3:/vmfs/volumes/machines/ISO

scp vmware-esx-MegaCli-8.07.07.vib root@172.16.0.3:/vmfs/volumes/machines/ISO

Installation process

esxcli software vib install --no-sig-check -v /vmfs/volumes/machines/ISO/vmware-esx-provider-lsiprovider.vib
esxcli software vib install --no-sig-check -v /vmfs/volumes/machines/ISO/vmware-esx-MegaCli-8.07.07.vib

Shutdown all virtual machines and reboot the esxi host, it will need about 30 minutes to update the storage information and the hard drives will appear in the healt status.
LSI SMC1078

Some MegaCLI useful commands

cd /opt/lsi/MegaCLI #
Controller information

./MegaCli -AdpAllInfo -aALL
./MegaCli -CfgDsply -aALL

Enclosure information

./MegaCli -EncInfo -aALL

Virtual drive information

./MegaCli -LDInfo -Lall -aALL

Physical drive information

./MegaCli -PDList -aALL

check raid for errors

./MegaCli -LDInfo -Lall -aALL -NoLog | egrep -i "fail|degrad|error"

how to monitor Xerox Phaser 7400DN printer with icinga

With this useful plugin you can monitor easily your network printer.Download and move it to directory with the other plugins.In my case the directory is /usr/lib/nagios/plugins/.Make sure the snmp is configured on the printer side.Now, lets’ test the plugin root@icinga:/usr/lib/nagios/plugins# ./check_snmp_printer -H 192.168.0.75 -x "MODEL"
"Xerox Phaser 7400DN;PS4.2.0,Net25.72.10.07,Eng0.11.2,OS6.26", Serial # XXXXXXXXX

Icinga-Printer
Now, we have to define host, check_command and services for our new object.
root@icinga:/usr/local/icinga/etc# vim objects/Default_collector/hosts.cfg
define host {
host_name Printer
address 192.168.0.75
max_check_attempts 1
check_interval 1
retry_interval 1
notification_interval 1
notification_options d,n
check_command check-host-alive
check_period 24x7
notification_period 24x7
contact_groups +admins
}

root@icinga:/usr/local/icinga/etc# vim objects/global/checkcommands.cfg

define command{
command_name check_consumables
command_line $USER1$/check_snmp_printer -H $ARG1$ -C public -x $ARG2$ -w 30 -c 15
}

define command{
command_name check_paper
command_line $USER1$/check_snmp_printer -H $ARG1$ -C public -x $ARG2$
}

root@icinga:/usr/local/icinga/etc# vim objects/Default_collector/services.cfg


define service{
use generic-service
host_name Printer
service_description Tray1 Paper Status
check_command check_paper!$HOSTADDRESS$!"TRAY 1"
check_period 24x7
notification_period 24x7
max_check_attempts 1
check_interval 1
retry_interval 1
notification_interval 1
event_handler_enabled 0
contact_groups +admins
}
define service{
use generic-service
host_name Printer
service_description Tray2 Paper Status
check_command check_paper!$HOSTADDRESS$!"TRAY 2"
check_period 24x7
notification_period 24x7
max_check_attempts 1
check_interval 1
retry_interval 1
notification_interval 1
event_handler_enabled 0
contact_groups +admins
}

define service{
use generic-service
host_name Printer
service_description Black Toner Status
check_command check_consumables!$HOSTADDRESS$!”CONSUM Black Toner”
check_period 24×7
notification_period 24×7
max_check_attempts 1
check_interval 1
retry_interval 1
notification_interval 1
event_handler_enabled 0
contact_groups +admins
}
define service{
use generic-service
host_name Printer
service_description Cyan Toner Status
check_command check_consumables!$HOSTADDRESS$!”CONSUM Cyan Toner”
check_period 24×7
notification_period 24×7
max_check_attempts 1
check_interval 1
retry_interval 1
notification_interval 1
event_handler_enabled 0
contact_groups +admins
}

define service{
use generic-service
host_name Printer
service_description Magenta Toner Status
check_command check_consumables!$HOSTADDRESS$!”CONSUM Magenta Toner”
check_period 24×7
notification_period 24×7
max_check_attempts 1
check_interval 1
retry_interval 1
notification_interval 1
event_handler_enabled 0
contact_groups +admins
}
define service{
use generic-service
host_name Printer
service_description Yellow Toner Status
check_command check_consumables!$HOSTADDRESS$!”CONSUM Yellow Toner”
check_period 24×7
notification_period 24×7
max_check_attempts 1
check_interval 1
retry_interval 1
notification_interval 1
event_handler_enabled 0
contact_groups +admins
}

define service{
use generic-service
host_name Printer
service_description Fuser Status
check_command check_consumables!$HOSTADDRESS$!”CONSUM Fuser”
check_period 24×7
notification_period 24×7
max_check_attempts 1
check_interval 1
retry_interval 1
notification_interval 1
event_handler_enabled 0
contact_groups +admins
}
define service{
use generic-service
host_name Printer
service_description Waste Status
check_command check_consumables!$HOSTADDRESS$!”CONSUM Waste”
check_period 24×7
notification_period 24×7
max_check_attempts 1
check_interval 1
retry_interval 1
notification_interval 1
event_handler_enabled 0
contact_groups +admins
}

define service{
use generic-service
host_name Printer
service_description Cyan Imaging
check_command check_consumables!$HOSTADDRESS$!”CONSUM Cyan Imaging”
check_period 24×7
notification_period 24×7
max_check_attempts 1
check_interval 1
retry_interval 1
notification_interval 1
event_handler_enabled 0
contact_groups +admins
}
define service{
use generic-service
host_name Printer
service_description Magenta Imaging
check_command check_consumables!$HOSTADDRESS$!”CONSUM Magenta Imaging”
check_period 24×7
notification_period 24×7
max_check_attempts 1
check_interval 1
retry_interval 1
notification_interval 1
event_handler_enabled 0
contact_groups +admins
}

define service{
use generic-service
host_name Printer
service_description Yellow Imaging
check_command check_consumables!$HOSTADDRESS$!”CONSUM Yellow Imaging”
check_period 24×7
notification_period 24×7
max_check_attempts 1
check_interval 1
retry_interval 1
notification_interval 1
event_handler_enabled 0
contact_groups +admins
}
define service{
use generic-service
host_name Printer
service_description Black Imaging
check_command check_consumables!$HOSTADDRESS$!”CONSUM Black Imaging”
check_period 24×7
notification_period 24×7
max_check_attempts 1
check_interval 1
retry_interval 1
notification_interval 1
event_handler_enabled 0
contact_groups +admins
}

define service{
use generic-service
host_name Printer
service_description Transfer Belt
check_command check_consumables!$HOSTADDRESS$!”CONSUM Transfer Belt”
check_period 24×7
notification_period 24×7
max_check_attempts 1
check_interval 1
retry_interval 1
notification_interval 1
event_handler_enabled 0
contact_groups +admins
}

root@icinga:/usr/lib/nagios/plugins# service icinga reload
Running configuration check...OK
Reloading icinga configuration...done