假定阿里云外网ip为: 123.123.123.123
假定阿里云内网ip为: 172.172.172.172
1. zookeeper配置文件 zoo.cfg (无特别注意事项)
cat conf/zoo.cfg |grep -v "#"
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/opt/install/zookeeper-3.5.8/data
clientPort=2181
改动之处只有 dataDir
2. kafka配置文件 server.properties(只列出需要注意的配置)
cat config/server.properties |grep -Ev "^$|#"
listeners=PLAINTEXT://172.172.172.172:9092
advertised.host.name=172.172.172.172
advertised.listeners=PLAINTEXT://123.123.123.123:9092
zookeeper.connect=123.123.123.123:2181
log.dirs=/opt/install/kafka_2.11-2.4.1/kafka-logs
- listeners=PLAINTEXT:// 内网的ip地址和9092端口
- advertised.listeners=PLAINTEXT://外网的ip的地址和9092端口
- advertised.host.name= 内网的ip地址
- zookeeper.connect=外网的IP地址和2181端口
参考: kafka在阿里云上的配置
如此, 在本地idea里使用代码访问才可以通!
3. listeners/advertised.listeners
listeners
: 是kafka真正broker的地址advertised.listeners
: 提供给producer和consumer访问的地址;是暴露给外部的listeners,如果没有设置,会用listeners配置项;
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 hi@niewj.com