レンタルサーバー・自宅サーバー設定・構築のヒント
レンタルサーバー・自宅サーバー設定・構築のヒント - レンタルサーバー・自宅サーバーの設定・構築情報を公開しています。

Monitを使ってApacheを監視する(2)alertをGMAILへ送信する

2010年12月20日 2015年5月17日
apache monit

Monitを使ってApacheを監視する(1)」の続きです。

今回は、MonitでApacheを監視するときの細かい設定についてです。
その中でも、今回は、alertのメール設定について解説したいと思います。

Monitとは、
Unix system(Linuxを含む)のサービス(デーモン)のモニタリングを行うためのユーティリティソフト(サービス)です。

Monitは、サービス(デーモン)の監視・管理としては、簡単にセットアップを行うことができることでも有名です。
実際には、サービス(デーモン)を監視し、その状態によって、サービス(デーモン)を停止したり、再起動したり、アラートメッセージをメール送信したりすることができます。 ウェブ画面からの監視も可能です。

MonitでalertメッセージをGMAILへ送信する設定例

早速、MonitでalertメッセージをGMAILへ送信する設定例を解説してみたいと思います。
もちろん、/etc/monit.conf を編集します。基本的な設定例は、「Monitを使ってApacheを監視する(1)」とほぼ同じです。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
set alert you@gmail.com with mail-format { 
  from: my@gmail.com
  subject: $SERVICE $EVENT at $DATE
  message: 
Monit $ACTION $SERVICE at $DATE on $HOST: $DESCRIPTION.
Yours sincerely,
monit
}

set mailserver smtp.gmail.com port 587 username "my@gmail.com" password "mypassword" using tlsv1

check process httpd with pidfile /var/run/httpd.pid
    start program = "/etc/init.d/httpd start"
    stop program = "/etc/init.d/httpd stop"
    if failed host www.example.com port 80
      protocol HTTP request /alive.html then alert
    group httpd

簡単に解説しておきます。

  • 1行目 : alert 発生時のメールの送信先をyou@gmail.comとしています。

    さらに続けて、メールのメッセージフォーマットを設定しています。

    • 送信元 : my@gmail.comとしています。
    • タイトル : $SERVICE $EVENT at $DATEとしています。
      ※$が付いているものは、Monitで使える環境変数のようなものです。
      • $SERVICE : サービス名
      • $EVENT : イベント名
      • $DATE : 発生日時
    • メール内容 : Monit $ACTION $SERVICE at $DATE on $HOST: $DESCRIPTION. …. としています。
      ※$が付いているものは、Monitで使える環境変数のようなものです。
      • $ACTION : アクション名
      • $SERVICE : サービス名
      • $DATE : 発生日時
      • $HOST : ホスト名
      • $DESCRIPTION : 概要
  • 10行目 : GMAILの設定です。
    • SMTPホスト名 smtp.gmail.com
    • ポート番号 587
    • ユーザ名 my@gmail.com
    • パスワード mypassword
    • セキュリティ接続 tlsv1

    このように、ポート番号セキュリティ接続の設定が、GMAIL設定のポイントでしょう。

  • 12行目 – : 以前の記事の「Monitを使ってApacheを監視する(1)」にて設定した例からの引用になります。
  • 16行目 : ここの設定だけが、restart から alert へ変更されている点に注意してください。

MonitでalertメッセージをGMAILへ送信する設定例を確認してみる

上記の設定を確認しておきましょう。
確認の方法も、前回と「Monitを使ってApacheを監視する(1)」と同じです。

