繁体   English   中英

Kafka Connect MongoDB Source Connector 故障场景

[英]Kafka Connect MongoDB Source Connector failure scenario

我需要使用 Kafka Connect 监控对具有一个主副本和 2 个副本的 MongoDB 集群的更改。

我看到有官方的MongoDB 连接器,我想了解连接器的行为,以防主副本失败。 它会自动从一个将成为新主副本的辅助副本中读取吗? 我在官方文档中找不到这方面的信息。

我看过这篇tasks.max配置相关的帖子,我认为这可能与这种情况有关,但答案暗示它始终默认为 1。

我还查看了Debezium 的连接器实现,它似乎自动支持这种情况:

MongoDB 连接器还可以很好地容忍副本集的成员资格和领导层的变化、分片集群中分片的添加或删除以及可能导致通信失败的网络问题。 连接器始终使用副本集的主节点来 stream 更改,因此当副本集进行选举并且不同的节点成为主节点时,连接器将立即停止流式传输更改,连接到新的主节点,并使用新的主节点开始流式传输更改节点。

此外,Debezium 的tasks.max配置属性版本指出:

应为此连接器创建的最大任务数。 MongoDB 连接器将尝试为每个副本集使用单独的任务,[...] 以便每个副本集的工作可以由 Kafka Connect 分发。

问题是 - 我可以使用默认连接器获得相同的默认行为 - 正如为 Debezium 所宣传的那样? 由于外部原因,我暂时无法使用 Debezium。

在 PSS 部署中:

  • 如果一个节点不可用,其他两个节点可以选举一个主节点
  • 如果两个节点不可用,则不能有主节点

您引用的报价表明连接器可能正在使用主要读取首选项,这意味着只要两个节点启动,它就会工作,如果只有一个节点启动,它将不会检索任何数据。

因此,将三个节点中的两个拉下来,观察是否能够查询。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM