最近、Fluent Operator は v2.5.0 をリリースしました。
Fluent Operator v2.5.0 は 11 の新機能を追加し、そのうち Fluent Bit は 7 つの新しいプラグインをサポートし、Fluentd は 1 つの新しいプラグインをサポートします。さらに、Fluent Operator が強化され、より多くのシナリオに適応するようにデフォルトのパラメーターが調整され、ユーザーがより便利にインストールできるように Helm チャートが最適化され、いくつかのバグが修正されました。
以下では次の点に焦点を当てます。
Fluent Bit は複数のプラグインを追加します
1. Prometheus Exporter プラグイン
Fluent Bit は、新しい出力プラグイン Prometheus Exporter を追加します。Prometheus Exporter 出力プラグインを使用すると、Fluent Bit からメトリクスを取得し、prometheus インスタンスが取得できるようにそれらを公開できます。
関連 PR: https://github.com/fluent/fluent-operator/pull/840。
2. フォワードプラグイン
Fluent Bit は、新しい入力プラグイン Forward を追加しました。これは、Fluent Bit と Fluentd がピア デバイス間でメッセージをルーティングするために使用するプロトコルです。このプラグインを使用して、転送メッセージの入力を監視します。
関連 PR: https://github.com/fluent/fluent-operator/pull/843。
3.GELFプラグイン
Fluent Bit には、Graylog 拡張ログ形式である出力プラグイン GELF が追加されました。GELF 出力プラグインを使用すると、TLS、TCP、または UDP プロトコルを使用して GELF 形式のログを Graylog 入力に直接送信できます。
関連 PR: https://github.com/fluent/fluent-operator/pull/882。
4. OpenTelemetry プラグイン
Fluent Bit に入力プラグイン OpenTelemetry が追加されました。OpenTelemetry プラグインを使用すると、OTLP 仕様に従って、さまざまな OpenTelemetry 出力プログラム、OpenTelemetry コレクター、または Fluent Bit の OpenTelemetry 出力プラグインから OpenTelemetry 形式でデータを取得できます。
関連PR:https://github.com/fluent/fluent-operator/pull/890。
5.HTTPプラグイン
Fluent Bit に入力プラグイン HTTP が追加されました。HTTP 入力プラグインを使用すると、Fluent Bit は HTTP ポートを開いて、そのポートにデータを動的にルーティングできます。このプラグインは動的タグをサポートしているため、同じ入力を介して異なるタグを持つデータを送信できます。
関連 PR: https://github.com/fluent/fluent-operator/pull/904。
6.MQTTプラグイン
Fluent Bit に入力プラグイン MQTT が追加されました。MQTT 入力プラグインを使用すると、TCP 接続を通じて MQTT 制御パケットからメッセージ/データを取得できます。受信する受信データは JSON マップ形式である必要があります。
関連 PR: https://github.com/fluent/fluent-operator/pull/911。
7.Collectedプラグイン
Fluent Bit に入力プラグイン MQTT が追加されました。Collectd 入力プラグインを使用すると、Collectd サーバーからデータを受信できます。
関連 PR: https://github.com/fluent/fluent-operator/pull/914。
Fluentd の主な変更点
Grok パーサー プラグインを追加しました
Fluentd は Grok パーサー プラグインを追加します。Grok は、サードパーティのパーサーです。Grok は、正規表現を単純化して再利用するマクロです。元々は Jordan Sissel によって開発されました。Grok パーサー プラグインは、Grok パターンに精通している場合に役立ちます。
Grok パーサー プラグインのバージョンには次のものが含まれます。
fluent-plugin-grok-parser | 流暢な | ルビー |
---|---|---|
>= 2.0.0 | >= v0.14.0 | >= 2.1 |
< 2.0.0 | >= v0.12.0 | >= 1.9 |
関連 PR: https://github.com/fluent/fluent-operator/pull/861。
DaemonSet として実行される Fluentd のサポートを追加しました
現在、Fluentd は StatefulSet として実行されますが、Fluentd を完全なログ プロセスとして実行したいと考えています。そのためには、Fluentd にいくつかの入力プラグイン (tail、systemd) を含める必要があります。したがって、Fluentd を DaemonSet として実行する必要があります。
この PR では、Fluentd を DaemonSet として実行するオプションのサポートを導入しました。デフォルトでは、Fluentd は StatefulSet として実行されますが、ユーザーはagent
モードを有効にすることで Fluentd を DaemonSet として実行することもできます。モードが開始されている場合agent
、DaemonSet の作成時に StatefulSet 固有のフィールドは無視され、その逆も同様です。
さらに、Fluend は DaemonSet または StatefulSet として実行できますが、DaemonSet と StatefulSet の両方として実行することはできません。DaemonSet を有効にすると、StatefulSet が削除され、Fluentd が DaemonSet として実行されます。
関連 PR: https://github.com/fluent/fluent-operator/pull/839。
その他の最適化
- Fluent-bit 構成で重複するクラスター パーサーを削除します。
- Fluent Bit の多くのデフォルト パラメータを調整します。
- ImagePullSecret パラメータを Fluentd に追加します。
- Fluent Bit をバージョン 2.1.9 にアップグレードします。
- Fluent Operator のヘルム チャートのさまざまなパラメーターを最適化します。
- ...
貢献者への謝辞
このバージョンには 16 人の寄稿者がいます。彼らは次のとおりです。
- グレゴリクエラ
- ニーファン
- わがままウィザード
- アレクサンドルヴィラン
- ヤシュ97
- フスニアルハムダニ
- L1ghtman2k
- ウェンチャジュン
- レオンシュタインホイザー
- ヴィンセント・ヴィンフ
- ラジャン-226
- シャーキール
- イコレスニコヴレビズト
- カラン56625
- ajax-bychenok-y
- sjliu1
これらの寄稿者のほとんどは海外から来ており、Fluent Operator が世界的なプロジェクトであり、ますます人気と影響力が高まっていることを示しています。皆さんもこのオープンソース プロジェクトやコミュニティに参加することを大歓迎です。
新しいバージョンの具体的な変更点については、リリース ノート: https://github.com/fluent/fluent-operator/releases/tag/v2.5.0 も参照してください。
この記事は、複数の記事を公開するブログOpenWriteによって公開されています。