2025年8月29日に、Fluentdの安定版パッケージの新シリーズである、Fluent Package v6 LTSをリリースします。
本記事では、Fluent Package v6 LTSへのアップデート方法について紹介します。
Fluent Package v6 LTSとは
Fluent Package v6 LTSは、Fluentdの長期サポート・安定版パッケージです。
現在のLTS版(長期サポート・安定版)であるFluent Package v5 LTSは、2025年末でサポート終了となります。 その次期LTS版として、Fluent Package v6 LTSは2025年8月29日にリリース予定で、少なくとも2027年末までサポートされます。
詳細は次の記事をご覧ください。
Fluent Package v6 LTSへのアップデート手順例
例として、次のようにアップデートすることが可能です。
- 追加されているプラグインを確認します
- Fluentdサービスを停止します
- レジストリをバックアップします(Windows版のみ)
- Fluent Package v6 LTS をインストールします
- プラグインをインストールします
/etc/fluent/conf.d/ディレクトリーにユーザー側で設定ファイルを置いている場合は、設定を更新します- Fluentdサービスを再開します
以下、各手順などの説明です。
1. 追加されているプラグインを確認します
現バージョン(アップデート前のバージョン)がFluent Package v5.0.2(Windows版はv5.0.3)以降であれば、 パッケージに同梱されているfluent-diagtoolを使うことで、追加されているプラグインを確認できます。
次のように実行します。
$ /opt/fluent/bin/fluent-diagtool -t fluentd -o /tmp
-t fluentd: 必須です-o /tmp: 結果の出力先ディレクトリーを/tmpに指定しています。お好みの出力先を指定してください。
実行すると、標準出力に様々な情報が出力されます。 このうち、以下の部分に手動インストールプラグイン一覧が出力されています。
(...)
2025-07-17 08:13:31 +0000: [Diagtool] [INFO] [Collect] fluent-package manually installed gem information is stored in /tmp/20250717081331/output/gem_local_list.output
2025-07-17 08:13:31 +0000: [Diagtool] [INFO] [Collect] fluent-package manually installed gems:
2025-07-17 08:13:31 +0000: [Diagtool] [INFO] [Collect] * fluent-plugin-remote_syslog
(...)
この例では、追加されているプラグインはfluent-plugin-remote_syslogのみだと分かります。
また、この情報は次のファイルに出力されるので、ファイルから確認することも可能です。
/{指定ディレクトリー}/{実行日時}/output/gem_local_list.output
上記の例では、/tmp/20250717081331/output/gem_local_list.outputファイルに一覧が出力されたことが分かります。
Fluent Package v5.0.2よりも古いバージョンの場合は、 パッケージに同梱されているfluent-diagtoolのバージョンが古いため、 事前に以下のコマンドでツールのアップデートが必要です。
$ sudo fluent-gem install fluent-diagtool
もしfluent-diagtoolをアップデートできない場合には、以下のコマンドで全てのプラグインリストを取得し、追加インストールが必要なものをピックアップしてください。
$ fluent-gem list fluent-plugin
※ Windows版v5.0.2以下はfluent-diagtoolが利用できない不具合があるため、fluent-gem list fluent-pluginで確認してください。
2. Fluentdサービスを停止します
起動中のFluentdサービスを停止してください。 複数のFluentdサービスが起動している場合はすべて停止してください。 その際、フォワーダー、アグリゲーター、の順に停止してください。
3. レジストリをバックアップします(Windows版のみ)
Windows版では、ロールバック時に必要となるレジストリ設定をバックアップします。 管理者権限のPowerShellもしくはコマンドプロンプトで次をコマンドを実行してレジストリをバックアップしてください。
reg export HKLM\System\CurrentControlSet\Services\fluentdwinsvc C:\fluent-package-5_fluentdwinsvc.reg
4. Fluent Package v6 LTS をインストールします
Fluent Package v6 LTS をインストールします。
RPM Package (Red Hat Linux)の例:
curl -fsSL https://fluentd.cdn.cncf.io/sh/install-redhat-fluent-package6-lts.sh | sh
各環境のインストール方法は、リリース時に次の公式ドキュメントに反映されますので、ご参照ください。
5. プラグインをインストールします
手動で追加したプラグインは、再インストールが必要です。 「1. 追加されているプラグインを確認します」で確認した追加プラグインを、インストールし直します。
再インストール例:
$ sudo fluent-gem install fluent-plugin-remote_syslog
6. /etc/fluent/conf.d/ディレクトリーにユーザー側で設定ファイルを置いている場合は、設定を更新します
Fluent Package v6から、デフォルトで/etc/fluent/conf.d/ディレクトリーにある設定ファイルを自動で追加読み込みするようになります。
もし、以前のバージョンでこのディレクトリーを手動作成して使用していた場合は、v6でそのディレクトリーの設定ファイルを2重に読み込むことになるため、サービス開始の前に対応が必要です。 (@includeと自動読み込みの双方が行われると、2重読み込みとなります)
v6.0.0時点では、Linux版(RPM版、DEB版)にて、パッケージ側で次の設定ファイルを配置します。
/etc/fluent/conf.d/obsolete_plugins.conf/etc/fluent/conf.d/update_notifier.conf
これら以外の設定ファイルが存在する場合は、ユーザー側で配置して利用されている設定ファイルになります。
この場合は、次のようにconfig_include_dirを空文字""に設定して、自動読み込み機能を無効化し、重複読み込みを防ぐことができます。
<system>
config_include_dir ""
</system>
この機能を無効化すると、v6から追加された次の機能が動作しなくなりますが、動作に支障はありません。
fluent-plugin-obsolete-plugins- コミュニティーにおいてobsolete(古いので非推奨)と認定されているプラグインを利用している場合にログで通知する
fluent-package-update-notifier- 新バージョンのリリースの有無を確認して、ログで通知する
もしこれらの新機能や、このディレクトリーの自動読み込み機能を活かしたいという場合は、ユーザー側の設定ファイルを別のディレクトリーに移動するなどの対応も可能です。
なお、この点に関しては、コミュニティーの日本語Q&Aでもご質問があり、回答をしておりますので、そちらもご覧ください。
7. Fluentdサービスを再開します
「2. Fluentdサービスを停止します」で停止したFluentdサービスを再開します。
複数のFluentdサービスが存在する場合は、停止時とは逆に、アグリゲーター、フォワーダー、の順に再開してください。
補足: ゼロダウンタイム・アップデートの設定(Windows以外)
次回のアップデートからは、サービスを停止せずにアップデートすることで、ゼロダウンタイム・アップデート機能を利用できます(Windows以外)。
ゼロダウンタイム・アップデートを行う際に、アップデート後のリスタートをどのように行うかを設定可能です。設定は次の2通りあります。
- auto (デフォルト): アップデート後に自動でゼロダウンタイム・リスタートを実行
- manual: アップデート後に手動でゼロダウンタイム・リスタートを実行。アップデート後の自動プラグインインストールや自動リスタートを抑止します。
この変更はいつでも可能で、設定反映のためのリスタートなどは必要ありません。詳細については次のドキュメントをご覧下さい。
Fluent Package v6 LTSからFluent Package v5 へのロールバック手順例
1. Fluentdサービスを停止します
起動中のFluentdサービスを停止してください。 複数のFluentdサービスが起動している場合はすべて停止してください。 その際、フォワーダー、アグリゲーター、の順に停止してください。
2. Fluent Package v5 LTS をインストールします
Linux版は、Fluent Package v5 LTS を上書きインストールします。事前にv6をアンインストールする必要はありません。
Windows版は事前にFluent Package v6 LTS をアンインストールし、Fluent Package v5 LTSをインストールします。
手動インストールしたプラグインはファイルとして環境に残るため、 元のバージョンに戻すと最初から追加されている状態となります。
そのため、プラグインの再インストールは不要です。
3. レジストリを復元します(Windows版のみ)
Windows版は、管理者権限のPowerShellもしくはコマンドプロンプトで、次のコマンドを実行してレジストリの復元をおこなってください。
reg import C:\fluent-package-5_fluentdwinsvc.reg
これによって、Windowsサービスの自動起動設定や、起動時コマンドライン引数を復元することができます。
4. Fluentdサービスを再開します
停止したFluentdサービスを再開します。 複数のFluentdサービスが存在する場合は、停止時とは逆に、アグリゲーター、フォワーダー、の順に再開してください。
Treasure Agent (td-agent)からのアップデート
Treasure Agent (td-agent) v4をご利用の環境では、基本的には上記の手順と同様にTreasure Agent (td-agent) v4からFluent Package v6 LTSに直接アップデートすることが可能です。
ただし、Treasure Agent (td-agent) v4の環境からアップデートする際にはいくつか注意が必要な点があります。 詳しくは、次の記事をご覧ください。
また、Treasure Agent (td-agent) v3以前の場合は、Fluent Package v6 LTSに直接アップデートすることはできません。 「Treasure Agent (td-agent) v3からFluent Package v5へのアップグレード方法」を参考に、 一度Treasure Agent (td-agent) v4にアップデートした上でFluent Package v6 LTSへアップデートしてください。
まとめ
本記事では一般的なFluent Package v6 LTSへのアップデート手順について紹介しました。
クリアコードはTreasure Agent (td-agent)やFluent Packageのアップデートについてサポートしており、 Fluentdサービスをカスタマイズして運用している環境などのアップデート手順について 個別に対応できます。 詳しくはFluentdのサポートサービスをご覧いただき、お問い合わせフォームよりお気軽にお問い合わせください。
日本コミュニティ向けのXアカウントでは、日々、Fluentdに関する情報を発信しております。 ぜひ @fluentd_jp をフォローしてください!