在两个kafka集群同步topic
在两个kafka集群同步topic目标:把debezium节点所在集群上的kafka集群的名为sysdata的topic同步到目标集群cdh上的kafka集群上。前提:在目标集群的相关节点的hosts文件配置好源集群主机信息。[root@master01 kafka]# vi /etc/hosts127.0.0.1localhost localhost.localdomai...
在两个kafka集群同步topic
目标:把debezium节点所在集群上的kafka集群的名为sysdata的topic同步到目标集群cdh上的kafka集群上。
前提:在目标集群的相关节点的hosts文件配置好源集群主机信息。
[root@master01 kafka]# vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.108.81 master01
192.168.108.82 slave01
192.168.108.83 slave02
192.168.108.190 debezium(把源集群节点的host信息配置到目标集群的hosts)
1.在源集群创建topic
bin/kafka-topics.sh --zookeeper debezium:2181 --topic sysdata
--replication-factor 1 --partitions 1 --create
2.在目标集群创建相同的topic
bin/kafka-topics.sh --zookeeper master01:2181 --topic sysdata
--replication-factor 1 --partitions 1 --create
3 在命令行配置同步文件及启动:
3.1在目标集群创建consumer-wsm.properties和producer-wsm.properties
consumer-wsm.properties配置源集群的相关信息
producer-wsm.properties配置目标集群的相关信息
[root@master01 kafka]# vi consumer-wsm.properties
zookeeper.connect=debezium:2181
bootstrap.servers=debezium:9092
group.id=groupwsm-01
[root@master01 kafka]# vi producer-wsm.properties
zk.connect=slave01:2181,slave02:2180,master01:2181
bootstrap.servers=slave01:9092,slave02:9092,master01:9092
3.2在目标集群启动MirrorMaker,指定白名单为要同步的topic名字
[root@master01 kafka]# bin/kafka-run-class.sh kafka.tools.MirrorMaker
--consumer.config consumer-wsm.properties
--producer.config producer-wsm.properties
--whitelist 'sysdata'
4.生产数据并写到源集群的相关topic
5.在目标集群消费相关topic
补充:
如果使用的目标集群是cdh,则只需在cdh中启动kafka Mirrormaker 角色,然后在配置页面配置好source broker list、destination broker list和白名单的topic。
白名单:允许在两个集群同步的topic
黑名单:不允许在两个集群同步的topic
可选配置:
6.MirrorMaker的参数说明参考:
https://www.cnblogs.com/sunxucool/p/3913131.html
更多推荐
所有评论(0)