Estoy trabajando en la migración de Camus a Kafka Connect. Estoy trabajando en la implementación de Kafka Connect y me enfoco específicamente en el modo distribuido. Puedo iniciar un trabajador con éxito en mi máquina local, que supongo que se comunica con mi clúster de Kafka. Además, puedo ejecutar dos comandos GET como / y /connector-plugins que devuelven el JSON correcto. Sin embargo, cuando intento POSTAR un comando para crear un conector, recibo un error 500 y un tiempo de espera. Específicamente, uso este comando para POST para probar:

curl -X POST -H "Content-Type: application/json" --data '{"name": "local-file-sink", "config": {"connector.class":"FileStreamSinkConnector", "tasks.max":"1", "file":"test.sink.txt", "topics":"myTopic" }}' localhost:8083/connectors

Y finalmente obtengo esta respuesta:

{"error_code": 500, "message": "Request timed out"}

Estoy perdido en cuanto a lo que está pasando. Los registros de mi trabajador distribuido de Kafka Connect muestran esto:

[2016-12-05 14:34:32,436] INFO 0:0:0:0:0:0:0:1 - - [05/Dec/2016:22:34:32 +0000] "GET /connector-plugins HTTP/1.1" 200 315  2 (org.apache.kafka.connect.runtime.rest.RestServer:60)
[2016-12-05 15:05:25,422] INFO 0:0:0:0:0:0:0:1 - - [05/Dec/2016:23:05:25 +0000] "GET /connector-plugins HTTP/1.1" 200 315  3 (org.apache.kafka.connect.runtime.rest.RestServer:60)
[2016-12-05 15:05:28,389] INFO 0:0:0:0:0:0:0:1 - - [05/Dec/2016:23:05:28 +0000] "GET /connector-plugins HTTP/1.1" 200 315  2 (org.apache.kafka.connect.runtime.rest.RestServer:60)
[2016-12-05 15:07:38,644] INFO 0:0:0:0:0:0:0:1 - - [05/Dec/2016:23:06:08 +0000] "GET /connectors HTTP/1.1" 500 48  90003 (org.apache.kafka.connect.runtime.rest.RestServer:60)
[2016-12-05 15:07:44,450] INFO 0:0:0:0:0:0:0:1 - - [05/Dec/2016:23:07:44 +0000] "GET /connector-plugins HTTP/1.1" 200 315  1 (org.apache.kafka.connect.runtime.rest.RestServer:60)
[2016-12-05 15:13:06,703] INFO 0:0:0:0:0:0:0:1 - - [05/Dec/2016:23:11:36 +0000] "POST /connectors HTTP/1.1" 500 48  90003 (org.apache.kafka.connect.runtime.rest.RestServer:60)
[2016-12-05 15:15:38,506] INFO 0:0:0:0:0:0:0:1 - - [05/Dec/2016:23:14:08 +0000] "POST /connectors HTTP/1.1" 500 48  90005 (org.apache.kafka.connect.runtime.rest.RestServer:60)

Donde puede ver los códigos de error y los comandos.

Creo que mis principales preguntas y problemas son:

  1. ¿Cómo puedo depurar mejor Kafka Connect para intentar solucionar este problema?
  2. ¿Hay algo que esté haciendo que esté evidentemente mal?
  3. ¿Existe documentación paso a paso o publicaciones de blog sobre cómo ejecutar un conector y un trabajador distribuido de Kafka Connect? ¿Realmente no he visto nada o incluso los tipos de documentación de mejores prácticas? Quizás soy demasiado pronto para adoptar.

Espero recibir noticias de la comunidad y ¡gracias por su ayuda!

1
PhillipAMann 6 dic. 2016 a las 04:26
Puede verificar si su clúster de agentes tiene un agente con broker.id=0
 – 
Abdurrahman Adebiyi
18 jun. 2017 a las 08:27

1 respuesta

La mejor respuesta

Pude solucionar este problema. Estaba ejecutando Confluent Platform 3.0.1 tanto en mi cliente como en mi clúster. Actualicé mi clúster a Confluent Platform 3.1.1 y mi cliente a la nueva versión. Pude iniciar el clúster. Además, puede obtener más información sobre la depuración de Kafka Connect leyendo este hilo en el Grupo de usuarios de Kafka con respecto a esta misma pregunta:

http://mail-archives.apache.org/mod_mbox/kafka-users/201612.mbox/%3cA22A7CDA-21D5-4E58-BD38-3796065FD6A5@trulia.com%3e

Ojalá eso ayude a otros.

2
PhillipAMann 9 dic. 2016 a las 03:46