大規模なログ転送と集約


14

UNIX / Linuxマシンからのログファイルをどのように分析していますか?数百台のサーバーを実行し、それらはすべて直接またはsyslogを介して独自のログファイルを生成します。これらを集約し、重要なイベントを選択するための適切なソリューションを探しています。この問題は、3つのコンポーネントに分類されます。

1)メッセージ転送

古典的な方法は、syslogを使用してメッセージをリモートホストに記録することです。これは、syslogにログインするアプリケーションでは正常に機能しますが、ローカルファイルに書き込むアプリケーションではあまり役に立ちません。この解決策としては、syslogを使用してメッセージを送信するプログラムに接続されたFIFOにアプリケーションをログインさせるか、ローカルファイルをgrepして中央のsyslogホストに出力を送信するものを書き込むことがあります。ただし、syslogにメッセージを取り込むためのツールを作成する手間がかかった場合、syslogよりも柔軟性と信頼性が高いFacebookのScribeのようなものに全体を置き換える方が良いでしょうか?

2)メッセージの集約

ログエントリは、ホストごととサービスごとの2つのタイプのいずれかに分類されるようです。ホストごとのメッセージは、1台のマシンで発生するメッセージです。ディスク障害または疑わしいログインを考えてください。サービスごとのメッセージは、サービスを実行しているホストのほとんどまたはすべてで発生します。たとえば、ApacheがSSIエラーを検出したときを知りたいが、100台のマシンで同じエラーが発生したくない場合です。いずれの場合も、各タイプのメッセージのうち1つだけを表示する必要があります。同じディスクに障害が発生したことを示す10個のメッセージは必要ありません。

これを解決する1つの方法は、同じタイプの複数のメッセージを各ホストで1つに集約し、メッセージを中央サーバーに送信してから、同じ種類のメッセージを1つの全体的なイベントに集約することです。SERはこれを行うことができますが、使用するのは厄介です。数日いじった後でも、基本的な集計のみが機能し、イベントを相関させるためにSERが使用するロジックを常に検索する必要がありました。それは強力ですが、トリッキーなものです:私は、同僚が最短時間で拾って使用できるものが必要です。SERルールはその要件を満たしていません。

3)アラートの生成

興味深いことが起こったときに、管理者にどのように伝えるのですか?グループ受信ボックスにメールしますか?Nagiosに注入しますか?

それでは、この問題をどのように解決していますか?私は皿に答えを期待していません。詳細を自分で解決することはできますが、確かに一般的な問題が何であるかについてのいくつかの高レベルの議論は素晴らしいでしょう。現時点では、cronジョブ、syslog、およびイベントを見つけるために他に何を知っているのかというミッシュマッシュを使用しています。これは拡張性、保守性、柔軟性に欠けるので、そうすべきではない多くのものを見逃しています。

更新: Nagiosを既に監視に使用しています。これは、検出されたホスト/サービスのテストなどには最適ですが、ログファイルのスクレイピングにはあまり役立ちません。Nagiosのログプラグインがあることは知っていますが、ホストごとのアラートよりもスケーラブルで階層的なものに興味があります。


回答:


5

ログを集中管理するために3つの異なるシステムを使用しました。

  1. 1つのホストへのsyslog / syslog-ng転送
  2. イベントを集約および警告するためのZenoss
  3. ログの集約と検索のためのSplunk

#3では、通常、syslog-ngを使用して各ホストからのメッセージを直接splunkに転送します。ログファイルを直接解析することもできますが、それは少し面倒です。

Splunkは、ログの検索と分類に最適です。ログアラートにsplunkを使用したことはありませんが、可能だと思います。


Splunkの場合は+1。特定のイベントが検出されたときに、Splunkが外部スクリプトをトリガーするようにできます。メールまたはSNMPトラップの送信。
ムラリSuriar

2

完全なオープンソースHIDSであるOSSECを見ることができます。ログ分析を行い、アクションをトリガーしたり、アラートでメールを送信したりできます。アラートは、一連の単純なXMLベースのルールによってトリガーされます。さまざまなログ形式用の多くの事前定義されたルールが含まれており、独自のルールを追加できます。

http://www.ossec.net/


1

Octopussyを見てください。それは完全にカスタマイズ可能であり、すべてのニーズに応えるようです...

PS:私はこのソリューションの開発者です。


1
名前に "pussy"が含まれる製品を展開したり、推奨したりするリスクはありません。これはおそらく、ほとんどの企業ではうまくいきません。特に、IT内で働く女性がいる場合(最近はかなり一般的です)。
ヒトデ

0

Zenoss Coreなどの監視システムを調べる必要があります。とりわけ、導入ページで次のように述べています。

Zenoss Event Monitoring and Managementは、可用性監視、パフォーマンス監視、syslogソース、SNMPトラップソース、Windowsイベントログなど、さまざまなソースからログおよびイベント情報を集約する機能を提供します。

参照してくださいどのようなツール-DO-あなたを使用・ツー・モニター・ご-サーバ


Zenossにログ集約機能があることは知りませんでした。見てみましょう-ありがとう。
マークドレイトン2009年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.