Implementing a graceful shutdown
In production, you may experience an abrupt shutdown caused by inevitable circumstances; for example, a power outage or a sudden machine reboot. But more often, there are planned shutdowns for machine maintenance or configuration changes. In these situations, the smooth shutdown of a node in the cluster is desirable, maintaining the cluster up and running without data loss.
Getting ready
For this recipe, Kafka must be installed.
How to do it...
- First, edit the Kafka configuration file in
config/server.properties
and add the following line:
controlled.shutdown.enable=true
- Start all the nodes
- With all the cluster nodes running, shut down one broker with the following command in the Kafka installation directory:
$ bin/kafka-server-stop.sh
How it works...
If the setting for a controlled shutdown is enabled, it ensures that a server shutdown happens properly as follows:
- It writes all the logs to disk so that there are no issues with logs when you restart the broker
- If this...