td-agent4がJul 8, 2020にリリースされた。
td-agent4では、パッケージングに利用していたOmnibusによるパッケージングを廃止し、
新しくtd-agent-builderによるパッケージングを行うように変更を行っている。開発時のパッケージングの手間を大幅に解消している。
td-agent4では下記が主にtd-agent3から変更されている。
- opensslなどのライブラリをバンドルせず、System側のライブラリを利用するようにしている。これにより、パッケージのサイズ自体を大幅に削減している。
- Postgresqlなどの3rd partyのGemの削除
- omnibus特有の
embedded
ディレクトリの削除。これにより、バンドルされているrubyなどのパスが変わっている。例えば、fluent-catのパスは/opt/td-agent/embedded/bin/fluent-cat
から/opt/td-agent/bin/fluent-cat
に変更している。 - ruby, jemallocなどのコアコンポーネントのアップデート。特にtd-agent3ではRuby2.4を利用しており、すでにEOLがきてしまっている(https://www.ruby-lang.org/en/news/2020/04/05/support-of-ruby-2-4-has-ended/)ので、td-agent4では ruby 2.7をバンドルしている。
- サポートされるOSはこちら td-agent v2 vs v3 vs v4 - Fluentd
- Arm64もサポートしている
- パッケージダウンロード先は
https://td-agent-package-browser.herokuapp.com/4
Ref. td-agent-builder/README.md at master · fluent-plugins-nursery/td-agent-builder · GitHub
また、td-agent 3/4の間ではfluentd自体の大きな変更はなく、その時点での最新のfluentd v1が利用されている。
インストール時に特別なことをしていない場合については、yum updateなどでパッケージをアップデートすることで動作する。もしくはクリーンインストールしてもよい。