Rabbit Slide Show

Fluentd Update – Fluentdとパッケージの最新動向について

Description

Open Source Conference 2024 Online/Spring slide.

Text

Page: 1

Fluentd Update
Fluentdとパッケージの最新動向について
Kentaro Hayashi, Daijiro Fukuda
Fluentd Project
Open Source Conference 2024 Online/Spring
2024-03-01
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 2

自己紹介
✓ Fluentdプロジェクトのメンテナー
https://github.com/fluent/fluentd/graphs/contributors?
from=2022-01-01&to=2024-02-21&type=c
https://github.com/fluent/fluent-package-builder/graphs/contributors?
from=2022-01-01&to=2024-02-21&type=c
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 3

今回の発表内容
✓ Fluentdとは
✓ OSC2022 Online/Spring以降のできごと
✓ Fluent Package LTSとは
✓ Fluentd開発の最新トピック
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 4

今回の発表内容
✓ Fluentdとは
✓ OSC2022 Online/Spring以降のできごと
✓ Fluent Package LTSとは
✓ Fluentd開発の最新トピック
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 5

Fluentdとは
Fluentd is an open source data collector that
unifies data collection and consumption.
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 6

Fluentdのないログ収集の世界
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 7

Fluentdのあるログ収集の世界
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 8

Fluentdを選ぶ理由
✓ Flexibility
✓ Scalability
✓ Open source and community
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 9

Flexibility
✓ 1000以上のプラグインを利用可能
✓ プラグインを組み合わせることで
様々な用途に利用可能
✓ カスタムプラグインで拡張可能
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 10

プラグインは随時追加されていく
✓ https://www.fluentd.org/plugins/all
✓ 定期的にプラグインのリストを更新中
✓ 2/末時点で1164プラグイン
直近2023/10以降だけでも+10増えた
Refs: [master], {upstream/master}
Author:
ashie <ashie@users.noreply.github.com>
AuthorDate: Mon Feb 12 14:13:34 2024 +0000
Commit:
ashie <ashie@users.noreply.github.com>
CommitDate: Mon Feb 12 14:13:34 2024 +0000
Update plugins.json
added plugins:
* fluent-plugin-kafka-status
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 11

Scalability
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 12

Open source and community
✓ 開発へ参加できるよ
✓ https://github.com/fluent/fluentd
✓ プラグインがコミュニティでメンテナンス
されている
✓ https://github.com/fluent-plugins-nursery
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 13

今回の発表内容
✓ Fluentdとは
✓ OSC2022 Online/Spring以降のできごと
✓ Fluent Package LTSとは
✓ Fluentd開発の最新トピック
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 14

OSC2022での発表(1)
https://slide.rabbit-shocker.org/authors/kenhys/osc2022-online-spring-fluentd/
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 15

OSSを継続的にメンテナンスしていく
仕組みづくり ( OSC2022 )
✓ パッケージをリリースするための仕組みを
整備
✓ プラグインを引き取る仕組みの紹介
✓ よいフィードバックをもらうために工夫し
たことの紹介
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 16

OSC2022での発表(2)
https://slide.rabbit-shocker.org/authors/ashie/osc2022-online-spring-fluentd/
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 17

Fluentdの最新情報 (OSC2022)
✓ 開発体制の変化
✓ v1.12〜v1.14のリリース内容の紹介
✓ 最新情報の入手方法を案内
✓ 今後の課題について
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 18

当時の発表内容のその後(1)
✓ フィードバックをもらう工夫として
GitHub Issue Templateを整備
😀
✓ ⇨サポートに必要な情報をもらいやすくなった
定型的な項目を記入して報告してくれる世界
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 19

当時の発表内容のその後(2)
✓ GitHub Discussionsでのコミュニティサ
ポート
😞
✓ 自由記入欄なので最初から必要な前提条件を共有
してもらいにくい
✓ わかっている人でないと相互の助け合いがしにく
い
✓ ⇨ GitHub DiscussionsのQ&Aにフォームテンプレートを導入
✓ Q&A(Japanese)カテゴリの新設
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 20

Issue/Discussion テンプレート
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 21

当時の発表内容のその後(3)
✓ td-agentの名前を変更するかも
✓ ⇨fluent-packageに変更しました!
✓ LTS版を提供するかも
✓ ⇨fluent-packageのLTS版提供をはじめました
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 22

当時の発表内容のその後(4)
✓ v1.15系のリリース
✓ YAML形式の設定ファイルを許容
GitHub#3712
✓ out_fileの書き込み処理競合を修正
GitHub#3808
✓ v1.16系のリリース
✓ in_tailの不具合修正
GitHub#4208,GitHub#4327
✓ 強制電源断等によるファイル破損への対応の強化
GitHub#3970
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 23

Open Source Summit Japan 2023で
の発表
https://slide.rabbit-shocker.org/authors/daipom/open-source-summit-
japan-2023-fluent-package/
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 24

OSSummit Open Source Summit
Japan 2023での発表(2)
✓ Fluent Package LTSの紹介
✓ アップグレードするときの注意事項案内
✓ 主要な変更点の紹介
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 25

今回の発表内容
✓ Fluentdとは
✓ OSC2022 Online/Spring以降のできごと
✓ Fluent Package LTSとは
✓ Fluentd開発の最新トピック
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 26

