【发布时间】:2018-09-18 22:17:12
【问题描述】:
我是 Kafka 新手,在此处找到的 Apache Kafka 的“快速入门”指南似乎有几个问题: https://kafka.apache.org/quickstart#quickstart_kafkaconnect
最终,我正在尝试学习如何加载包含许多 kafka 消息的 kafka 队列,因此本快速入门指南的第 7 步部分似乎很相关。
我安装了在这里找到的二进制下载(Scala 2.11 - kafka_2.11-1.1.0.tgz): https://kafka.apache.org/downloads
我最初试图直接跳到第 7 步,但在找到这个问题 (Kafka Connect implementation errors) 后意识到我必须在此之前完成几个步骤
因此我成功地遵循了第一步:
tar -xzf kafka_2.11-1.1.0.tgz
cd kafka_2.11-1.1.0
然后我按照步骤 2:
bin/zookeeper-server-start.sh config/zookeeper.properties
但我得到了错误
ERROR Unexpected exception, exiting abnormally (org.apache.zookeeper.server.ZooKeeperServerMain)
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:223)
at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:67)
at org.apache.zookeeper.server.NIOServerCnxnFactory.configure(NIOServerCnxnFactory.java:90)
at org.apache.zookeeper.server.ZooKeeperServerMain.runFromConfig(ZooKeeperServerMain.java:117)
at org.apache.zookeeper.server.ZooKeeperServerMain.initializeAndRun(ZooKeeperServerMain.java:87)
at org.apache.zookeeper.server.ZooKeeperServerMain.main(ZooKeeperServerMain.java:53)
at org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:116)
at org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:78)
但是当我在同一步骤中运行下一个命令时:
bin/kafka-server-start.sh config/server.properties
Kafka 服务器好像运行成功了?
然后我尝试继续第3步创建主题:
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
但这会产生错误:
Error while executing topic command : Replication factor: 1 larger than available brokers: 0.
[2018-04-09 14:13:26,908] ERROR org.apache.kafka.common.errors.InvalidReplicationFactorException: Replication factor: 1 larger than available brokers: 0.
(kafka.admin.TopicCommand$)
然后尝试第 4 步:
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
这似乎可行,我可以写一条消息,但随后出现连接错误(这可能是由于前面的步骤没有成功)
kafka_2.11-1.1.0 user$ bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
>This is a message
[2018-04-09 14:17:52,631] WARN [Producer clientId=console-producer] Connection to node -1 could not be established. Broker may not be available. (org.apache.kafka.clients.NetworkClient)
[2018-04-09 14:17:52,687] WARN [Producer clientId=console-producer] Connection to node -1 could not be established. Broker may not be available. (org.apache.kafka.clients.NetworkClient)
有谁知道为什么会出现这些问题以及如何解决这些问题?我在该教程中找不到有关这些问题的更多信息
【问题讨论】:
-
我猜你需要先启动 zookeeper 才能启动 kafka 服务器
-
@nitnamby 是的,我意识到大多数后续问题可能与命令
bin/zookeeper-server-start.sh config/zookeeper.properties无法正常工作有关
标签: apache-kafka