在本地计算机

时间:2018-04-26 11:05:18

标签: apache-kafka kafka-cluster

在Ubuntu上使用Kafka: Zookeeper开始了 卡夫卡开始了 主题创建 制片人开始了 消费者开始了 消息从生产者到消费者正在传递

我创建了2个新的server.properties文件: server-1.properties as:

broker.id=1
listeners=PLAINTEXT://:9093
log.dir=C:\kafka\kafka-logs-1

server-2.properties as:

broker.id=2
listeners=PLAINTEXT://:9094
log.dir=C:\kafka\kafka-logs-2

当我开始新经纪人时:

bin\windows\kafka-server-start.sh config\server-1.properties &

收到错误:

kafka.common.KafkaException: Socket server failed to bind to 0.0.0.0:9092: Address already in use: bind

3 个答案:

答案 0 :(得分:2)

这是因为您添加的代理正在侦听当前由第一个代理使用的端口9092

server-1.properties文件中,您需要添加

port=9093

并在server-2.properties

port=9094

将这些行listeners=PLAINTEXT://:9093listeners=PLAINTEXT://:9094注释掉。

还要确保为每个实例使用不同的broker.id

如果您尝试使用单个Zookeeper节点设置多代理Kafka群集,则可能会发现this video有用。

答案 1 :(得分:1)

如果您使用多个代理,请在

上使用以下类型的代理声明

server.properties

broker.id=0
listeners=PLAINTEXT://:9092
log.dirs=/tmp/kafka-logs

server.1.properties

broker.id=1
listeners=PLAINTEXT://:9093
log.dirs=/tmp/kafka-logs1

server.2.properties

broker.id=2
listeners=PLAINTEXT://:9094
log.dirs=/tmp/kafka-logs2

server.3.properties

broker.id=3
listeners=PLAINTEXT://:9095
log.dirs=/tmp/kafka-logs3

答案 2 :(得分:0)

在我的本地设置中,我遇到了相同的问题,其中有3个运行kafka的虚拟机和1个zookeeper,其中2个运行正常,除了一个。在修复了我的3个经纪人启动没有任何问题之后,我被要求检查IP地址设置错误的/ etc / hosts