Fluentd情報
Fluentdとは
Fluentd(フルエントディー)とは、様々なデータの収集を統一できるオープンソースのデータコレクタです。
Fluentdは、2011年にTreasure Data(トレジャーデータ)社の古橋 貞之(ふるはし さだゆき)氏によりRubyで開発され、以降はTreasure Data社およびコミュニティベースで開発されています。
2016年11月にCloud Native Computing Foundation(CNCF)の6番目のプロジェクトとして承認されました。 その後、2019年4月に完全なエコシステムへと成長したとされ、Kubernetes、Prometheusと同様の卒業プロジェクトの一つとしてCNCFに認定されました。
Fluentdは、個々のシステム毎に管理されている大量のログファイルを収集、解析し、ストレージに集約、保存を行うツールとして活用されています。 ログに限らず、各種データをNoSQLデータベース(MongoDB)やクラウドストレージ(Amazon S3)など様々な媒体に出力できるのも大きな魅力です。 また、Elasticsearch(エラスティックサーチ)、Kibana(キバナ)と連携し、ログを可視化する構成において、インタラクティブなデータの取り扱いが実現できる仕組みとしても注目を浴びています。
Fluentdは、Ruby gemにて提供されているだけでなく、Rubyやいくつかのプラグインが同梱されている安定版の「td-agent」としても提供されております。「td-agent」は開発元であるTreasure Data社よりRedHat(rpm)やDebian(deb)、OSX(dmg)などに対応した主要なパッケージとして配布されているため、Fluentdを手軽に導入することができます。
Fluentdは、プラグインアーキテクチャを採用しており、用途に応じたプラグイン開発、拡張を自由に行うことができます。
Fluentdの特徴として、大きく分けてinput(インプット)、buffer(バッファ)、output(アウトプット)の3つの機能から構成されています。
各機能がプラガブル(各機能を必要に応じてOn/Offすることができる)なため、用途に応じてプラグインを追加するだけで使える仕組みとなっています。
また、提供される機能が豊富に用意されているため、多様な組み合わせにより要件に合ったログ管理の実現が期待できます。
Input(インプット)
各種データソースから必要なデータを収集する
例) 転送データの取り込み、HTTP POSTでの取り込み、イベントログの取り込みなど
Buffer(バッファ)
障害などによるデータの紛失を管理
例) オンメモリ、ファイルによるデータ管理、データの再送など
Output(アウトプット)
各種データ保存先へ出力する
例) ファイル出力、データ転送、データベースへの書き込みなど
近年では、ビッグデータ、仮想化やクラウド化の進展に伴い、ログが多様化・肥大化する傾向にあります。 こうした煩雑なログ管理の効率化として大規模Webサービスやビッグデータ基盤においてFluentdが採用される事例が増加してきています。
主な機能
主な機能は以下のとおりです。
機能 |
詳細 |
---|---|
ログ転送機能 |
収集したデータを別のサーバへ転送可能。冗長化やアクティブ-スタンバイなどの構成が実現できる。 |
バッファリング機能 |
データを欠損することなく管理が可能。オンメモリとファイルの2種類から選択して利用できる。 |
フィルタ機能 ※.2 |
データの加工や正規表現によるフィルタリングを行える。 |
プラグイン機能 |
公開されているプラグインは500種類以上あり、様々な要件に応じた機能を選択できる。 |
※2 v0.12以降から提供。
主な特徴
主な特徴は以下のとおりです。
マルチプラット |
Rubyの動作環境が揃えば、Linux、MacOS X、Windows、UNIXなどさまざまなOSで対応可能。 |
---|---|
柔軟な拡張 |
プラガブルな構成であるため、各機能を独自のプラグインとして自由に開発・拡張ができる。 |
高信頼性 |
収集したデータを一時的にバッファに蓄積できる機構を持っているため、障害時のログの再送制御に強く、ログの欠損を防ぐことが可能。 |
データをJSON形式で扱える |
収集したログの形式をJSON形式に変換するため、データを構造的に把握でき、後のデータ変換が容易にできる。 |
導入・運用が容易 |
ドキュメントが充実しており比較的容易にインストールや機能を拡張できる。 |
豊富な導入実績 |
クラウド化が進んだことで、大規模環境の運用で多数の採用実績がある。 |
類似プロダクト
OSS製品ではsyslogd、NXlog(Community Edition)、Logstashが同様の機能を提供しています。
Fluentdのライセンス
Fluentdのライセンスは、Apacheソフトウェア財団 (ASF) によって規定されたApache License Version 2.0のライセンスを採用しています。
Apache License Version 2.0のライセンスに従い、著作権の表示などの条件に従うことで、商用利用、修正、再頒布などが自由に行えます。
オープンソース年間サポートサービス
OpenStandiaではOSSを安心してご利用いただけるように、オープンソース年間サポートサービスをご提供しております。
サポートしているOSSは下記ページをご参照ください。
関連OSS
-
Logstash
ログスタッシュ。Elastic社により開発された、データ収集ツールです。
-
Kibana
キバナ。Elasticsearchのデータ可視化や、”Elastic Stack”のプロダクト群(Elasticsearch、Logstash、Kibana、Beats)の制御のために利用されるフロントエンドツールです。
-
サポート対象
Elasticsearch
エラスティックサーチ。Elastic社が開発するオープンソースの全文検索エンジンです。