kafka在云主机中的内外网访问问题

listeners 这个是kafka bind的端口
advertised.listeners 这个是kafka在zookeeper中注册的端口,用户客户端更新metadata
如果需要外网访问则需要配置 advertised.listeners, 但是如果配置一个则内外网都会用这个地址,浪费流量

网上有修改host的解决办法,但是会对客户端有侵入性。其实如果认真看了kafka的文档,是有办法解决的。

listener.security.protocol.map=PUBLIC_CLIENT:PLAINTEXT,PRIVATE_CLIENT:PLAINTEXT
advertised.listeners=PRIVATE_CLIENT://内网地址,PUBLIC_CLIENT://外网地址

PUBLIC_CLIENT,PRIVATE_CLIENT,并不是固定的可以任意修改,可以理解成协议的别名。

增加这两个配置就可以了,既不用修改host, 也能实现内网走内网地址,外网走外网地址。


版权声明:本文为liu_jiapeng原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。