Hi users!
We have released fluent-package v5.2.0. fluent-package is a stable distribution package of Fluentd. (successor of td-agent v4)
This release is a new release of v5.2 series.
GEM_HOME
/GEM_PATH
in fluentd.batPreviously, when upgrading the fluent-package, you had to stop the fluentd service, install the new version of the fluent-package, then install any necessary plugins, and finally restart the fluentd service.
Starting from fluent-package v5.2.0, we have introduced the zero-downtime restart feature that automatically installs the required plugins during the upgrade process and allows you to upgrade Fluentd without interrupting the logging service.
Please refer to "Advisory for upgrading with zero-downtime".
In the previous versions of msgpack gem, there was a possibility that cause DoS (Denial Of Service) when crafted message was sent to Fluentd.
When that message was sent, it might cause "NoMemoryError" on Fluentd because there is a case that msgpack try to pre-allocate huge amount of memories.
Above behavior was fixed not to pre-allocate over 32k entries (limit pre-allocated amount of memories) in msgpack 1.7.3 and bundled.
GEM_HOME
/GEM_PATH
in fluentd.batIn the previous versions, fluentd.bat doesn't set GEMHOME/GEMPATH explicitly.
If users set custom GEM_HOME
/ GEM_PATH
environment variables, the
batch file will not work as expected. Therefore, this patch will set
the appropriate values in the batch file.
We have changed so that Fluentd does not restart when the needrestart package is installed.
fluent-package v5.2.0 places /etc/needrestart/conf.d/50-fluent-package.conf
.
In this release, the bundled fluent-plugin-systemd was updated to 1.1.0. That release fixed SIGABORT error with inconsistency of memory allocator handling.
The zero-downtime restart feature can be configured by FLUENT_PACKAGE_SERVICE_RESTART
environment variable.
Please refer to following section for more details.
FLUENT_PACKAGE_SERVICE_RESTART
environmental variable
FLUENT_PACKAGE_SERVICE_RESTART
environment variable.FLUENT_PACKAGE_SERVICE_RESTART
environmental variableWe have introduced FLUENT_PACKAGE_SERVICE_RESTART
environment variable to configure the zero-downtime restart feature.
The variable exists in the following file:
/etc/sysconfig/fluentd
/etc/default/fluentd
Example:
FLUENT_PACKAGE_OPTIONS=""
# Control method to upgrade service (auto/manual) restart
FLUENT_PACKAGE_SERVICE_RESTART=auto
The service automatically restarts with zero-downtime restart feature when all of the following conditions are met:
The plugins will be automatically reinstalled if needed if your environment has an active online connection. For more details, please refer to "Automate Plugin Install for Update on Demand".
You can use this approach if you prefer to manage plugins manually or if your environment does not have offline connection. If the service was active before the update, it will not restart automatically with this configuration. You need to restart the service manually.
SIGUSR2
signal to the supervisor process, such as with kill -USR2 <PID>
systemctl restart fluentd
.If you prefer to manage plugins automatically, please set FLUENT_PACKAGE_SERVICE_RESTART
to auto
(default).
When the service restarts automatically using the zero-downtime restart feature, any missing plugins are automatically detected and reinstalled before the restart.
Previously, automatic restarts after updates were not recommended due to potential issues. If you manually install plugins, you need to reinstall them before restarting when the embedded Ruby version is updated.
To address this, this feature enables automatic plugin installation during the restart process. The steps are as follows:
fluent-plugin-
prefix.If you prefer to manage plugins manually, please set FLUENT_PACKAGE_SERVICE_RESTART
to manual
.
This is useful in cases such as:
In this mode, automatic plugin installation and restarts are disabled.
You can manually install plugins and send a SIGUSR2
signal to trigger the zero-downtime restart feature after the update.
If you use a custom unit file, such as /etc/systemd/system/fluentd.service
, please remove these 2 lines.
Environment=GEM_HOME=/opt/fluentd/lib/ruby/gems/...
Environment=GEM_PATH=/opt/fluentd/lib/ruby/gems/...
We don't need GEM_HOME
and GEM_PATH
.
They will be removed after v5.2.0, but if you use a custom unit file, you need to remove them manually.
If these variables are set, the zero-downtime restart feature may not work correctly.
It is because the new process inherits the original environment variables if using this feature.
Please refer to #713 for more details.
Please see the download page.
We plan to ship the next LTS version of fluent-package v5.0.6 on March, 2025. The content of updates are still in T.B.D.
As it was already announced Drop schedule announcement about EOL of Treasure Agent (td-agent) 4, td-agent v4 was reached EOL in Dec, 2023.
After reached EOL, td-agent v4.5.3 on Windows was released because there was a crash bug during startup on Windows. It was backported fix from fluent-package v5 as it is critical in some case. Even though this was a exceptional maintenance release, but there is no change to the fact that we already stopped maintaining td-agent v4.
We strongly recommend migrating from td-agent v4 to fluent-package v5 (LTS). See Upgrade to fluent-package v5
Subscribed to the RSS feed here.
ClearCode, Inc. is a software company specializing in the development of Free Software. We maintain Fluentd and its plugin ecosystem, and provide commercial support for them.
Fluentd is an open source data collector to unify log management.
2024-08-29: Scheduled support lifecycle announcement about Fluent Package v6
2023-08-29: Drop schedule announcement about EOL of Treasure Agent (td-agent) 4
2023-08-29: Scheduled support lifecycle announcement about Fluent Package
2023-07-31: Upgrade to fluent-package v5
2024-12-14: fluent-package v5.2.0 has been released
2024-11-29: Fluentd v1.18.0 has been released
2024-11-08: fluent-package v5.0.5 has been released
2024-08-29: Scheduled support lifecycle announcement about Fluent Package v6
2024-08-20: Fluentd v1.16.6 has been released
2024-08-19: Fluentd v1.17.1 has been released
2024-08-02: fluent-package v5.1.0 has been released
2024-07-02: fluent-package v5.0.4 has been released
2024-04-30: Fluentd v1.17.0 has been released
2024-03-29: fluent-package v5.0.3 has been released
Want to learn the basics of Fluentd? Check out these pages.
Couldn't find enough information? Let's ask the community!
You need commercial-grade support from Fluentd committers and experts?
©2010-2024 Fluentd Project. ALL Rights Reserved.
Fluentd is a hosted project under the Cloud Native Computing Foundation (CNCF). All components are available under the Apache 2 License.