mumrah commented on code in PR #14160:
URL: https://github.com/apache/kafka/pull/14160#discussion_r1303452266


##########
docs/ops.html:
##########
@@ -3603,39 +3603,45 @@ <h4 class="anchor-heading"><a id="kraft_missing" 
class="anchor-link"></a><a href
   <ul>
     <li>Supporting JBOD configurations with multiple storage directories</li>
     <li>Modifying certain dynamic configurations on the standalone KRaft 
controller</li>
-    <li>Delegation tokens</li>
   </ul>
 
   <h4 class="anchor-heading"><a id="kraft_zk_migration" 
class="anchor-link"></a><a href="#kraft_zk_migration">ZooKeeper to KRaft 
Migration</a></h4>
 
   <p>
     <b>ZooKeeper to KRaft migration is considered an Early Access feature and 
is not recommended for production clusters.</b>
+    Please report issues with ZooKeeper to KRaft migration using the
+    <a href="https://issues.apache.org/jira/projects/KAFKA"; 
target="_blank">project JIRA</a> and the "kraft" component.
   </p>
 
-  <p>The following features are not yet supported for ZK to KRaft 
migrations:</p>
-
+  <h3>Terminology</h3>
   <ul>
-    <li>Downgrading to ZooKeeper mode during or after the migration</li>
-    <li>Other features <a href="#kraft_missing">not yet supported in 
KRaft</a></li>
+    <li>Brokers that are in <b>ZK mode</b> store their metadata in Apache 
ZooKepeer. This is the old mode of handling metadata.</li>
+    <li>Brokers that are in <b>KRaft mode</b> store their metadata in a KRaft 
quorum. This is the new and improve mode of handling metadata.</li>
+    <li><b>Migration</b> is the process of moving cluster metadata from 
ZooKeeper into a KRaft quorum.</li>
   </ul>
 
-  <p>
-    Please report issues with ZooKeeper to KRaft migration using the
-    <a href="https://issues.apache.org/jira/projects/KAFKA"; 
target="_blank">project JIRA</a> and the "kraft" component.
-  </p>
+  <h3>Migration Phases</h3>
+  In general, the migration process passes through several phases.
 
-  <h3>Terminology</h3>
-  <p>
-    We use the term "migration" here to refer to the process of changing a 
Kafka cluster's metadata
-    system from ZooKeeper to KRaft and migrating existing metadata. An 
"upgrade" refers to installing a newer version of Kafka. It is not recommended 
to
-    upgrade the software at the same time as performing a metadata migration.
-  </p>
+  <ul>
+    <li>In the <b>initial phase</b>, all the brokers are in ZK mode, and there 
is a ZK-based controller.</li>
+    <li>During the <b>initial metadata load</b>, a KRaft quorum loads the 
metadata from ZooKeeper,</li>
+    <li>In <b>hybrid phase</b>, some brokers are in ZK mode, but there is a 
KRaft controller.</li>
+    <li>In <b>dual-write phase</b>, all brokers are KRaft, but the KRaft 
controller is continuing to write to ZK.</li>
+    <li>When the migration has been <b>finalized</b>, we no longer write 
metadata to ZooKeeper.</li>
+  </ul>

Review Comment:
   As far as the controller is concerned, there is only pre-migration, 
migration, and post-migration states. This is what's actually stored in the 
log. The "migration" state encompasses the _operational_ states we call Hybrid 
and Dual-Write. Hybrid is really a sub-set of Dual-Write where we have some 
number of ZK brokers. In both Hybrid and Dual-Write we're doing the double 
metadata writes.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscr...@kafka.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to