Apache kafka 连接器状态不一致:ConnectException:此工作进程中已存在任务

Apache kafka 连接器状态不一致:ConnectException:此工作进程中已存在任务,apache-kafka,apache-kafka-connect,confluent-platform,debezium,Apache Kafka,Apache Kafka Connect,Confluent Platform,Debezium,我使用的是汇合平台3.2。在3台不同的EC2机器上运行3名工人 我有一个连接器(debezium/MySQL源代码),我删除了它,几分钟后又重新启动了它。但由于以下错误,我无法成功启动连接器。连接器处于故障状态。我不得不重新启动工人来解决这个问题 需要知道这是否是缓存的问题吗?如何在不重新启动工作程序的情况下解决此问题。感谢您的支持 { "name": "debezium-connector", "connector": { "state": "RUNNING",

我使用的是汇合平台3.2。在3台不同的EC2机器上运行3名工人

我有一个连接器(debezium/MySQL源代码),我删除了它,几分钟后又重新启动了它。但由于以下错误,我无法成功启动连接器。连接器处于故障状态。我不得不重新启动工人来解决这个问题

需要知道这是否是缓存的问题吗?如何在不重新启动工作程序的情况下解决此问题。感谢您的支持

   {
   "name": "debezium-connector",
   "connector": {
      "state": "RUNNING",
      "worker_id": "xx.xx.xx.xxx:8083"
   },
   "tasks": [
      {
         "state": "FAILED",
         "trace": "org.apache.kafka.connect.errors.ConnectException: Task already exists in this worker: debezium-connector-0\n\tat org.apache.kafka.connect.runtime.Worker.startTask(Worker.java:308)\n\tat org.apache.kafka.connect.runtime.distributed.DistributedHerder.startTask(DistributedHerder.java:834)\n\tat org.apache.kafka.connect.runtime.distributed.DistributedHerder.access$1500(DistributedHerder.java:101)\n\tat org.apache.kafka.connect.runtime.distributed.DistributedHerder$13.call(DistributedHerder.java:848)\n\tat org.apache.kafka.connect.runtime.distributed.DistributedHerder$13.call(DistributedHerder.java:844)\n\tat java.util.concurrent.FutureTask.run(FutureTask.java:266)\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)\n\tat java.lang.Thread.run(Thread.java:745)\n",
         "id": 0,
         "worker_id": "xx.xx.xx.xxx:8083"
      }
   ]
}

嗯,我也犯了同样的错误,然后我发现其中一台Kafka服务器的磁盘空间用完了,因此Kafka群集无法正常运行。我不知道这里的所有细节,但我希望Connect正在Kafka中存储一些关于连接器和任务的信息,如果它没有正确响应,Kafka可能仍然有关于旧任务的信息

分享,以防对其他人有所帮助

编辑:


我还注意到,这种情况不时发生在我的Kafka节点上,使整个集群处于不可用状态。重新启动出现问题的节点可修复问题。

这里的另一个连接器也存在同样的问题。?尝试添加具有不同名称的任务