刚刚安装了spotify/kafka的Docker镜像。 sudo docker ps:
82c411a52a38 spotify/kafka "supervisord -n" 26 minutes ago Up 26 minutes 0.0.0.0:2181->2181/tcp, 0.0.0.0:9092->9092/tcp
此外,还单独下载了 kafka 二进制文件,因此我可以使用 kafka-console- Producer.sh 来测试安装,如下所示:
https://hub.docker.com/r/spotify/kafka/
我设置了以下 ENV 变量:
KAFKA=事件-ora-dev:9092 ZOOKEEPER=事件-ora-dev:2181
当我运行命令时
./kafka-console-producer.sh --broker-list $KAFKA --topic test
我收到此错误:
Error: Could not find or load main class kafka.tools.ConsoleProducer
假设 kafka.tools.ConsoleProducer 是一个 java 类,由 kafka-console- Producer.sh shell 脚本调用 - 我应该在哪里寻找这个 java 类?
如果您从项目网站下载 Kafka 并解压,则会有一个子文件夹
lib
,其中包含所有 jar
文件。
kafka-console-producer.sh
需要 kafka-tools-0.9.0.1.jar
来实现 kafka.tools.ConsoleProducer
(或不同版本 - 不确定您使用的是什么)。
如果您从顶级文件夹运行
bin/kafka-console-producer.sh
,这应该可以开箱即用。
我使用 kafka 10 遇到了同样的问题: 正如 @Matthias J. Sax 所说,我丢失了一些罐子, 所以我发现当下载 kafka_2.10-0.10.2.1 时我在 lib 中缺少 jars 当我下载 kafka_2.12-0.10.2.1 时,我得到了完整的 lib 文件夹。
我的底线如下:
wgethttp://www-us.apache.org/dist/kafka/0.10.2.1/kafka_2.12-0.10.2.1.tgz
tar -xvf kafka_2.12-0.10.2.1.tgz
./kafka_2.12-0.10.2.1/bin/kafka-console- Producer.sh --broker-list $KAFKA --主题测试
我已经从 download.apache.org 下载了 Kafka(https://downloads.apache.org/kafka/3.6.1/kafka_2.13-3.6.1.tgz),但是我收到一条警告,其中包含以下消息(id:-1rack:null)已断开连接(org.apache.kafka.clients.NetworkClient)。
我的 Kafka 服务器是安全的,我不知道如何传递 SSL 密码和证书。