最近准备使用Kafka Mirrormaker做两个数据中心的数据同步,以下是一些要点:
- mirrormaker必须提供一个或多个consumer配置,一个producer配置,一个whitelist或一个blacklist(支持java正则表达式)
- 启动多个mirrormaker进程,单个进程启动多个consuemr streams, 可以提高吞吐量和提供容
- mirrormaker部署在destination datacenter,这样如果kafka集群之间发生网络问题,也不至于从src cluster拿到了数据但发不到dest cluster导致数据丢失
- mirrormaker不能防止数据循环发送,即如果使用mm将数据从ClusterA的TopicA复制到ClusterB的TopicA,另一个mm将数据从ClusterB的TopicA复制到ClusterA的TopicA,那么会产生endless loop,mm的负载会急剧上升
- mirrormaker的producer和consumer的一些配置的目标是数据不丢失,而不是高性能,它们分别是
- acks=all(kafka consumer默认1), 意味着数据被拷贝到dest cluster的所有replicas之后才响应
- retries=max integer(kafka producer默认0)
- block.on.buffer.full=true(kafka produmer默认false)
- max.in.flight.requests.per.connection=1(kafka producer默认5), 提升该值可以获得更快的速度,同时意味着如果mirrormaker挂掉,将会丢更多的数据
- auto.commit.enable=false(默认true)
- abort.on.send.failure=true(mirrormaker配置)
6. 其他配置:
- linger.ms=0(kafka producer默认0), 调高linger.ms会使mirrormaker能够将更多的消息打包发送以提升效率,同时意味着消息的平均延迟上升
7. 可以给所有需要mm的topics设置优先级,优先级高的topic将获得更低的延迟,并且能在更短的时间内重启,重启之后也能更快的追上拷贝进度
相关推荐
包括生产者和消费者的消息处理流程,新旧消费者不同的设计方式,存储层的实现,协调者和控制器如何确保Kafka集群的分布式和容错特性,两种同步集群工具MirrorMaker和uReplicator,流处理的两种API以及Kafka的一些...
包括生产者和消费者的消息处理流程,新旧消费者不同的设计方式,存储层的实现,协调者和控制器如何确保Kafka集群的分布式和容错特性,两种同步集群工具MirrorMaker和uReplicator,流处理的两种API以及Kafka的一些...
Mirror集群化是针对MirrorMaker的优化,采用KReplicator(基于Uber的UReplicator)来动态管理topic和worker节点的增减,支持局部Partition的迁移,降低了运维成本,减少了错误,且能快速应对流量变化。 资源隔离是...
此外,还要熟悉Kafka的高级特性,如Kafka Connect用于集成外部系统,Kafka Streams用于流处理,以及Kafka MirrorMaker用于跨集群的数据复制。 对于初学者来说,实践是学习Kafka最好的方式。通过这个压缩包提供的...
- **Kafka MirrorMaker**:用于复制 Kafka 集群的数据,实现数据备份或跨数据中心的数据同步。 5. **Kafka 安全性** - **SASL/SSL 安全认证**:启用 SASL 认证和 SSL 加密,确保通信安全。 - **授权与访问控制**...
- **Kafka MirrorMaker**:用于在不同集群间复制数据,实现灾难恢复或数据迁移。 通过这个"Kafka项目实例",你不仅可以理解Kafka的基本工作原理,还能掌握实际操作和调试的技能。在实际工作中,可以根据需求进一步...
4. **Kafka MirrorMaker**:用于在不同Kafka集群间复制数据,实现灾备或负载均衡。 5. **Schema Registry**:用于管理Avro或JSON模式,确保数据的序列化和反序列化一致性。 **四、Kafka的使用场景** Kafka广泛...
在Linux环境下安装Apache...Kafka还有许多高级功能,如Kafka Connect用于集成外部系统,Kafka Streams用于流处理应用,以及Kafka MirrorMaker用于数据复制。学习和理解这些组件将进一步提升你对Kafka的理解和使用能力。
- **Kafka MirrorMaker**:用于在多个Kafka集群之间复制数据,实现数据备份和灾难恢复。 7. **最佳实践** - **合理分区**:根据业务需求合理设置分区数量,避免热点分区。 - **负载均衡**:消费者组内的消费者...
2. **角色部署**:根据功能进行角色划分,如Gateway、Coordinator、Region、Controller和MirrorMaker,提高了系统架构的清晰度和可扩展性。 3. **业务线程池隔离**:通过队列分离,将不同类型的请求分开处理,降低了...
了解这些基本操作后,你就可以开始探索Kafka的更高级特性,如Kafka Connect用于集成外部系统,Kafka Streams用于构建流处理应用,以及Kafka MirrorMaker用于在多个Kafka集群间复制数据。在数据科学和大数据技术中,...
- **未来发展方向**:提升Topic ACK=-1场景的性能,实现Topic资源的弹性调度,开源Kafka-Manager并扩大社区影响力,集成MirrorMaker和Kafka-Connector能力,以及继续打磨运维保障和服务质量。 滴滴的Kafka应用实践...
5. **Kafka MirrorMaker**: 用于在不同集群间复制数据,实现灾难恢复和负载均衡。 **Kafka高阶应用** 1. **Schema Registry**: 用于管理Avro、JSON Schema等,确保消息的序列化和反序列化一致性。 2. **Kafka ...
计划集成MirrorMaker和Kafka-Connector,增强数据迁移和连接器能力。 ### 总结与规划 滴滴的Kafka服务架构未来将继续发展,开源Kafka-Manager并推动社区活跃,目标是服务300+企业。同时,将持续优化Kafka性能,...
- **Kafka MirrorMaker**:用于在不同Kafka集群之间复制数据,实现灾备和数据迁移。 通过学习和实践本压缩包中的资料,你将能深入了解Kafka的工作原理,熟练运用其特性,解决实际问题,提升你的大数据处理能力。...
为实现跨数据中心的数据一致性,360利用MirrorMaker进行IDC间的数据同步,保证每个IDC只读写本IDC的数据,提高服务SLA。此外,通过Mesos和Marathon的PaaS化方案,进一步优化跨IDC的服务部署和管理。 总结,360在...
360使用MirrorMaker进行跨IDC的数据同步,确保数据在不同数据中心间只同步一次,所有业务都在本地IDC进行读写。此外,通过Mesos和Marathon的PaaS化部署,提高了服务的SLA(服务水平协议)。 7. **Kafka客户端框架*...
3. **Kafka MirrorMaker**:用于在不同Kafka集群间复制数据,实现灾备或跨地域数据同步。 4. **Schema Registry**:存储和验证消息序列化的模式,确保数据的一致性和兼容性。 **五、Kafka的实践应用** 1. **日志...
- `bin/kafka-mirror-maker.sh --consumer.config consumer.properties --producer.config producer.properties --whitelist my-topic`: 创建镜像生产者,将"my-topic"的数据从一个集群复制到另一个集群。...
在数据处理架构上,FreeWheel采用了Kafka作为消息中间件,通过Kafka Mirror Maker在不同数据中心之间同步数据。数据首先通过Ingesting pipeline被匹配到业务日志并写入HBase。然后,HBase中的数据会被周期性地写入S3...