簡単に確認するために、シェルを2つ(シェル#1シェル#2)使って確認します。

シェル#1 : Monitを起動します。

$ /usr/bin/monit -vI
Runtime constants:
 Control file       = /etc/monit.conf
 Log file           = /var/log/monit
 Pid file           = /var/run/monit.pid
 Debug              = True
 Log                = True
 Use syslog         = False
 Is Daemon          = True
 Use process engine = True
 Poll time          = 60 seconds
 Mail server(s)     = smtp.gmail.com:587(ssl)
 Mail from          = (not defined)
 Mail subject       = (not defined)
 Mail message       = (not defined)
 Start monit httpd  = False
 Alert mail to      = you@gmail.com
   Alert on         = All events

The service list contains the following entries:

Process Name          = httpd
 Group                = httpd
 Pid file             = /var/run/httpd.pid
 Monitoring mode      = active
 Start program        = '/etc/init.d/httpd start' timeout 1 cycle(s)
 Stop program         = '/etc/init.d/httpd stop' timeout 1 cycle(s)
 Pid                  = if changed 1 times within 1 cycle(s) then alert
 Ppid                 = if changed 1 times within 1 cycle(s) then alert
 Port                 = if failed www.example.com:80/alive.html [HTTP via TCP] with timeout 5 seconds 1 times within 1 cycle(s) then alert else if passed 1 times within 1 cycle(s) then alert

System Name           = host.example.com
 Monitoring mode      = active

-------------------------------------------------------------------------------
monit: pidfile '/var/run/monit.pid' does not exist
Monit started
Monit instance changed notification is sent to you@gmail.com
'httpd' zombie check passed [status_flag=0000]
'httpd' succeeded connecting to INET[www.example.com:80] via TCP
'httpd' succeeded testing protocol [HTTP] at INET[www.example.com:80] via TCP

起動が正しくできた時点で、「Monitが起動したました・・・」というメールが送信されます。
実際のタイトルは、以下のようなものです。

host.exmaple.com Monit instance changed at Mon, 20 Dec 2010 03:38:02 +0900
もし、設定ミスがあれば、
/usr/bin/monit -vI
monit: Error: Poll time not defined. Please define poll time in the
 control file or use the -d option when starting monit
のようなエラーが表示されます。この場合は、設定(/etc/monit.conf)を見直しましょう。
※上記のエラーメッセージは、”set daemon 60″をコメントアウトしたときに出るエラーメッセージです。

シェル#2 : シェル#1でMonitが起動できたのを確認して、Monitが読み込みにいくページ(alive.html)の名前を変更して読めなくしてみます。

$ mv /var/www/html/alive.html /var/www/html/alive_back.html
$ 

※ここは、あくまで例としてCentOSのapacheのデフォルトディレクトリ直下にあるものとして記述しています。各環境に合わせてディレクトリ名を変更してください。

シェル#1 : 次の監視ででlaertメッセージが送信されればOKですね。

$ /usr/bin/monit -vI
              :
              :
-------------------------------------------------------------------------------
monit: pidfile '/var/run/monit.pid' does not exist
Monit started
Monit instance changed notification is sent to you@gmail.com
'httpd' zombie check passed [status_flag=0000]
'httpd' succeeded connecting to INET[www.example.com:80] via TCP
'httpd' succeeded testing protocol [HTTP] at INET[www.example.com:80] via TCP
              :
              :
'httpd' zombie check passed [status_flag=0000]
'httpd' succeeded connecting to INET[www.example.com:80] via TCP
HTTP error: Server returned status 404
'httpd' failed protocol test [HTTP] at INET[www.example.com:80] via TCP
Connection failed notification is sent to you@gmail.com

ちゃんと送信されたみたいですね。
これでOKのはずです。

you@gmail.comの受信メッセージを確認してみてください。


Subject : httpd Connection failed at Mon, 20 Dec 2010 04:22:19 +0900

Monit alert httpd at Mon, 20 Dec 2010 04:22:19 +0900 on host.example.com: 'httpd' failed protocol test [HTTP] at INET[www.example.com:80] via TCP.
Yours sincerely,
monit

のようなメールが着いていれば OKです。


今回は、ここまでです。
Monitで何か異常が検知されたら、どこにいてもメールで知らせることは可能となったわけです。
もちろん、alertとともにrestartをするのも良いでしょうし、さらに細かい条件で、処置を分岐させるのも良いと思います。

次回は、さらにMonitの設定を、もう少し突っ込んでみようと思います。
ご利用のブラウザは、広告ブロック(AdBlockなど) が適用となっていませんか?
このサイトでは、コンテンツの一部が非表示、あるいは、コメント、お問い合わせの投稿ができない検索ができないことがあります。


関連記事 :

Monitを使ってApacheを監視する(1)

Apacheについての設定をいろいろと取り上げてきました。 Apacheの同時アクセスを制限(mod_limitipconn)する ...

Monitを使ってApacheを監視する(3)もっと細かいチェックを設定する

「Monitを使ってApacheを監視する(1)」、「Monitを使ってApacheを監視する(2)alertをGMAILへ送信する」の続きです ...

さくらのVPSで、いきなりリブートされちゃいました

このサイトでは、さくらのVPSを使っていますし、紹介もしています。 最近、ちょっと気になっていたんですが、さくらのVPS(特に ...

GMailでスパムメールになってしまう時にチェックしたいこと

独自ドメイン+自前のSMTPサーバー を利用してGMailへ送信した場合、よくスパムメール扱いされることがあります。 そんな時の対応について、 ...

sendmailを使って内部メールをgmailへ転送する

今回は、sendmailです。 といっても、sendmailを本格的使いだすとメンテナンスも大変ですし、設定も面倒です。しかし、かといって、シ ...



コメントを投稿 :

お名前 *

メールアドレス *
( メールアドレスが公開されることはありません。)

サイトアドレス

コメント *

* 印の項目は、入力が必要な項目です。




最近投稿の記事

[ 画像提供元 : Amazon ] 先日、1TBのディスクの入れ替え時にバックアップをとろうとディスクコピーを行いました。 その際 ...

Windows で Linux ファイルシステム Ext4 のディスクをマウントするには? Ext3Fsd が、おそらく、最も簡単なツール ...

今回は、Windows で Compass を使ってみました。 Compass とは、 Sass(サス、Syntactica ...

今回は、Anti Adblock を使ってみました。 Anti Adblock とは、 そもそも Adblock という ウェブ ...

デスクトップ環境でない サーバーで、Webページのキャプチャー画像をコマンドで撮る には、wkhtmltoimage, CutyCapt ...


さくらのVPS 全プラン リニューアルです。(石狩(北海道)も選択可)


root権限ありで ¥685 / 月 ~ と非常にリーズナブルな CPU 1(core)の 512 プランから、 最高 CPU 10(core), メモリ 32(GB), SSD容量 800(GB) までとプランが充実。
ディスクは、SSDとHDDの選択が可能になった他、データセンターは人気の東京、石狩(北海道)となりました。

また、どのプランでも好きなOSが選べます
( CentOS, Fedora, Scientific Linux, FreeBSD, Ubutu, Debian )

管理人もおすすめのVPSです。
試用期間がありますから、一度、お試しを!!

詳しくは、http://vps.sakura.ad.jp/さくらのVPSのサイトへ へどうぞ!!

カテゴリ


Serverman@VPS 完全1ヶ月無料 キャンペーン実施中です。


Serverman@VPS 完全1ヶ月無料 キャンペーン実施中です。
最近、スワップにも対応した Serverman@VPS は、かなりリーズナブルかもです。

  • メモリ1GB~2GBのEntryプラン :月額:490円
  • メモリ2MB~4GBのStandardプラン :月額:980円
  • メモリ4GB~8GBのProプラン :月額:1,980円

新規申し込みで1ヶ月間完全無料となるキャンペーンを実施中です。
Serverman@VPSの特徴は、安さとIPv6対応です。また、初期設定費0円もポイントです。

IPv6でちょっと遊んでみたい方には、おすすめかもしれませんね。最低利用期間もありませんから、気に入らないときは即解約もできます。

Serverman@VPSの詳細については、 http://dream.jp/vps/ Serverman@VPSのサイトへへどうぞ。



KVM採用 ConoHa VPSは、時間単位で借りれる便利なVPSです。


ConoHa VPS は、初期設定費0円最低利用期間無し時間単位で清算可能、 さらに、Web APIを使って自動化を図ることもできる便利なVPSです。

海外サーバー設置も可能で、ローカル接続にも対応と、かなり、機能豊富なサーバーです。

新規ユーザ登録で、クーポンもらえますから、まずは、お試しですね。

ConoHa VPSの詳細については、
http://www.conoha.jp/ へどうぞ。

KVM採用 お名前.com VPS(KVM) 2G プラン 初期設定費無料 キャンペーン 実施です。


メモリ2GBプラン CPU:3core、Disk:200GB
月額:1,153円から (初期設定:1,680円0円)

さくらのVPSがリニューアルされてもなんのその。
1GBメモリ / 2Core を ¥834 – の格安価格で提供中です!
間違いなくスペックからすると割安感ありです。
年間割引時の途中解約で返金がないのは、 ちょっと残念ですが、それでもこの割安感は魅力です。

まずは、お試しですね。

お名前.com VPS(KVM)の詳細については、
http://www.onamae-server.com/vps/ へどうぞ。(お試し期間が15日あります。)



  • ソーシャルブックマーク

  • はてなブックマークへ追加するはてな登録数
ページトップへ
Time : 0.2435 [s]