This is an automated email from the ASF dual-hosted git repository. jsancio pushed a commit to branch 3.3 in repository https://gitbox.apache.org/repos/asf/kafka.git
The following commit(s) were added to refs/heads/3.3 by this push: new c3c36efa63d MINOR; Update upgrade documentation for 3.3 (#12550) c3c36efa63d is described below commit c3c36efa63df5c0bb78870dd59787525f8dee8f0 Author: José Armando García Sancio <jsan...@users.noreply.github.com> AuthorDate: Thu Aug 25 17:27:14 2022 -0700 MINOR; Update upgrade documentation for 3.3 (#12550) --- docs/documentation.html | 3 ++- docs/upgrade.html | 42 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 44 insertions(+), 1 deletion(-) diff --git a/docs/documentation.html b/docs/documentation.html index 07014db7af4..0abbae87181 100644 --- a/docs/documentation.html +++ b/docs/documentation.html @@ -33,7 +33,7 @@ <!--//#include virtual="../includes/_docs_banner.htm" --> <h1>Documentation</h1> - <h3>Kafka 3.2 Documentation</h3> + <h3>Kafka 3.3 Documentation</h3> Prior releases: <a href="/07/documentation.html">0.7.x</a>, <a href="/08/documentation.html">0.8.0</a>, <a href="/081/documentation.html">0.8.1.X</a>, @@ -56,6 +56,7 @@ <a href="/28/documentation.html">2.8.X</a>, <a href="/30/documentation.html">3.0.X</a>. <a href="/31/documentation.html">3.1.X</a>. + <a href="/32/documentation.html">3.2.X</a>. <h2 class="anchor-heading"><a id="gettingStarted" class="anchor-link"></a><a href="#gettingStarted">1. Getting Started</a></h2> <h3 class="anchor-heading"><a id="introduction" class="anchor-link"></a><a href="#introduction">1.1 Introduction</a></h3> diff --git a/docs/upgrade.html b/docs/upgrade.html index c72afec4ce3..7d1e71efdba 100644 --- a/docs/upgrade.html +++ b/docs/upgrade.html @@ -19,6 +19,48 @@ <script id="upgrade-template" type="text/x-handlebars-template"> +<h4><a id="upgrade_3_3_0" href="#upgrade_3_3_0">Upgrading to 3.3.0 from any version 0.8.x through 3.2.x</a></h4> + +<p><b>If you are upgrading from a version prior to 2.1.x, please see the note below about the change to the schema used to store consumer offsets. + Once you have changed the inter.broker.protocol.version to the latest version, it will not be possible to downgrade to a version prior to 2.1.</b></p> + +<p><b>For a rolling upgrade:</b></p> + +<ol> + <li>Update server.properties on all brokers and add the following properties. CURRENT_KAFKA_VERSION refers to the version you + are upgrading from. CURRENT_MESSAGE_FORMAT_VERSION refers to the message format version currently in use. If you have previously + overridden the message format version, you should keep its current value. Alternatively, if you are upgrading from a version prior + to 0.11.0.x, then CURRENT_MESSAGE_FORMAT_VERSION should be set to match CURRENT_KAFKA_VERSION. + <ul> + <li>inter.broker.protocol.version=CURRENT_KAFKA_VERSION (e.g. <code>3.2</code>, <code>3.1</code>, etc.)</li> + <li>log.message.format.version=CURRENT_MESSAGE_FORMAT_VERSION (See <a href="#upgrade_10_performance_impact">potential performance impact + following the upgrade</a> for the details on what this configuration does.)</li> + </ul> + If you are upgrading from version 0.11.0.x or above, and you have not overridden the message format, then you only need to override + the inter-broker protocol version. + <ul> + <li>inter.broker.protocol.version=CURRENT_KAFKA_VERSION (e.g. <code>3.2</code>, <code>3.1</code>, etc.)</li> + </ul> + </li> + <li>Upgrade the brokers one at a time: shut down the broker, update the code, and restart it. Once you have done so, the + brokers will be running the latest version and you can verify that the cluster's behavior and performance meets expectations. + It is still possible to downgrade at this point if there are any problems. + </li> + <li>Once the cluster's behavior and performance has been verified, bump the protocol version by editing + <code>inter.broker.protocol.version</code> and setting it to <code>3.3</code>. + </li> + <li>Restart the brokers one by one for the new protocol version to take effect. Once the brokers begin using the latest + protocol version, it will no longer be possible to downgrade the cluster to an older version. + </li> + <li>If you have overridden the message format version as instructed above, then you need to do one more rolling restart to + upgrade it to its latest version. Once all (or most) consumers have been upgraded to 0.11.0 or later, + change log.message.format.version to 3.3 on each broker and restart them one by one. Note that the older Scala clients, + which are no longer maintained, do not support the message format introduced in 0.11, so to avoid conversion costs + (or to take advantage of <a href="#upgrade_11_exactly_once_semantics">exactly once semantics</a>), + the newer Java clients must be used. + </li> +</ol> + <h5><a id="upgrade_330_notable" href="#upgrade_330_notable">Notable changes in 3.3.0</a></h5> <ul> <li>Introduced a new API <code>addMetricIfAbsent</code> to <code>Metrics</code> which would create a new Metric if not existing or return the same metric