日記ブログ、または雑多なメモ
2010年2月23日

ファイルサーバに異常があったら通知させる





 ファイルサーバー君に定期的にzpool statusさせて、異常があれば自分のメアド宛にメールをさせるようにする。

 まず、FreeBSDに入っているsendmailをすでにおったててある自家メールサーバにリレーする設定に変更。

# cd /etc/mail
# make


 とすると、ファイルサーバのホスト名.mcというファイルができるので、その中の
dnl define(`SMART_HOST',`mailhub.example.com')

define(`SMART_HOST', `自分のメールサーバホスト')
 に変更。

# make install
# make restart


 でsendmailの設定完了。 これでメールが出せる。

 通知スクリプトは
#!/bin/sh
PATH=/bin:/sbin:/usr/bin:/usr/sbin
ZSTAT=`zpool status`
NUM=`echo "$ZSTAT" | grep DEGRADED | wc -l`
if [ $NUM != 0 ] ; then
 echo "Sending emergency mail"
 cat <<EOF > /tmp/mail.txt
From:fileserver
Cc:
To: 自分のメールアドレス
subject: Server disk damaged!

EOF
 echo "$ZSTAT" >> /tmp/mail.txt
 cat /tmp/mail.txt | sendmail -t
 rm /tmp/mail.txt
fi

 という感じで異常があればzpool statusの中身をメールさせる。
これをcronで10分おきくらいでまわしておくと、一応安心して放っておけるという寸法。


コメント欄
(投稿なし)

コメントなどありましたらこちらからどうぞ
名前
内容
 ※名前、内容ともに入力必須です
- C'sGallery Blogっぽく見えるシステム3.2 -
小武 (管理人) eta2@tim.hi-ho.ne.jp