kafka接收器连接器:没有分配任务,即使在重新启动之后

mwkjh3gx  于 2021-06-07  发布在  Kafka
关注(0)|答案(1)|浏览(347)

我在一组docker容器中使用confluent 3.2,其中一个容器运行kafka connect worker。
由于我还不清楚的原因,我的四个连接器中的两个——具体地说,hpgraphsl的mongodb sink连接器——停止了工作。我能够确定主要问题:连接器没有分配任何任务,这可以通过调用 GET /connectors/{my_connector}/status . 其他两个连接器(同一类型)没有受到影响,正在愉快地产生输出。
我尝试了三种不同的方法通过rest api重新运行连接器:
暂停和恢复连接器
重新启动连接器
使用相同的配置以相同的名称删除和创建连接器
这些方法都不管用。我终于让我的连接器重新工作了:
使用其他名称删除和创建连接器,例如 my_connector_v2 而不是 my_connector 这是怎么回事?为什么我不能重新启动现有的连接器并让它启动实际任务?关于kafka connect worker或kafka连接相关主题中的kafka代理是否有任何过时数据需要清理?
我已经在特定连接器的github repo上提交了一个问题,但我觉得这可能实际上是与kafka connect的内部函数相关的一般bug。有什么想法吗?

n8ghc7c1

n8ghc7c11#

我已经面对了这个问题。如果sinktask或sourcetask启动的资源较少,则可能发生这种情况。
分配给worker的内存可能会减少一些时间。默认情况下,工作线程分配为250mb。请增加这个。下面是为在分布式模式下运行的worker分配2gb内存的示例。
kafka\u heap\u opts=“-xmx2g”sh$kafka\u服务\u home/connect分布式$kafka\u配置\u home/connect-avro-distributed.properties

相关问题