【问题标题】:Building a Kafka producer immediately results "Disconnected while requesting ApiVersion" error构建 Kafka 生产者会立即导致“请求 ApiVersion 时断开连接”错误
【发布时间】:2021-03-13 20:27:48
【问题描述】:

我下载了kafka_2.13-2.5.1,将其解压缩到一个文件夹中,编辑了producer.properties,以启用 Snappy 压缩,其余部分保留原版。我用命令启动它(服务器?集群?见鬼)

bin/windows/zookeeper-server-start.bat config/zookeeper.properties

它启动并显示它正在侦听端口 2181:

INFO binding to port 0.0.0.0/0.0.0.0:2181 (org.apache.zookeeper.server.NIOServerCnxnFactory)

在我的 C# 代码中,我创建了一个错误处理程序:

void KafkaErrorHandler(IProducer<Null, string> producer, Error error)
{
    Console.WriteLine(error.Reason);
}

然后我正在尝试建立一个生产者:

kafkaProducerConfig = new ProducerConfig
{
    CompressionType = CompressionType.Snappy,
    BootstrapServers = "localhost:2181", // Docs said 9092 plain, 9093 SSL. Huh?
    ClientId = Dns.GetHostEntry(Environment.MachineName).HostName
};

var pb = new ProducerBuilder<Null, string>(kafkaProducerConfig);
pb.SetErrorHandler(KafkaErrorHandler);
kafkaProducer = pb.Build();

代码一到最后一行,就立即进入错误处理程序,错误对象显示如下:

{localhost:2181/bootstrap: Disconnected while requesting ApiVersion: 可能是由于安全协议配置不正确(连接到 SSL 侦听器?)或代理版本小于 0.10(参见 api.version.request)(在 1ms 后状态 APIVERSION_QUERY)}

Kafka 控制台窗口立即开始发出无尽的警告,直到我终止应用程序:

[2020-12-01 15:53:39,486] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:53:39,781] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:53:40,093] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:53:41,409] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:53:45,683] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:53:55,686] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:54:05,688] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:54:13,683] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:54:23,682] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:54:33,573] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:54:43,579] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:54:53,583] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:55:03,499] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:55:13,504] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:55:23,501] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:55:33,505] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:56:17,879] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:56:18,175] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:56:18,494] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:56:19,809] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:56:24,083] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:56:34,087] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:56:44,087] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:56:52,080] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:57:02,079] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:57:11,968] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:57:59,379] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:57:59,675] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:57:59,986] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:58:01,302] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:58:05,575] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:58:15,580] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:58:25,579] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:58:33,575] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:58:43,575] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:58:53,465] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:59:03,465] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:59:13,468] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:59:23,384] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:59:33,387] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:59:43,387] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 15:59:53,393] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 16:00:03,391] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 16:00:13,399] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 16:00:22,206] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 16:00:32,210] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 16:00:39,848] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 16:00:49,851] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 16:00:59,851] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 16:01:09,856] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 16:01:18,576] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 16:01:28,580] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 16:01:38,580] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 16:01:46,192] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 16:01:55,227] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 16:02:05,231] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 16:02:14,033] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 16:02:21,884] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 16:02:29,387] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 16:02:39,399] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 16:02:50,368] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 16:02:53,368] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 16:02:53,467] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 16:02:53,895] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 16:02:54,612] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)
[2020-12-01 16:02:58,736] WARN Exception causing close of session 0x0: Unreasonable length = 1718383973 (org.apache.zookeeper.server.NIOServerCnxn)

如果我将 SecurityProtocol = SecurityProtocol.Ssl, 添加到生产者配置中,则会收到以下错误:

{ssl://localhost:2181/bootstrap:SSL 握手失败:断开连接:连接到 PLAINTEXT 代理侦听器? (在 CONNECT 状态 2 毫秒后)}

它还需要什么才能下定决心并开始工作?

【问题讨论】:

  • 我还恢复到 100% vanilla 配置,如 OOB,并从生产者配置中删除压缩。不工作。下雨不同的警告。尝试了 9093 端口。不起作用。

标签: c# apache-kafka kafka-producer-api .net-4.7.2


【解决方案1】:

我从zookeeper-server-start开始不管它是什么

Kafka 控制台窗口

这是一个 Zookeeper 服务器,而不是 Kafka

您需要一个单独的窗口,该窗口以 kafka-server-start 开头,并带有 config/server.properties 文件。

那么您的代码使用端口 9092(默认情况下),正如您在显示的代码中似乎已评论的那样。

如果我将 SecurityProtocol = SecurityProtocol.Ssl, 添加到生产者配置中,则会收到以下错误

据我所知,您从未在 Kafka 服务器中设置任何 SSL 属性,因此不会改变任何内容

【讨论】:

  • “zookeeper”的目的是什么,“server”的目的是什么,为什么“zookeeper”启动脚本说是“server”启动脚本?
  • 我可能建议阅读 Kafka(和 Zookeeper)文档,但它的主要职责是领导选举/容错/元数据存储。该脚本实际上启动了一个 Zookeeper 服务器;不知道你在找什么
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-02-28
  • 1970-01-01
  • 2019-07-19
  • 2017-11-15
  • 1970-01-01
  • 1970-01-01
  • 2020-04-13
相关资源
最近更新 更多