kafka中server.properties中的关键配置
server.properties
是 Kafka broker(服务器节点)的核心配置文件,用于定义 broker 的身份、网络、存储、日志、分区副本等关键参数。以下是常用配置项的详细说明(基于 Kafka 2.x+ 版本):
一、基本身份配置
broker.id
- 作用:唯一标识当前 broker 的 ID(整数,如 0、1、2…)。
- 要求:集群中所有 broker 的
broker.id
必须唯一。 - 示例:
broker.id=0
- 进阶:若开启自动生成(
broker.id.generation.enable=true
),可无需手动指定,由 Kafka 自动分配。
二、网络配置
-
listeners
- 作用:指定 broker 监听客户端连接的地址和协议(格式:
协议://主机:端口
)。 - 常用协议:
PLAINTEXT
(明文)、SSL
(加密)、SASL_PLAINTEXT
(SASL 认证+明文)等。 - 示例:
# 允许本地和外部网络访问(0.0.0.0 表示监听所有网卡) listeners=PLAINTEXT://0.0.0.0:9092
- 作用:指定 broker 监听客户端连接的地址和协议(格式:
-
advertised.listeners
- 作用:向客户端(生产者/消费者)通告的连接地址(客户端实际使用的地址)。
- 场景:若 broker 在内网(如 Docker 容器、虚拟机),需指定外网可访问的 IP/域名。
- 示例:
# 外部客户端通过 192.168.1.100:9092 连接 advertised.listeners=PLAINTEXT://192.168.1.100:9092
-
port
- 作用:默认监听端口(若