Ubuntu系统下Kafka配置文件的编辑位置及步骤
Kafka的主要配置文件为**server.properties**,在Ubuntu系统中的默认路径为:
/path/to/kafka/config/server.properties(/path/to/kafka 是Kafka的安装目录,需根据实际安装位置调整)。
常见安装目录示例:
/usr/local,路径为/usr/local/kafka/config/server.properties;/opt/apps/kafka),路径为/opt/apps/kafka/config/server.properties。使用文本编辑器(如nano、vim)打开server.properties文件(需管理员权限,故用sudo):
sudo nano /usr/local/kafka/config/server.properties
# 或使用vim
sudo vim /usr/local/kafka/config/server.properties
根据需求调整以下核心参数(修改前建议备份原文件:cp server.properties server.properties.bak):
broker.id:Kafka broker的唯一标识(需为整数,集群中不可重复),例如:broker.id=0listeners:Kafka监听的地址和端口(若需远程访问,将localhost替换为服务器IP),例如:listeners=PLAINTEXT://0.0.0.0:9092log.dirs:Kafka日志文件的存储目录(需提前创建),例如:log.dirs=/opt/kafka/logszookeeper.connect:ZooKeeper集群连接地址(Kafka依赖ZooKeeper管理元数据),例如:zookeeper.connect=localhost:2181num.partitions:默认分区数(新创建Topic的默认分区数量),例如:num.partitions=3default.replication.factor:默认副本因子(数据冗余级别,建议≥2),例如:default.replication.factor=2nano编辑器:按Ctrl+O保存文件,按Ctrl+X退出;vim编辑器:按Esc退出编辑模式,输入:wq保存并退出。修改配置文件后,需重启Kafka服务:
# 若使用systemd管理Kafka服务
sudo systemctl restart kafka
# 若通过脚本启动Kafka
sudo /usr/local/kafka/bin/kafka-server-stop.sh
sudo /usr/local/kafka/bin/kafka-server-start.sh /usr/local/kafka/config/server.properties
通过Kafka命令行工具创建Topic并测试生产消费流程:
# 创建测试Topic(名称为test,1个分区,1个副本)
/usr/local/kafka/bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
# 启动生产者(向test Topic发送消息)
/usr/local/kafka/bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
# 启动消费者(从test Topic消费消息,--from-beginning表示从最早消息开始)
/usr/local/kafka/bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
/usr/local/kafka/bin/kafka-server-start.sh文件(添加export JVM_OPTS="-Xms4g -Xmx4g"调整堆内存);PLAINTEXT协议(替换为SSL或SASL),并配置advertised.listeners(对外公开的Broker地址)。