Fluent Package LTS
✓ 2023年8月に v5 としてリリース
✓ td-agent v4の後継パッケージ
✓ 2023年12月に td-agent v4.x はサポート終了
https://www.fluentd.org/blog/schedule-for-td-agent-4-eol
✓ 長期の安定運用におすすめ
✓ セキュリティー、バグフィックスのみ
✓ サポート期間を事前アナウンス
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 27

td-agent
✓ 元々は Treasure Data 主体
✓ 現在は コミュニティ 主体
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 28

Fluent Package
✓ コミュニティ主体であることをパッケージ
名に反映!
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 29

通常版と LTS 版との違い
通常版
LTS (長期サポート版)
Fluentd Update - Fluentdとパッケージの最新動向について
サポート期間
約3ヶ月
(td-agent相当)
約2年
(事前アナウンス)
Powered by Rabbit 3.0.4

Page: 30

リリースサイクル
Scheduled Support lifecycle for Fluent Package
v4.5.0
v4.5.1
v4
v4.5.2
v5.0.0
v5.0.1
v5.0.2
v5.x
v5.0.x (fluentd 1.16.x T.B.D.)
v5.1.x (fluentd 1.17.x T.B.D.)
v5.0.x (LTS fluentd 1.16.x)
v5.0 (LTS)
Fluent Package v6.0.x (LTS)
2023-07
2023-10
2024-01
2024-04
2024-07
2024-10
2025-01
2025-04
https://www.fluentd.org/blog/fluent-package-scheduled-lifecycle
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 31

LTSへの
移行
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 32

LTS版へ移行するメリット
✓ 長期間に渡り安心してアップデート可能!
✓ メジャーアップデートを計画的に準備可
能!
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 33

td-agent v4からの移行方法
✓ 基本的には通常のインストール方法でアッ
プデート可能!
✓ 場合によってはマイグレート作業が必要
✓ 移行方法はガイドを参考にしてね!
https://www.fluentd.org/blog/upgrade-td-agent-v4-to-v5
✓ 日本語版もあるよ!
https://www.clear-code.com/blog/2024/1/24/upgrade-to-fluent-
package-v5-from-v4.html
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 34

プラグインの移行方法
✓ 独自に追加したものは再インストールが必要
✓ fluent-diagtoolで検出できるよ(v1.0.3以降)
td-agent v4では、まずツールをアップデート
Windowsでは、fluent-package v5.0.3から使えるようになる予定
$ sudo td-agent-gem install fluent-diagtool
$ /opt/td-agent/bin/fluent-diagtool -t fluentd -o /tmp
...
[Diagtool] [INFO] [Collect] td-agent manually installed gem information is
stored in tmp/20230901075350/output/gem_local_list.output
[Diagtool] [INFO] [Collect] td-agent manually installed gems:
[Diagtool] [INFO] [Collect] * fluent-plugin-concat
...
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 35

今回の発表内容
✓ Fluentdとは
✓ OSC2022 Online/Spring以降のできごと
✓ Fluent Package LTSとは
✓ Fluentd開発の最新トピック
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 36

直近のリリース予定(1)
✓ Fluentd v1.16.4
✓ チャンクのサイズ制限を超えたときに例外が発生
することがある不具合を修正
https://github.com/fluent/fluentd/pull/4342
✓ T.B.D.
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 37

直近のリリース予定(2)
✓ fluent package v5.0.3をリリース予定
✓ Fluentd v1.16.4
✓ Windowsにおける起動不具合の修正
✓ td-agentからの移行処理の改善
✓ 重複起動の防止 v5.0.4 以降
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 38

Windowsにおける起動不具合
✓ 環境によってはワーカープロセスを起動で
きない
td-agent v4.5.0以降
https://github.com/fluent/fluent-package-builder/issues/616
✓ Windowsサービスの開始がタイムアウト
エラーになることがある
fluent-package v5.0.0以降
https://github.com/fluent/fluent-package-builder/issues/618
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 39

td-agentからの移行処理改善
✓ rpm: サービスの自動起動設定を引き継げ
るように改善
https://github.com/fluent/fluent-package-builder/pull/613
✓ deb rpm: アップグレード時にファイル移
行に失敗することがある不具合を修正
空白文字などを含むファイルに対応
https://github.com/fluent/fluent-package-builder/pull/615
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 40

重複起動の防止
✓ 誤操作による重複起動の防止策を実装予定
https://github.com/fluent/fluent-package-builder/issues/611
✓ e.g. バージョン表示すべくサービス起動中に/usr/
sbin/fluentd -vを実行してはダメ
-vはデバッグログレベルの指定。--versionが正しい
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 41

今後の課題・展望(1)
✓ Fluentd
✓ OpenTelemetry対応(プロトコル仕様の拡張)
Forward Protocol Specification v1.5
✓ in_tailの機能改善と整備
✓ ダウンタイムなしの設定リロードとアップデート
✓ 2038年問題への対応
T.B.D. See https://github.com/fluent/fluentd/milestone/13
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 42

今後の課題・展望(2)
✓ Fluent Package LTS
✓ 継続的な開発・リリース
✓ fluent-packageの配布インフラをCNCFプロジェ
クトにスポンサーしてもらう
✓ 持続可能なコミュニティサポート
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Page: 43

まとめ
✓ Fluentdの長期サポートが必要ならLTS版
おすすめ!
✓ td-agent v4.xはEOLなのでfluent-package
LTSに移行しよう!
Fluentd Update - Fluentdとパッケージの最新動向について
Powered by Rabbit 3.0.4

Other slides

DebConf20 DebConf20
2020-08-25