- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:WEBサーバ稼働状態の監視について(Linux))
LAN内でのWEBサーバの監視方法について
このQ&Aのポイント
- Linux(CentOS5.6)でApacheでWEBサーバを構築予定なのですが、LAN内での監視方法について教えてください。
- LAN内で稼働するWEBサーバの監視方法について、外部からのアクセスができない場合でも、自己監視でアラートメールを送信する方法があるか教えてください。
- muninなどのサーバ監視ソフトでは、稼働状態を監視することができますが、LAN内からのアクセスができない場合に自己監視する方法があるか教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
うちでは監視の無料ツールとしては「nagios」を使用していますが、ご要望にはちょっと重いかもしれません。 たんにプロセス監視するだけでよければ、シェルなりperlなりでスクリプト書けば良いように思いますが。 たぶんメール送信まで入れても数十行で済むはずです。
その他の回答 (1)
- Wr5
- ベストアンサー率53% (2173/4061)
回答No.1
「Webサーバ 死活監視 CentOS」で検索して、 http://www.mizusima-soft.co.jp/archives/493 なページを。 紹介されているmonitで対応でてきるんじゃないでしょうか? # 使ったことはありませんが。 ARMのDebianで動かしていたbindが、いつの間にか死んでいる。 なんてことはありましたけどねぇ。 # DNSSEC関係でなにかおかしかったらしい。 # 内向けDNSでしたのでDNSSEC切ってしまいました。
質問者
お礼
便利そうなツールの紹介ありがとうございました。 今回は使用しませんでしたが、機会があったら使ってみたいと思います。 ありがとうございました。
質問者
補足
おお!これはよさそうですね! ちょっと調べてみます。
お礼
lowrider_2005さんの回答がヒントになりました。 ありがとうございました。
補足
ありがとうございます。 とりあえず、下記のようなシェルを作ってみました。 一応サービスが停止していたら(実行中以外だったら)再起動してメールを送信します。 こんな感じでいいのかな? --------------------------------------------------- #!/bin/sh httpd_start=false postgresql_start=false if service httpd status | egrep "実行中"; then # サービスが正常に稼働している場合 : else # サービスが停止している場合 service httpd restart httpd_start=true fi if service postgresql status | egrep "実行中"; then # サービスが正常に稼働している場合 : else # サービスが停止している場合 service postgresql restart postgresql_start=true fi if $postgresql_start = true || $httpd_start = true; then address="xxx@xxx.com" fromaddress="xxx@xxx.co.jp" date=`date +"%Y/%m/%d_%H:%M"` subject="【警告】サービスを再起動しました。" if $httpd_start = true; then subject="${subject}(httpd)" fi if $postgresql_start = true; then subject="${subject}(postgresql)" fi subject="${subject}(${date})" nkf -j alert_mailbody.txt | mail -s `echo "$subject" | nkf -j | nkf -M` $address -- -f $fromaddress fi ---------------------------------------------------