Repository: kafka Updated Branches: refs/heads/trunk b049606ae -> 4efa833f4
MINOR: Clarify 0.10.1.0 upgrade docs This is a minor change to fix the most glaring issues. We have another JIRA to revamp the upgrade docs. Author: Ismael Juma <[email protected]> Reviewers: Jeff Klukas <[email protected]>, Jiangjie Qin <[email protected]>, Jason Gustafson <[email protected]> Closes #1971 from ijuma/kafka-4257-upgrade-docs-inconsitencies Project: http://git-wip-us.apache.org/repos/asf/kafka/repo Commit: http://git-wip-us.apache.org/repos/asf/kafka/commit/4efa833f Tree: http://git-wip-us.apache.org/repos/asf/kafka/tree/4efa833f Diff: http://git-wip-us.apache.org/repos/asf/kafka/diff/4efa833f Branch: refs/heads/trunk Commit: 4efa833f45c5765ce3a5179f20fd384e2f2e210c Parents: b049606 Author: Ismael Juma <[email protected]> Authored: Thu Oct 6 09:39:26 2016 -0700 Committer: Jason Gustafson <[email protected]> Committed: Thu Oct 6 09:39:26 2016 -0700 ---------------------------------------------------------------------- docs/upgrade.html | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/kafka/blob/4efa833f/docs/upgrade.html ---------------------------------------------------------------------- diff --git a/docs/upgrade.html b/docs/upgrade.html index ca16327..d140ec2 100644 --- a/docs/upgrade.html +++ b/docs/upgrade.html @@ -19,26 +19,29 @@ <h3><a id="upgrade" href="#upgrade">1.5 Upgrading From Previous Versions</a></h3> -<h4><a id="upgrade_10_1" href="#upgrade_10_1">Upgrading from 0.10.0.X to 0.10.1.0</a></h4> +<h4><a id="upgrade_10_1" href="#upgrade_10_1">Upgrading from 0.8.x, 0.9.x or 0.10.0.X to 0.10.1.0</a></h4> 0.10.1.0 has wire protocol changes. By following the recommended rolling upgrade plan below, you guarantee no downtime during the upgrade. However, please notice the <a href="#upgrade_10_1_breaking">Potential breaking changes in 0.10.1.0</a> before upgrade. <br> -Note: Because new protocols are introduced, it is important to upgrade your Kafka clusters before upgrading your clients. +Note: Because new protocols are introduced, it is important to upgrade your Kafka clusters before upgrading your clients (i.e. 0.10.1.x clients +only support 0.10.1.x or later brokers while 0.10.1.x brokers also support older clients). <p><b>For a rolling upgrade:</b></p> <ol> <li> Update server.properties file on all brokers and add the following properties: <ul> - <li>inter.broker.protocol.version=CURRENT_KAFKA_VERSION (e.g. 0.8.2, 0.9.0.0 or 0.10.0.0).</li> + <li>inter.broker.protocol.version=CURRENT_KAFKA_VERSION (e.g. 0.8.2.0, 0.9.0.0 or 0.10.0.0).</li> <li>log.message.format.version=CURRENT_KAFKA_VERSION (See <a href="#upgrade_10_performance_impact">potential performance impact following the upgrade</a> for the details on what this configuration does.) </ul> </li> - <li> Upgrade the brokers. This can be done a broker at a time by simply bringing it down, updating the code, and restarting it. </li> - <li> Once the entire cluster is upgraded, bump the protocol version by editing inter.broker.protocol.version and setting it to 0.10.1.0. NOTE: If your previous message format version is before 0.10.0, you shouldn't touch log.message.format.version yet - this parameter should only change once all consumers have been upgraded to 0.10.0.0 or later.</li> + <li> Upgrade the brokers one at a time: shut down the broker, update the code, and restart it. </li> + <li> Once the entire cluster is upgraded, bump the protocol version by editing inter.broker.protocol.version and setting it to 0.10.1.0. </li> + <li> If your previous message format is 0.10.0, change log.message.format.version to 0.10.1 (this is a no-op as the message format is the same for both 0.10.0 and 0.10.1). + If your previous message format version is lower than 0.10.0, do not change log.message.format.version yet - this parameter should only change once all consumers have been upgraded to 0.10.0.0 or later.</li> <li> Restart the brokers one by one for the new protocol version to take effect. </li> - <li> Once all consumers have been upgraded to 0.10.0, change log.message.format.version to 0.10.1 on each broker and restart them one by one. - </li> + <li> If log.message.format.version is still lower than 0.10.0 at this point, wait until all consumers have been upgraded to 0.10.0 or later, + then change log.message.format.version to 0.10.1 on each broker and restart them one by one. </li> </ol> <p><b>Note:</b> If you are willing to accept downtime, you can simply take all the brokers down, update the code and start all of them. They will start with the new protocol by default.
