kafka未连接外网:无法生产数据server.properties的注意事项

首先注意下kafka的版本:这是我接触过的两个版本

kafka2.11-0.11.0.0:新版配置抛弃了host.name 和 post选项,需在server.properties下配置

advertised.listeners=PLAINTEXT://brokerIP:9092

kafka_2.11-0.8.2.1: 需在server.properties下配置

host.name=IP号
post=9092
接下来说下我所理解的通过其他主机做生产者遇到的一些问题及理解

问题:在本机可以生产到数据,给其他人IP、端口和topic却无法生产数据到broker集群
测试后发现:其他主机没有配置hosts,导致Zookeeper无法解析其监听broker的IP和端口,这里的IP是指在集群上用的hosts别名。

host.name和port的值是注册到Zookeeper的,我写的是hosts配置的值,如slave别名。
如果advertised.host.name没有设,会用host.name的值注册到zookeeper,如果host.name也没有设,则会使用JVM拿到的本机hostname注册到zk。
如果advertised.host.name没有设,host.name不能设为0.0.0.0,否则client通过zookeeper获取的broker地址就是0.0.0.0
如果host.name和advertised.host.name都不设,client通过zk拿到的就是JVM返回的本机hostname,如果这个hostname是client无法访问到的,client就会连不上broker。
可用zkCli中执行get /brokers/查看信息

展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 书香水墨 设计师: CSDN官方博客
应支付0元
点击重新获取
扫码支付

支付成功即可阅读