pulsar 是不是支持不同集群中的多个 bookkeeper 副本

Posted

技术标签:

【中文标题】pulsar 是不是支持不同集群中的多个 bookkeeper 副本【英文标题】:does pulsar support multiple bookkeeper replicas in different clusterspulsar 是否支持不同集群中的多个 bookkeeper 副本 【发布时间】:2022-01-04 05:23:27 【问题描述】:

我有一个用例,需要跨多个数据中心进行数据备份并且需要强一致性。理想的视图是将每个段复制到位于三个不同数据中心的三个集群。 pulsar 支持使用多个集群作为大型 bookie 池,但我没有找到如何配置不同集群中的副本。以前有人有类似的用例吗?我认为考虑 pulsar 在不同集群中分离代理和存储 + 副本应该不难

【问题讨论】:

【参考方案1】:

可以启用 bookie 的区域感知放置策略(参数 bookkeeperClientRegionawarePolicyEnabled)。您还需要使用管理命令 set-bookie-rack 配置 bookie 区域,这在 Pulsar/BookKeeper 文档中没有太多记录。有关详细信息,请参阅此博客文章:https://techblog.cdiscount.com/ensure-cross-datacenter-guaranteed-message-delivery-and-resilience-with-apache-pulsar/

请注意,由于经纪人和 bookie 之间的跨区域延迟,吞吐量会下降,但如果您需要强一致性,即使在区域故障的情况下,这也无济于事。

【讨论】:

为什么在出现region故障时不能帮忙?假设我有 3 个区域,一个区域失败,其余两个应该仍然能够为我的理解提供流量 是的,仍然会提供流量。我的评论仅涉及与本地设置相比将受跨区域网络延迟影响的吞吐量。

以上是关于pulsar 是不是支持不同集群中的多个 bookkeeper 副本的主要内容,如果未能解决你的问题,请参考以下文章

Apache Pulsar MQ 学习笔记

Linux MacBook单机部署Pulsar并开启认证功能

[Pulsar系列] 10分钟学会Pulsar消息系统概念

详解Apache Pulsar的Topic绑定Broker

聊聊 Pulsar: Pulsar 分布式集群搭建

聊聊 Pulsar: Pulsar 分布式集群搭建