这是因为Kafka的默认设置是使用本地主机(localhost)进行绑定,但是在某些情况下,您可能需要将其绑定到特定的IP地址/主机名,以便其他服务器可以访问该Kafka服务。要解决此问题,您需要在Kafka的server.properties配置文件中进行更改。
首先,找到server.properties文件并打开它,然后找到以下几行:
#advertised.listeners=PLAINTEXT://your.host.name:9092 #listeners=PLAINTEXT://:9092
您需要将这两行的注释符号(#)删除,并将其值更改为所需的地址和端口。例如,如果您要将Kafka绑定到 deploy.static.akamaitechnologies.com,端口为9092,则可以将这两行更改为:
advertised.listeners=PLAINTEXT://deploy.static.akamaitechnologies.com:9092 listeners=PLAINTEXT://:9092
然后,保存您所做的更改并重新启动Kafka服务器。
在使用Kafka producer或consumer时,需要将bootstrap.servers属性设置为您指定的IP地址或主机名。例如:
Properties props = new Properties(); props.put("bootstrap.servers", "deploy.static.akamaitechnologies.com:9092");