• 追加された行はこの色です。
  • 削除された行はこの色です。
目次~
#contents
*概要 [#b0990e59]
シェル・スクリプトを使用した方式は「3ware製RAIDコントローラの監視」として公開しているが、ZABBIXがSSH経由での監視機能を提供していることに気がついたので、こちらの方式も試してみた。~
結論からすると、注意点は幾つかあるもののこちらの方式の方が良さそうである。~

*前提 [#h11a56e4]
**ZABBIX側 [#rda4c9b8]
**ZABBIXサーバ [#rda4c9b8]
ZABBIXのSSH監視を行うには、libssh2が必要となる。~
また、SSH監視を鍵認証で行うには、ZABBIXサーバ内の所定位置に鍵ファイルの設置が必要となる。~

**監視対象側 [#t589816e]
**監視対象 [#t589816e]
tw_cli経由で情報を取得するため、tw_cliは必須となる。~
また、tw_cliを実行するにはroot権限が必要となるため、ZABBIXからSSH接続に使用するユーザが実行出来るようにするためのsudoの設定も必要となる。~
更に、当然ながら鍵認証をするためには、SSH鍵の交換をしておく必要がある。~
当然ながら鍵認証をするためには、SSH鍵の交換をしておく必要がある。~

**監視設定 [#v2c8e290]
監視設定をテンプレート化するためには、ホストマクロを多用する必要がある。~

*設定 [#nbc47f85]
**ZABBIXサーバ [#r3ecfe76]
zabbix_server.confのSSHKeyLocation行を有効化し、SSH鍵を指定したパスに配置する必要がある。~

-zabbix_server.conf
 SSHKeyLocation=/etc/zabbix/sshkeys

**監視対象 [#g16fdfac]
SSH鍵交換については割愛。~
~
一般ユーザがtw_cliを実行できるようにするため、sudoの設定を行う。

-zabbixユーザに権限を付与する例
 # visudo
 
 【末尾に追加】zabbix ALL=(root) NOPASSWD: /usr/sbin/tw_cli

**監視設定 [#j4e8af38]
Linuxサーバ、ESXiを対象とした場合の設定例。

***Linux向けホスト設定 [#h751d7cd]
以下のホストマクロを定義する。~

|マクロ|値|説明|
|{$SSH.USER}|zabbix|SSH接続に使用するユーザ|
|{$SSH.PASSWD}|zabbix|SSH接続に使用するユーザのパスワード|
|{$SSH.COMMAND}|sudo|tw_cliを実行する前に付けるコマンド|
|{$RAID.HBA01}|c1|監視対象のHBA番号|
|{$RAID.ARRAY01}|u0|監視対象のアレイ番号|

***ESXi向けホスト設定 [#q1c603c3]
以下のホストマクロを定義する。~
ESXiはSSH鍵を使用するため、若干設定が異なる。~

|{$SSH.USER}|root|SSH接続に使用するユーザ。sudoは使えないため、rootとなる|
|{$SSH.PASSWD}|なし|SSH鍵認証を使用するため、パスワードは不要|
|{$SSH.COMMAND}|なし|tw_cliを実行する前に付けるコマンドはなし|
|{$RAID.HBA01}|c1|監視対象のHBA番号|
|{$RAID.ARRAY01}|u0|監視対象のアレイ番号|

***アイテム設定 [#dc3b263b]
アレイの状態(tw_cli /c1/u0 show)の結果を取得するアイテムは以下のように作成する。~
~
-Linux用アイテム
|名前|アレイ情報(/{$RAID.HBA01}/{$RAID.ARRAY01})|
|タイプ|SSHエージェント|
|キー|ssh.run[3ware-hba_hba1-array1-show]|
|認証方式|パスワード|
|ユーザ名|{$SSH.USER}|
|パスワード|{$SSH.PASSWD}|
|実行するスクリプト|{$SSH.COMMAND} /usr/sbin/tw_cli /{$RAID.HBA01} show | grep {$RAID.ARRAY01} | head -1|
|データ型|ログ|
|更新間隔|3600|
~

-ESXi用アイテム
|名前|アレイ情報(/{$RAID.HBA01}/{$RAID.ARRAY01})|
|タイプ|SSHエージェント|
|キー|ssh.run[3ware-hba_hba1-array1-show]|
|認証方式|公開鍵|
|ユーザ名|{$SSH.USER}|
|公開鍵ファイル|ファイル名|
|秘密鍵ファイル|ファイル名|
|キーのパスフレーズ|なし|
|実行するスクリプト|{$SSH.COMMAND} /usr/sbin/tw_cli /{$RAID.HBA01} show | grep {$RAID.ARRAY01} | head -1|
|データ型|ログ|
|更新間隔|3600|
~

Linux用、ESXi用として分けているが差異はSSH認証部分のみであるため、どちらか片方のみ設定し、テンプレート適用後にホスト単位で認証方式を変更する運用も可能である。~
~

***トリガー設定 [#yc61abfd]
アイテムの取得結果は文字列として記録されるため、文字列マッチで障害条件を定義することとなる。~
以下の例はアレイのデグレードを検知するトリガーとなる。~
~

-トリガー設定~
|名前|アレイのデグレードを検知(/{$RAID.HBA01}/{$RAID.ARRAY01})|
|条件式|{Template_H_3wareRAID-HBA:ssh.run[3ware-hba_hba1-array1-show].iregexp(DEGRADED)}=1|
|深刻度|重度の障害|


***監視結果 [#t958833f]
アイテムにより取得される内容は以下の様な形となる。~
実行するコマンドを調整することにより、tw_cliより取得できる情報は全て取り込むことが可能。~
~

-正常時
 u0 RAID-10 OK - - 64K 931.303 ON ON

-ベリファイ中
 u0 RAID-10 VERIFYING - 80% 64K 931.303 ON ON

-ベリファイ停止中
 u0 RAID-5 VERIFY-PAUSED - 95% 256K 9313.17 ON ON

-スペアディスク
 u2 SPARE OK - - - 1863.01 - OFF


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS