温馨提示×

ubuntu kafka端口如何配置

小樊
36
2026-07-18 21:26:03
栏目: 智能运维

在 Ubuntu 上配置 Kafka 端口,主要涉及 Kafka Broker 端口Zookeeper 端口(如果还在使用 Zookeeper)。下面分情况说明。


一、Kafka Broker 端口(最重要)

Kafka 默认使用 9092 端口,配置文件在:

$KAFKA_HOME/config/server.properties

1️⃣ 修改 Kafka 监听端口

编辑配置文件:

sudo nano $KAFKA_HOME/config/server.properties

关键配置项:

# 监听地址和端口(常用)
listeners=PLAINTEXT://0.0.0.0:9092

# 对外暴露给客户端的地址(非常重要)
advertised.listeners=PLAINTEXT://你的服务器IP:9092

# 协议映射
listener.security.protocol.map=PLAINTEXT:PLAINTEXT

2️⃣ 示例

本机 / 单机测试

listeners=PLAINTEXT://localhost:9092
advertised.listeners=PLAINTEXT://localhost:9092

服务器对外访问(推荐)

listeners=PLAINTEXT://0.0.0.0:9092
advertised.listeners=PLAINTEXT://192.168.1.100:9092

⚠️ advertised.listeners 必须能被客户端访问到,否则会连接失败。


二、修改端口号(如改成 9093)

listeners=PLAINTEXT://0.0.0.0:9093
advertised.listeners=PLAINTEXT://192.168.1.100:9093

修改后重启 Kafka:

$KAFKA_HOME/bin/kafka-server-stop.sh
$KAFKA_HOME/bin/kafka-server-start.sh -daemon $KAFKA_HOME/config/server.properties

三、Zookeeper 端口(老版本 Kafka)

如果 Kafka 还依赖 Zookeeper(Kafka ≤ 2.x):

配置文件:

$KAFKA_HOME/config/zookeeper.properties

默认端口:

clientPort=2181

可修改为:

clientPort=2182

四、Ubuntu 防火墙放行端口(非常重要)

1️⃣ 查看防火墙状态

sudo ufw status

2️⃣ 放行 Kafka 端口

sudo ufw allow 9092

如果是 Zookeeper:

sudo ufw allow 2181

五、验证端口是否生效

1️⃣ 查看端口监听

ss -lntp | grep 9092

或:

netstat -lntp | grep 9092

2️⃣ 测试连接

telnet 127.0.0.1 9092

六、Kafka 3.x(无 Zookeeper,KRaft 模式)

如果你用的是 Kafka 3.x + KRaft

# controller 端口
process.roles=broker,controller
node.id=1
controller.quorum.voters=1@localhost:9093

# broker 端口
listeners=PLAINTEXT://0.0.0.0:9092
advertised.listeners=PLAINTEXT://localhost:9092

七、常见错误

Connection refused
→ 端口没开 / 防火墙没放行

advertised.listeners 配置错误
→ 客户端连不上 broker

❌ 只改 listeners 不改 advertised.listeners
→ 外部访问失败


如果你愿意,可以告诉我:

  • Kafka 版本
  • 是否使用 Zookeeper
  • 本机 / 服务器 / Docker

我可以给你一份 完全适配你环境的配置示例

0