Selecting topics
Choose which topics should/should not be replicated.
To execute K2K, you must agree to the EULA and secure a free license.
Accept the EULA by setting license.acceptEula to true .
K2K enables simultaneous replication of multiple topics. This section details the configuration process for replicating more than one topic at a time. We'll cover two methods for selecting topics to replicate: using regex and a fixed list.
This tutorial assumes the following files exist (See Setting up for more details):
To ensure a clean start, execute this command to reset any prior configurations from earlier tutorials.
Select Replicated Topics Using Regex
To select multiple topics using a regex pattern, specify it for the property replication[0].source.topic as shown:
replication:
- source:
topic: ".*-topic"During replication, any topics that match the regular expression and are created after replication starts will be selected and replicated to the target.
name: "my-first-replication"
features:
autoCreateControlTopics: enabled
autoCreateTopics: enabled
source:
kafka:
common:
"bootstrap.servers": "kafka-source:9092"
consumer:
"group.id": "k2k.my-first-k2k"
"metadata.max.age.ms": "1000" #refresh often
target:
kafka:
common:
"bootstrap.servers": "kafka-target:9092"
replication:
- source:
topic: ".*-topic"
- sink:
topic: source
partition: sourceValidate the results
To verify that the expected topics were created in a running instance of K2K, use the following command:
docker compose exec kafka-target \
./opt/kafka/bin/kafka-topics.sh \
--list \
--bootstrap-server 127.0.0.1:9092Expected topics:
__k2k_consumer-offsetstransaction-topicuser-topic
name: "my-first-replication"
features:
autoCreateControlTopics: enabled
autoCreateTopics: enabled
source:
kafka:
common:
"bootstrap.servers": "kafka-source:9092"
consumer:
"group.id": "k2k.my-first-k2k"
"metadata.max.age.ms": "1000" #refresh often
target:
kafka:
common:
"bootstrap.servers": "kafka-target:9092"
replication:
- source:
topic:
- "transfers-us"
- "transfers-eu"
- sink:
topic: source
partition: sourceLast updated
Was this helpful?

