在CentOS上进行Kafka数据备份可采用以下方式:
使用Kafka自带工具
kafka-console-consumer.sh
导出指定主题数据到文件。# 备份单个主题
mkdir -p /tmp/backup
kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning > /tmp/backup/test.txt
/var/lib/kafka/data
)。tar -czvf kafka_data_backup.tar.gz /var/lib/kafka/data
使用kafka-dump工具
sudo yum install kafka-dump # CentOS安装
kafka-dump --bootstrap-server localhost:9092 --output-dir /tmp/backup
# 创建配置文件(/tmp/mirror-maker.properties)
consumer.bootstrap.servers=localhost:9092
producer.bootstrap.servers=backup-host:9092
whitelist=test # 指定主题
# 执行增量备份
kafka-run-class.sh kafka.tools.MirrorMaker --consumer.config /tmp/mirror-maker.properties --producer.config /tmp/mirror-maker.properties --whitelist test
kafka-console-producer.sh
导入数据。cron
定时执行备份脚本,实现自动化。工具选择建议:
kafka-console-consumer.sh
+ tar
打包。kafka-backup
(支持增量备份,效率更高)。