そのため、Nagiosを設定し、電話で問題に関するSMSを受信するように設定しました。
便宜上、別個のGoogleアカウント(nagios_alert@your-company-domain.comなど)を登録し、このアカウントのカレンダーを設定してください。 デフォルトでは、カレンダーの通知に関心があります。イベントの1分前にSMSで通知を設定します。
また、携帯電話番号をこのアカウントにバインドする必要があります(これはカレンダー設定で行われます)。
次に、このリンクgithub.com/insanum/gcalcliをたどって 、 GCalCLIをダウンロードします。GCalCLIは、Googleカレンダーを操作できるPythonのコンソールユーティリティです。
ユーティリティが機能するために必要なものはすべてプロジェクトページで説明されており、文字通りいくつかのPythonモジュールがあります。
通常の操作では、gcalcliは少し終了する必要があります(これがない場合)。
ファイルを編集用に開き、226行目に移動して次のように変更します。
feedPrefix = 'https?://www.google.com/calendar/feeds/'
次に、このスクリプトをより快適な場所に配置しました。Nagiosデーモンが回転しているアカウントで起動できるようになりました。 / usr / binを選択しました。
gcalcliの横に、次の内容のbashスクリプトを配置します。
#!/bin/bash # notify_sms for Nagios by Br0ziliy NOW_HOUR=`date +%-H` NOW_MIN=`date +%-M` [ $NOW_HOUR -gt 0 ] && H=$(( $NOW_HOUR-1 )) || H=23 [ $NOW_MIN -lt 55 ] && M=$(( $NOW_MIN+5 )) || M=59 /usr/bin/gcalcli --user nagios_alert@your-company-domain.com --pw yourpass quick "$H:$M $@"
スクリプトは、パラメーターに渡されるテキストを含むnagios_alert@your-company-domain.comアカウントカレンダーに「クイック」イベントを追加します(以下を参照)。
また、Nagiosサーバーの時間と現地時間は1時間異なることに注意してください。この差はスクリプトで考慮されます。
次に、Nagios自体を構成します。
コマンドnotify-service-by-smsを追加します。
define command{ command_name notify-service-by-sms command_line /usr/bin/notify_sms '$NOTIFICATIONTYPE$ $HOSTALIAS$/$SERVICEDESC$: $SERVICEOUTPUT$' }
SMS通知用に別の連絡先を追加します(より便利です):
define contact{ contact_name mobile mobile host_notification_period never # service_notification_period nonworkhours # SMS service_notification_options c,r # service_notification_commands notify-service-by-sms host_notification_commands notify-host-by-email }
この連絡先を目的のグループに追加し、Nagiosを再起動します-以上です。 これで、管理者は何かがどこにあるかを常に知ることができます。 私のテストによると、メッセージは問題が発生してから正確に8分後に到着します(Nagiosの設定に応じて増減する場合があります)。
携帯電話番号に関して-私はMTSでテストしました-それは5で動作します。
有料SMS送信サービスについて-はい、私はそれらについて知っていますが、そのため、トピックの名前に「little blood」という言葉が含まれています。