Configure names and configuration of control topics.
To execute K2K, you must agree to the EULA and secure a free license.
Accept the EULA by setting license.acceptEula to true .
In a K2K setup, up to three topics are required for state coordination and progress tracking, depending on the feature used. See Coordination and Assignment for details.
Environment with all three topics
Utilize these files to initiate an replication instance exercising all three control topics.
To customize control topic names in the K2K application, modify these configuration properties:
coordination.kafka.commit.topic
coordination.kafka.assignement.topic
metrics.kafka.topic
k2k-pipeline.ymlSee it in action
K2K can operate using the same topic name for both assignment and offset commit. However, the metrics topic should always be separate, as it receives more messages and, unlike the previous topics, is not intended for compaction.
Note: K2K instances (even if handling different pipeline definitions) can safely reuse the same control topics.
Customizing configurations
Enable auto-creation to ensure K2K creates control topics only if they are missing. To prevent interference from previous steps, execute:
Specify the properties of control topics as indicated:
For each control topic, the final configuration is created by merging the common configuration section with the specific section for that topic.
By default, assignments and commits are created as compacted topics. Modifying the cleanup policy might cause K2K to fail at startup. Although you can disable control topic validation using features.validateControlTopicSettings, it is not advisable. Using non-compacted topics can degrade performance.