paloma blog

NWエンジニアやってます。主に自宅環境のお遊びを書きます。Pythonもちょっと。タイトルは好きなカクテルから。

録画サーバのディスク容量をmonitで監視して通知する

あけましておめでとうございます。

今年のおみくじは大吉だったのですが、年明け早々メインマシンのOSが上がらなくなってしまいました。
(ハング中に電源落として上がらなくなったのですが、多分セクタ不良)

なので一発目はタブレットからの投稿です。

昨年やっと録画サーバを構築したのですが、ディスクが少ないのですぐ一杯になってしまいます。
構築優先で全然ディスク設計を考慮しませんでした。

幸い今のところディスク満タンで取れてなかったという状況は無かったのですが、
そろそろ監視でもしようと思いツールを導入しました。

やりたいこと

  • 録画サーバの監視
  • 小規模なので簡易なツールでOK
  • スマホとかで確認できるもの

ということで監視ツールはmonitにしようと思います。

通知方法

slack通知など流行ってますが、とりあえず私はSlack使ったことないのでメール通知設定をします。
とりあえず出先で確認できるようになれば良いです。

インストール

これだけ

$ sudo aptitude install monit

監視設定

ディクス容量と通知ができればよいので最低限の設定にします。

ディスク監視だけなので間隔は5分でいいかな。

set daemon 300

メール設定

# MTA作るのめんどくさいのでGmailを利用
set mailserver smtp.gmail.com port 587 username "xxxxxx@gmail.com" password "xxxxxx" using tlsv1 with timeout 30 seconds

# メールフォーマットはデフォルトのまま
set mail-format {
  from:    monit@$HOST
  subject: monit alert --  $EVENT $SERVICE
  message: $EVENT Service $SERVICE
                Date:        $DATE
                Action:      $ACTION
                Host:        $HOST
                Description: $DESCRIPTION

           Your faithful employee,
           Monit
}

# 送信先
set alert xxxxxx@gmail.com

あとディスク容量だけ監視したいので、この設定を行います。
conf.d以下に別ファイルを作ります。

# ディスク使用率が90%を超えたらアラート
check device disk with path /dev/mapper/ubuntu--vg-root
 if inode usage > 90% then alert

テスト

テスト用にmonitプロセスを再起動してみます。

$ sudo systemctl restart monit

結果

f:id:paloma69:20180121125519p:plain

できました!
これでアラートが飛んでくるはずですね。

今後改良したいこと

  • NASを作って録画ファイルはそこに保存する
  • Slack通知に変更する
  • メールよりより気づけるはず

参考サイト

MonitでGmailをSMTPサーバとして使う - Qiita

ということで簡単に監視設定ができました!

本当はmonitインストールまでにaptitudeのインストールやら
bootディレクトリ容量フルの解決などしてたので準備が結構時間かかりました...。

参考サイト見つつ作りたいものは作れるようになってきましたが、お世話になりっぱなしです。
今年は自分からそういう発信をしていきたいですね。
なのでもっと勉強しないと!