ラズパイで自分の管理しているサーバを監視する方法(smokeping)

はじめに

自分の自宅で動いているサーバ、中も外もちゃんとネットに繋がっているかチェックしたい事ってありませんか?切れたことが早く分かれば、直ぐに対応できるので、助かりますよね。

今回は、一定間隔でpingを送って、その結果をグラフにしたり通知してくれる「smokeping」を取り上げたいと思います。

インストール

  1. インストールは、下記のコマンドだけです。
  sudo apt-get -y install smokeping sendmail

設定ファイルの編集

  1. Targetsファイルの編集します。
sudo nano /etc/smokeping/config.d/Targets

ポイントは「host」にpingしたいIPアドレスや名前を入れるだけ。
あとの名前は適当に分かりやすいように変えます。
下記はサンプルになります。

*** Targets ***

probe = FPing

menu = Top
title = XXXX Network Latency Grapher
remark = Welcome to the SmokePing website of XXXXX.

+ Local
menu = Local
title = Local Network
#parents = owner:/Test/James location:/

++ Router
menu = Router
title = Router(IP-192.168.0.1)
host = 192.168.0.1
#alerts = someloss


+ Internet
menu = Internet
title = Internet Server

++ Google
menu = Google
title = Google DNS(IP-8.8.8.8)
host = 8.8.8.8
#alerts = someloss
  1. Alertsファイルの編集します。(下記はサンプル)
sudo nano /etc/smokeping/config.d/Alerts

下記のようにオリジナルの設定も出来ます。

  • パケットロスが60%以上だったら、「hostdown」で警告が出るように定義しています。
  • toの部分では、メールへの通知ではなく、独自のスクリプトを呼び出すように設定しています。
    (私はこのスクリプトを少し改造して使っています。https://github.com/tomwillfixit/smokeping/blob/master/slack_notify.sh)
to = |/etc/smokeping/config.d/slack_notify.sh
from = smokealert@company.xy

+hostdown 
type = loss 
pattern = >60% 
edgetrigger = yes 
comment = Host is OFFLINE
  1. 設定にミスがないかの確認を行い、再起動します。
sudo smokeping --check
sudo reboot
  1. 正常に動作しているか確認します。
http://hostname/cgi-bin/smokeping.cgi

まとめ

いかがだったでしょうか?簡単に死活監視が出来るsmokeping便利ですよ。
監視される側は何の設定もいりませんし、pingが通るだけでOKです。
もしよかったら、皆さんも入れてみてはいかがでしょうか?

IT,ラズパイ

Posted by スングル