0
  1. Logstash フォワーダーは軽量ですが、logstash フォワーダーから logstash まで、ネットワーク上で遅延が発生します。[あるマシンで Logstash フォワーダーを使用し、他のマシンにある Logstash にログを送信している場合]

  2. Flume /Flume-ng : 同じ量のデータに対して CPU 使用率が高い (たとえば、2 MB の場合、20% のようになります)

  3. Fluentd : Java を使用せず、CRuby をベースにしていますが、CPU 使用率もピーク時に 30% です。

私たちのユースケースによれば、ログを転送するだけで実稼働ボックスに大きな負荷を加えたくありません.logstashを使用すると、新しい単一障害点が導入されるため、それらの中から1つを選択するのにかなり混乱しています.

4

1 に答える 1

1

興味深いパフォーマンス統計。

私の経験から、logstash-forwarder はかなり軽量で、暗号化/圧縮は非常に役立ちます。これにより、実際に遅延が発生する可能性があります。それはあなたにとって重要な要素ですか?レイテンシーは 2 ~ 3 秒未満だと思います。多くのログ管理のユースケースでは、リアルタイムは強い要件ではないと思います。

結局のところ、これらすべてのエージェントはアプリやファイルからデータを収集し、それらをパッケージ化し、ネットワーク経由で出荷する必要があります。これには数サイクルかかりますが、ほとんどの場合、これらは通常のサーバーが持つリソースの 2% ~ 4% です。

ログをピギーバックする頻度に関する多くの構成がある rsyslog を見てください。docker で実行し、rsyslog または他のエージェント ( https://hub.docker.com/r/logzio/logzio-rsyslog-shipper/ ) でより厳密にリソースを制限できます。

もう 1 つのオプションは、独自のコードを記述して、一括 HTTP 投稿を使用してアプリ サーバーからログを直接投稿することです。これは、ELK のようなほとんどのオープン ソースが取り込むことができるものであり、http://logz.ioで使用することをお勧めします。

于 2015-09-14T12:07:54.003 に答える