Zero-downtime restart
Last updated
Last updated
This feature supports a complete restart of Fluentd. This restarts Fluentd so that some input plugins don't have down time.
Supported standard input plugins are as follows.
in_udp
v1.18.0
in_tcp
v1.18.0
in_syslog
v1.18.0
If these input plugins are down, client applications may fail to send data. You can use this feature to completely restart Fluentd without losing data for these plugins even if that client does not have a resend feature.
You can use this feature in the following ways.
Receive SIGUSR2
.
Spawn a new supervisor.
Take over shared sockets.
Launch new workers, and stop old processes in parallel.
Launch new workers with Source Only Mode.
In addition to the source-only mode limitation, Fluentd further limits the starting pluings to only those that support this feature.
Data received by the new workers are stored in the temporary buffer of source-only mode.
For details on the temporary buffer, see Source Only Mode - Temporary file buffer.
Send SIGTERM
to the old supervisor after 10s
delay.
The old supervisor stops and sends SIGWINCH
to the new one.
The new workers starts to run fully.
The temporary buffer of source-only mode starts to load.
See How to Write Input Plugin - zero_downtime_restart_ready?.
If this article is incorrect or outdated, or omits critical information, please let us know. Fluentd is an open-source project under Cloud Native Computing Foundation (CNCF). All components are available under the Apache 2 License.