目次
3ware製のRAIDコントローラのステータス監視方法。
管理ツール(3dm、3dm2)が使用出来る場合にはメールによる障害通知が可能だが、CLIツールのみが使用出来る環境下(ESXi等)のRAIDコントローラとアイレイの状態をZABBIXにて取得・監視する。
ZABBIXサーバから対象サーバに対してリモートログインを行い、tw_cliコマンドを実行してコントローラの状態を標準出力で表示させ、結果をZABBIXに取り込む方式となる。
このため、実装内容は以下となる。
| OS | CentOS 5.5 |
| ZABBIX | ZABBIX 1.8.15 |
| ZABBIX Agent | ZABBIX Agent 1.8.15 |
| OS | VMware ESXi 5.0 |
| RAID HBA | 3ware 9690SA-8I |
| 3ware 9650SE-4LPML |
| OS | CentOS 5.3 |
| RAID HBA | 3ware 9650SE-12ML |
| 3ware 8006-2LP |
SSHによるリモートログインを設定する。
#!/bin/sh # -------------------------- # 3ware RAID MgtCLI Script # -------------------------- # Version : 1.0 # date : 2012/11/20 export LANG=C export PATH=/bin:/sbin:/usr/bin:/usr/sbin:$PATH # Set SCRIPTDIR="/home/system/script/apl/zabbix/3ware" # Include if [ -z $1 ]; then echo "ERR : conf file not found" echo "USE : twcli.sh [CONF File] [COMMAND]" exit 1 fi if [ -z $2 ]; then echo "ERR : command not found" echo "USE : twcli.sh [CONF File] [COMMAND]" exit 1 fi if [ -f $1 ]; then source $1 else echo "ERR : conf file not found" exit 1 fi # Execute ssh -t -o StrictHostKeyChecking=no -l $SSHUSER -i $SSHKEY $IPADDR << EOF $TWCLI $2 EOF # EOF
IPADDR="【接続先サーバIP】" SSHUSER="【SSHログインユーザ】" SSHKEY="【SSH秘密鍵(絶対パス)】" TWCLI="【SSH接続先でのtw_cliコマンド】"
#!/bin/sh # --------------------------------- # ZABBIX 3ware RAID MgtCLI Script # --------------------------------- # Version : 1.0 # date : 2012/11/20 export LANG=C export PATH=/bin:/sbin:/usr/bin:/usr/sbin:$PATH ## ## Set ## SCRIPTDIR="/home/system/script/apl/zabbix/3ware" CONFDIR="/home/system/script/apl/zabbix/3ware/conf" TWCLISH=$SCRIPTDIR"/twcli.sh" ## ## Check ## if [ -z $1 ]; then echo "ERR : conf file not found" echo "USE : zabbix-twcli.sh [CONF File] [COMMAND]" exit 1 fi if [ -f $CONFDIR/$1 ]; then source $CONFDIR/$1 else echo "ERR : conf file not found" exit 1 fi ## ## Execute ## $TWCLISH $CONFDIR"/"$1 "$2" 2>/dev/null | grep -v '^$' # EOF