Kafka Sink:错误由于错误而停止(org.apache.kafka.connect.cli.ConnectStandalone:130)

时间:2020-08-18 13:34:40

标签: apache-kafka apache-kafka-connect confluent-platform confluent-schema-registry

Am正在尝试将数据从一个流文件传输到另一文件。它运行得更早,突然提供了错误ERROR Stopping due to error (org.apache.kafka.connect.cli.ConnectStandalone:130)。重新启动了zookeeper,kafka服务器,schema-registry,源和接收器连接器,但仍然面临相同的问题,无法解决。任何建议都会有所帮助。

源连接器:

name=local-file-source
connector.class=FileStreamSource
tasks.max=1
file=/home/jimmacaulay/Desktop/ETL/Kafka/confluent-5.5.1/data/data/Jim_Source.csv
topic=Jim

水槽连接器:

name=local-file-sink
connector.class=FileStreamSink
tasks.max=1
file=/home/jimmacaulay/Desktop/ETL/Kafka/confluent-5.5.1/data/data/Jim_Sink.csv
topics=Jim

错误:

[2020-08-18 06:25:50,482] ERROR Stopping due to error (org.apache.kafka.connect.cli.ConnectStandalone:130)
org.apache.kafka.connect.errors.ConnectException: Unable to initialize REST server
    at org.apache.kafka.connect.runtime.rest.RestServer.initializeServer(RestServer.java:217)
    at org.apache.kafka.connect.cli.ConnectStandalone.main(ConnectStandalone.java:87)
Caused by: java.io.IOException: Failed to bind to 0.0.0.0/0.0.0.0:8083
    at org.eclipse.jetty.server.ServerConnector.openAcceptChannel(ServerConnector.java:346)
    at org.eclipse.jetty.server.ServerConnector.open(ServerConnector.java:307)
    at org.eclipse.jetty.server.AbstractNetworkConnector.doStart(AbstractNetworkConnector.java:80)
    at org.eclipse.jetty.server.ServerConnector.doStart(ServerConnector.java:231)
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
    at org.eclipse.jetty.server.Server.doStart(Server.java:385)
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
    at org.apache.kafka.connect.runtime.rest.RestServer.initializeServer(RestServer.java:215)
    ... 1 more
Caused by: java.net.BindException: Address already in use
    at sun.nio.ch.Net.bind0(Native Method)
    at sun.nio.ch.Net.bind(Net.java:433)
    at sun.nio.ch.Net.bind(Net.java:425)
    at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:220)
    at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:85)
    at org.eclipse.jetty.server.ServerConnector.openAcceptChannel(ServerConnector.java:342)
    ... 8 more

1 个答案:

答案 0 :(得分:1)

通过同时使用源和接收器属性启动connect-standalone,解决了该错误。

sh connect-standalone ../config/connect-avro-standalone.properties ../config/connect-file-source_Topic_Jim.properties ../config/connect-file-sink_Topic_Jim.properties

我以前是按照以下方式分别启动的,

sh connect-standalone ../config/connect-avro-standalone.properties ../config/connect-file-source_Topic_Jim.properties

sh connect-standalone ../config/connect-avro-standalone.properties ../config/connect-file-sink_Topic_Jim.properties

问题的原因,

在单独启动connect-standalone时,首先使用端口号8083进行源属性的启动。再次在启动接收器属性时,它将尝试使用相同的端口号并失败。

解决方案,

源和接收器属性均应在启动connect-standalone(共享相同端口)时使用。

或在属性文件中定义不同的端口号,然后分别启动