静态IP而非本地主机上的Kafka服务器

时间:2020-06-08 05:52:39

标签: apache-kafka apache-zookeeper

我目前可以在本地计算机上生成和使用消息。我想更改它,以便一台机器具有动物园管理员,经纪人和生产者,而另一台机器具有消费者。我需要调整哪些服务器属性才能使其正常工作?

在服务器属性中,我尝试取消注释listeners=PLAINTEXT://:9092,设置advertised.listeners=PLAINTEXT://< machineA's static IP >:9092,以及将zookeeper.connect=localhost:2181更改为zookeeper.connect=< Machine A's static IP >:9092

但是,到目前为止,上述方法均无效。任何正确方向的指导都将非常有帮助。

1 个答案:

答案 0 :(得分:0)

设置advertised.listeners=PLAINTEXT://< machineA's static IP >:9092,并将zookeeper.connect=localhost:2181更改为 zookeeper.connect = <机器A的静态IP>:9092

zookeeper.connect应该指向Zookeeper端口,而不是kafka代理端口。所以应该 zookeeper.connect=<Machine A's static IP>:2181

以hostname:port的形式指定ZooKeeper连接字符串 其中host和port是ZooKeeper服务器的主机和端口

Broker configurations reference

还请确保您的防火墙不限制对代理端口上的使用者的访问(9092)。如果它是Linux,并且您正在使用iptables,则可能要允许该端口。

iptables -A INPUT -p tcp --dport 9092 -j ACCEPT