**前言 由于原来的云服务器到期,需要在新的云服务器上部署kafka,但按照以往的配置确无法连接。

**

解决云服务器上部署的kafka无法连接问题

错误信息: Connection to node -1 (/180.76.56.208:9092) could not be established. Broker may not be available.

1、常规配置

  • 解压:tar -zxvf kafka_2.13-2.5.0.tgz

  • 解压后即完成了安装,不需要做其他操作;

  • 切换到解压后的目录:cd kafka_2.13-2.5.0/config

  • 修改server.properties三项配置:

  • listeners=PLAINTEXT://127.0.0.1:9092 (云服务器需要设置本地的)

  • advertised.listeners=PLAINTEXT://公网IP:9092

  • zookeeper.connect=127.0.0.1:2181

  • 启动kafka:./kafka-server-start.sh …/config/server.properties &

  • Kafka启动后默认端口:9092

以上操作后启动后k控制台报错在这里插入图片描述
启动程序连接报错
在这里插入图片描述

查了博客好多,也没解决问题。

先了解kafka的server.properties配置文件设置的三项配置

1. listeners
监听ip和端口
listeners=PLAINTEXT://127.0.0.1:9092 (云服务器需要设置本地的)
2. advertised.listeners
节 点的主机名会通知给生产者和消费者,如果没有设置,它将会使用"host.name"的值(前提是设置了host.name),否则他会使用java.net.InetAddress.getCanonicalHostName()的返回值
advertised.listeners=PLAINTEXT://公网IP:9092
3. zookeepe连接
zookeeper.connect=127.0.0.1:2181

解决办法

listeners设置如下

listeners=PLAINTEXT://0.0.0.0:9092

重新配置listeners后就可以了
原因: 主机名为0.0.0.0表示绑定所有的网卡。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