如何正确重启 kafka s3 接收器连接?

Xia*_*ang 4 amazon-s3 apache-kafka apache-kafka-connect confluent-platform

自 5 月 1 日起,我开始使用 kafka s3 接收器连接器(来自融合包的捆绑连接器)。它可以正常工作到 5 月 8 日。检查状态,它告诉某些 aws 异常使此连接器崩溃。这应该不是什么大问题,所以我想恢复它。

我尝试了以下步骤:

  1. 我 POST /connectors/s3sink/restart 。然后我看到连接器处于 RUNNING 模式,但任务仍然 FAIL。
  2. 然后我 PUT /connectors/s3sink/task/0/restart。好的,现在任务处于 RUNNING 模式。

但是后来我跟踪日志,发现它开始重写旧数据,例如5月3日的数据。它弄乱了旧数据!

那么,connect restart REST API 是否会重置偏移量?我认为它会保存偏移量并从它失败的偏移量开始。

以及如何正确重启失败的连接器任务?通过删除那些 POD?(使用 kubernetes),还是通过 REST /task/0/restart?我什么时候应该使用/connectors/s3sink/restart?

cri*_*007 7

/connector/:name/restart是对工作领导者的滚动重启操作,需要以异步方式传播到所有工作服务器任务。因此,您需要确保领导工作者与所有其他人之间的网络连接。

/connector/:name/task/:num/restart 将直接向该工作者发送请求,重新启动线程。

重新启动不应重置偏移量,因为它们存储在该连接集群使用者偏移量主题中。如果有的话,任务无法将偏移量提交回__consumer_offsets主题,但您应该看到相关日志。