Nagios:SMS通知

Nagios:SMS通知



サーバーの数が増加したため、問題が発生したときにアラートを発する機能を使用してサーバーを監視する必要が生じました。 数年前、通信事業会社で働いていた彼は、彼と一緒に働いていたので、選択肢はNagiosに落ちました。

条件の1つは、SMSメッセージを介して警告する機能でした。

だから、私たちは何を持っていますか、それをすべて一緒に動作させる方法:

-NagiosがインストールされたLinux(Debian 5)サーバー(この記事ではNagios自体の初期インストールと構成のプロセスについては説明しません)

-USBケーブルで接続された携帯電話(この場合はNokia 3110)

-このすべてを一緒に機能させたいという願望:)



開始するには、Nagiosをインストールし、必要なホストを監視するように構成します。



次に、携帯電話で動作するようにシステムを構成します。 これを行うには多くの方法があるため、実装したこのステップについて説明します。

はじめに、gammuプログラムをインストールしました

apt-getインストールgammu

次のステップは、携帯電話で動作するようにgammuを構成することです。 これにはユーティリティを使用できます。

gammu-config。

gammuを構成すると、次の内容の.gammurcファイルがホームディレクトリに表示されます。

〜#cat〜/ .gammurc

[ガム]

ポート= / dev / ttyACM0

接続= at115200

名前= Nokia 3110c

モデル= nauto



操作性を確認するために、次のコマンドを使用します。

〜#echo "テストメッセージ" | gammu sendms TEXT + your_phone_number

そのため、「test msg」というテキストを含むSMSを電話「+ your_phone_number」に送信します。電話番号を国際形式で指定することをお勧めします。



SMSが到着した場合は読み進め、そうでない場合はgammuのセットアップに戻ります(このトピックをグーグルで検索すると、多くのドキュメントを見つけることができます)。



次のステップは、SMSを送信するようにNagiosを構成することです。



nagiosユーザーのホームディレクトリの場所を見つけるために、ファイル/ etc / passwdを調べます(私の場合:/ var / run / nagios3)。 .gammurcファイルをそこにコピーし、nagiosユーザーのアクセス許可を変更します。

〜#chown nagios:./.gammurc

次に、/ usr / bin / gammuファイルのアクセス許可を変更する必要がありました-実行時にUIDを割り当てるため、次のようになりました:

/ usr / bin#ls -la ./gammu

-rwsr-xr-x 1ルートルート360088 2008年5月11日./gammu



次に、Nagiosを構成します。 開始するには、新しいコマンドを追加します。 これは、Nagios構成ディレクトリ(for me / etc / nagios3)のcommands.cfg設定ファイルで行われます。 次の行を追加します。

#「notify-host-by-sms」コマンド定義

定義コマンド{

command_name notify-host-by-sms

command_line / usr / bin / printf "%b" "***** Nagios ***** \ n \ n通知タイプ:$ NOTIFICATIONTYPE $ \ nホスト:$ HOSTNAME $ \ nState:$ HOSTSTATE $ \ nAdd

ress:$ HOSTADDRESS $ \ nInfo:$ HOSTOUTPUT $ \ n \ nDate / Time:$ LONGDATETIME $ \ n "| / usr / bin / gammu sendms TEXT $ CONTACTADDRESS1 $

}



#「notify-service-by-sms」コマンド定義

定義コマンド{

command_name SMSによる通知サービス

command_line / usr / bin / printf "%b" "***** Nagios ***** \ n \ n通知タイプ:$ NOTIFICATIONTYPE $ \ n \ nサービス:$ SERVICEDESC $ \ nホスト:$ HOSTALIA

S $ \ nアドレス:$ HOSTADDRESS $ \ n州:$ SERVICESTATE $ \ n \ n日付/時刻:$ LONGDATETIME $ \ n \ n追加情報:\ n \ n $ SERVICEOUTPUT $ "| / usr / bin / gammu sendms TEXT

$ CONTACTADDRESS1 $

}



次に、連絡先(私の場合、/ etc / nagios3 / conf.dディレクトリ内のcontacts_nagios2.cfg)を使用してファイルを設定します。

address1パラメーターを追加する必要があります。このパラメーターでは、国際形式で携帯電話番号を示し、サービスまたはホストのステータスを変更する際の通知用のコマンドを追加します。

ここに私が以前に持っていた方法があります:

連絡先の定義{

contact_name vano

別名ヴァノ

service_notification_period 24x7

host_notification_period 24x7

service_notification_options w、u、c、r

host_notification_options d、r

service_notification_commands notify-service-by-email

host_notification_commands notify-host-by-email

電子メールvano@gde-to.tam

}



そしてその後になったように:

連絡先の定義{

contact_name vano

別名ヴァノ

service_notification_period 24x7

host_notification_period 24x7

service_notification_options w、u、c、r

host_notification_options d、r

service_notification_commands電子メールによる通知サービス、SMSによる通知サービス

host_notification_commands電子メールによるホストへの通知、smsによるホストへの通知

電子メールvano@gde-to.tam

address1 +700000000000

}



次に、Nagiosを再起動して、着信メッセージを楽しんでください:)

少ないほうが良いですが:)



PS:これは私の最初の投稿ですので、あまり蹴らないでください:)質問がある場合-尋ねて、答えようとします:)



UPD:少なくとも私にとっては、別のニュアンス気付きました。 nagiosユーザーの場合、ホームディレクトリは/ var / run / nagio3で指定されているため、再起動後に.gammurcファイルはそこから消えます。 /etc/rc.localに登録して、このファイルを/ var / run / nagios3ディレクトリにコピーし、所有者をnagiosに変更してサービスを再起動するように登録しました。



/ bin / cp /root/.gammurc / var / run / nagios3

/ bin / chown -R nagios:/ var / run / nagios3

/etc/init.d/nagios3 restart



All Articles