kafka數據同步/鏡像工具 kafka mirror maker

關注公眾號:“程序員成長軟技能” ,日拱一卒,功不唐捐!
公司數據收集后會寫入kafka集群,近期涉及到機房搬遷,在完成機房搬遷移前,兩個機房都有業務需要某些topic的數據,兩種處理方案:1是數據寫入時候雙寫 2是老機房數據寫入完成后再同步至新機房kafka集群。本文介紹kafka自帶的集群鏡像工具MirrorMaker,實現kafka集群間的數據同步。

一、概括來說MirrorMaker就是kafka生產者與消費者的一個整合,通過consumer從源Kafka集群消費數據,然后通過producer將數據重新推送到目標Kafka集群,如下圖:

流程圖

二、MirrorMaker的使用相對也比較簡單,下面說下啟動命令及相關配置
啟動腳本在$KAFKA_HOME/bin目錄下,可通過命令kafka-run-class.sh kafka.tools.MirrorMaker查看相關說明:

相關參數

說明:
whitelist、blacklist:該工具可以同步源集群所有的或者部分topic,可以用白名單描述要同步的topic,用黑名單描述不需要同步的topic,多個topic直接逗號分隔,并且支持通配符(java http://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html)
consumer.config:配置源kafka集群消費者相關信息
[plain] view plain copy
zookeeper.connect=zk1ip1:2181,zk1ip2:2181/kafka/
group.id=mirrorMaker
producer.config :配置目標kafka集群生產者相關信息
[plain] view plain copy
metadata.broker.list=b1:9092,b2:9092
compression.codec=none

啟動命令:
sh KAFKA_HOME/bin/kafka-run-class.sh kafka.tools.MirrorMaker --consumer.configKAFKA_HOME/config/mirrorMakerConsumer.config --num.streams 2 --producer.config $KAFKA_HOME/config/amirrorMakerProducer.config —num.producers 2 --whitelist="topic2mirror"

參考:
https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=27846330
https://kafka.apache.org/documentation.html#basic_ops_mirror_maker

關注公眾號:“程序員成長軟技能” ,日拱一卒,功不唐捐!

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,981評論 19 139
  • Kafka入門經典教程-Kafka-about云開發 http://www.aboutyun.com/threa...
    葡萄喃喃囈語閱讀 10,880評論 4 54
  • 一、入門1、簡介Kafka is a distributed,partitioned,replicated com...
    HxLiang閱讀 3,444評論 0 9
  • 本文轉載自http://dataunion.org/?p=9307 背景介紹Kafka簡介Kafka是一種分布式的...
    Bottle丶Fish閱讀 5,501評論 0 34
  • 背景介紹 Kafka簡介 Kafka是一種分布式的,基于發布/訂閱的消息系統。主要設計目標如下: 以時間復雜度為O...
    高廣超閱讀 12,886評論 8 167