【问题标题】:Batch creation of Kafka Connector批量创建Kafka Connector
【发布时间】:2021-01-09 17:40:52
【问题描述】:

我正在尝试在我的 Kafka Kubernetes 集群中创建 1000 个连接器,每个连接器都有一个任务、他自己的消费者组和独特的主题 (创建连接器后,我的最终目标是向连接器的主题发送大量请求,并测量我们实现的连接器接收器的性能。

每次创建都会触发整个集群的重新平衡,从而“阻止”连接器 RestAPI(对所有内容返回 409)并关闭任务。

所以我有三个问题:

  1. 重新平衡是连接器的一种停机时间(正如我所说,重新平衡时有任务关闭和重新启动,连接器有一个任务)?
  2. 我可以配置再平衡计划吗?
  3. 有没有一种方法可以批量创建连接器,这样它会很快(比如在不到一秒的时间内创建 100 个连接器)并且不会导致停机(如果第一个问题的答案是肯定的)?

【问题讨论】:

    标签: apache-kafka kafka-consumer-api apache-kafka-connect


    【解决方案1】:

    解决此问题的一种方法是启动 1000 个连接集群(例如,通过 Docker 编排),全部使用一个或几个连接器。


    没有办法绕过再平衡。您将消费者添加到同一个消费者组中,因此总是会重新平衡。

    我建议将多个主题/任务组合在一起而不是共享相似的配置,而不是每个连接器运行一个任务,这样可以限制重新平衡的工作量。

    【讨论】:

    • 既然我用的是kubernetes,1000个connect cluster就意味着pods?每个人都有自己的动物园管理员和经纪人?关于您的第二点,每个连接器(具有唯一名称)都在他自己的消费者组中,因为 - “对于接收器连接器,group.id 是使用前缀 connect- 和连接器名称以编程方式创建的。” - docs.confluent.io/current/connect/references/allconfigs.html
    • 您可以为每个 Connect Cluster 使用相同的 Kafka/Zookeeper 集群。关于第二点,Kafka Connect 的内部主题在同一组中,除非您也更改它们
    • 您的意思是 state\config\offsets 主题?如何设置内部主题?
    • 是的,那些话题。添加新连接器时,至少配置主题会更新,然后任务会重新分配
    • 不是每个连接器,不是,而是每个容器,是的。因此,正如我建议的多个“集群”或 ReplicaSet,如果您愿意的话。
    猜你喜欢
    • 2020-03-21
    • 2020-06-03
    • 2020-03-14
    • 2021-01-17
    • 1970-01-01
    • 2021-04-24
    • 2022-08-22
    • 2016-01-21
    • 1970-01-01
    相关资源
    最近更新 更多