web-dev-qa-db-ja.com

Webサーバーの監視に使用するツールは何ですか?

Ubuntu Webサーバーの監視に使用するツールは何ですか?具体的には、サーバーの稼働時間、リソースの使用状況(RAM、CPU、帯域幅など)、Apache、MySQL、PHPを監視したいと思います。

47
Olivier Lalonde

Nagios は私のお気に入りの監視ツールです。 Webサーバー、サービス、ホストなどを監視できます。高度にカスタマイズ可能であり、さまざまな目的に使用できる多くのプラグインがあります。

Nagiosのいくつかの機能:

  • ネットワークサービス(SMTP、POP3、HTTP、NNTP、PINGなど)を監視する
  • ホストリソースの監視(プロセッサの負荷、ディスク使用量など)
  • シンプルなプラグイン設計を可能にする
  • 並列化されたサービスチェックを行う
  • を使用してネットワークホスト階層を定義する
  • サービスまたはホストの問題が発生した場合は管理者に連絡してください
  • 予防的な問題解決のために、サービスまたはホストイベント中に実行されるイベントハンドラーを定義する
  • 自動ログファイルローテーション
  • 冗長監視ホストの実装をサポート
  • 現在のネットワークステータス、通知と問題履歴、ログファイルなどを表示するためのオプションのWebインターフェイスを提供します

以下にオンラインデモを示します。 http://nagioscore.demos.nagios.com/

23
aneeshep

muninとそのプラグインがあれば十分です。

他のリソースと同様にリソースをチェックしますが、リソースとは異なり、完全に非対話的です。更新するたびにHTMLファイルとグラフのバッチを書き出します。これらを自動的に圧縮してメールで送信するか(スクリプトは作業である必要がありますが簡単です)、Apacheなどを介して利用可能にすることができます(仮想ホストのルートを/var/www/munin/にバインドするだけです)。

他の(インタラクティブな)手段に対する大きな利点は、セキュリティリスクではないことです。 (一例として)Webminを実行すると、ユーザーが通信できるプロセスが実行されます。これは、システムへの攻撃ベクトルです。そして、かなり人気のあるアプリケーションであるということは、サーバーをスクリプトハッキングする人々によく標的にされていることを意味します。

それは少し「アルミ箔の帽子」かもしれませんが、カバーするベクトルが数個しかない場合、セキュリティは本当に簡単に使用できます。

22
Oli

live viewの場合、sshを使用してログインし、htop(cpu、memの場合)およびnloadをネットワーク負荷に対して実行します。

htopnload の両方がUbuntuリポジトリで利用可能です。

16
LassePoulsen

ニーズによって異なります。しかし、これは私の監視スタックです

  1. Nagios :各サーバーのヘルスをチェックする集中監視システムとしてnagiosを使用しています。何かがうまくいかない場合、それは私に警告します。たとえば、APIへの応答時間がしきい値を超えた場合などの状況に対してアラートを設定しています。
  2. Monit :何かが完全に狂った場合、monitがそれを処理します。スタックのいずれかのコンポーネントがダウンするとします。それは私に警告し、また私のためにそれを持ち出します。
  3. Logstash :ログに記録された疑わしいアクティビティはすべて知らせてくれます。
  4. SeaLion :上記のすべてが、スタックに問題があるかどうかを知らせてくれます。しかし、問題の原因は、SeaLionでデバッグすることです。以前は、sartopuptimeiostatvmstatnetstatなどのシステムプロファイリングツールの出力をファイルに記録するために使用していました。しかし、その巨大なログを管理することは私にとって不可能になりました。 SeaLionはこれらすべてのコマンドを実行し、美しいタイムライン形式で表示します。また、インストールはとても簡単で簡単だと言うこともできます。

SeaLion output

13
stylusbrook

すばやく簡単な情報が必要な場合、ubuntuにはlandscape-sysinfoというツールがあります

これにより、システムの負荷、ハードディスクの使用量、メモリの使用量、プロセスの数、およびIPアドレスのボックスが出力されます

コンソールに入力するだけです:

landscape-info

スケーリングするものが必要な場合(言い換えると、複数のWebサーバー、DNSサーバーなどを監視することになります)、 Cacti をお勧めします。

最も急な学習曲線を持っていますが、過去にさまざまなソースから毎分800以上の統計を収集するために使用していました。収集プロセスはスレッド化されているため、約40秒で完了します。

RRDtoolを使用してソースをグラフ化します。ウェブベースであり、リポジトリにあります。

2
Scaine

私は、ほとんどの人がおそらくWebminと呼ばれるパッケージを使用するのが好きです

ほとんどすべてのサーバーの統計情報を監視できるWebベースのプログラムで、電源オプション(シャットダウン、再起動など)を変更できます。ユーザーを追加したり、サービスを開始/停止したり、サーバーで必要なことはほとんど何でもできます。試してみることをお勧めします!

ここ はインストールするのに良いチュートリアルです

Jauntyと書かれていますが、Ubuntuのどのバージョンでも動作するはずです:)

ただし、Webminは非常に安全ではないと考えられています。

2
russjr08

「Ubuntu Webサーバーを監視するためにどのツールを使用しますか?」

Nagiosのような大きくてかさばるパッケージよりも、自家製のソリューションの方が好きです。Nagiosは、すでにあふれている受信トレイをあふれさせる傾向があります。ローカルネットワークで実行されている小さなUbuntu Linuxボックスがあります。

http://www.newegg.com/Product/Product.aspx?Item=N82E1685611907

カスタムビルドスクリプトを使用して他のボックス(Webサーバーを含む)から情報を収集し、ローカルユーザーに電子メールを送信します。 Postfix(SMTP)とDovecot(POP3)を実行するため、Postfixは電子メールを受信して​​Dovecotに配信します。次に、デスクトップでThunderbirdを使用してDovecotをポイントし、生成されたメッセージを取得します。

特注の作業を行わない限り、私が見なければならない問題があったとしても、無視したメッセージを無数に受け取ることになります。きれいなグラフは素晴らしいですが、問題が何であるかを正確に伝えることは、たぶんずっと良いことです。ただし、このような洗練された制御は、カスタムビルドソフトウェアでのみ可能です。

1
daoperator

http://packages.ubuntu.com/serverstat

Rrdtoolsを駆動し、cactiのようなMySQLを必要としないPHPスクリプトです。

0
Lester Cheung