温馨提示×

Kafka配置文件在Linux怎么设置

小樊
107
2025-09-13 09:10:43
栏目: 智能运维

Kafka在Linux下的配置主要涉及环境变量、核心配置文件及服务管理,以下是关键步骤:

一、安装与基础配置

  1. 安装Java环境
    Kafka依赖Java,需先安装JDK(建议1.8+):

    # Ubuntu/Debian
    sudo apt update && sudo apt install openjdk-8-jdk
    # CentOS/RHEL
    sudo yum install java-1.8.0-openjdk
    
  2. 下载并解压Kafka

    wget https://downloads.apache.org/kafka/3.5.2/kafka_2.12-3.5.2.tgz
    tar -zxvf kafka_2.12-3.5.2.tgz
    mv kafka_2.12-3.5.2 /usr/local/kafka
    
  3. 配置环境变量
    编辑~/.bashrc/etc/profile,添加:

    export KAFKA_HOME=/usr/local/kafka
    export PATH=$PATH:$KAFKA_HOME/bin
    source ~/.bashrc  # 使配置生效
    

二、核心配置文件(server.properties)

Kafka主配置文件位于$KAFKA_HOME/config/server.properties,关键参数如下:

  • Broker标识
    broker.id=0 # 集群中唯一ID,建议与机器名关联。
  • 监听地址
    listeners=PLAINTEXT://0.0.0.0:9092 # 监听所有接口的9092端口。
    advertised.listeners=PLAINTEXT://your-server-ip:9092 # 对外可访问地址(若有内外网差异)。
  • 日志存储
    log.dirs=/var/lib/kafka/logs # 日志目录,可指定多个路径(逗号分隔)。
    log.retention.hours=168 # 日志保留时间(默认1周,单位:小时)。
  • Zookeeper连接
    zookeeper.connect=localhost:2181 # 旧版需配置Zookeeper地址,新版可省略(依赖KRaft模式)。

三、服务管理

  1. 启动/停止Kafka

    # 启动
    $KAFKA_HOME/bin/kafka-server-start.sh $KAFKA_HOME/config/server.properties &
    # 停止
    $KAFKA_HOME/bin/kafka-server-stop.sh
    
  2. 配置开机自启动(systemd)
    创建服务文件/lib/systemd/system/kafka.service

    [Unit]
    Description=Apache Kafka Server
    After=network.target
    
    [Service]
    Type=forking
    User=root
    ExecStart=$KAFKA_HOME/bin/kafka-server-start.sh $KAFKA_HOME/config/server.properties
    ExecStop=$KAFKA_HOME/bin/kafka-server-stop.sh
    Restart=on-failure
    
    [Install]
    WantedBy=multi-user.target
    

    启用服务:

    sudo systemctl daemon-reload
    sudo systemctl enable kafka
    sudo systemctl start kafka
    

四、验证配置

  1. 检查进程

    jps | grep Kafka  # 查看Kafka进程是否存在
    
  2. 测试Topic创建

    $KAFKA_HOME/bin/kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic test
    

五、注意事项

  • 权限问题:确保log.dirs目录可写,建议使用chown -R kafka:kafka /var/lib/kafka/logs设置权限。
  • 集群配置:多节点部署时需确保broker.id唯一,且zookeeper.connect指向同一Zookeeper集群。
  • 安全配置:生产环境需启用SSL加密(ssl.enabled=true)及SASL认证。

以上步骤参考自,可根据实际需求调整参数。

0