温馨提示×

kafka在centos上的配置技巧有哪些

小樊
35
2025-02-18 21:00:14
栏目: 智能运维
Centos服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在CentOS上配置Kafka时,以下是一些关键步骤和技巧:

1. 安装和配置Zookeeper

  • 安装JDK:Kafka需要Java运行环境,首先需要安装JDK。可以使用以下命令安装OpenJDK 8:
    sudo yum install java-1.8.0-openjdk-devel
    
  • 配置Zookeeper:Kafka依赖Zookeeper,需要先启动Zookeeper。可以下载并解压Zookeeper安装包,然后启动Zookeeper服务。
    wget https://downloads.apache.org/zookeeper/zookeeper-3.7.0/apache-zookeeper-3.7.0-bin.tar.gz
    tar -xzf apache-zookeeper-3.7.0-bin.tar.gz
    cd apache-zookeeper-3.7.0
    ./bin/zookeeper-server-start.sh config/zookeeper.properties
    

2. 安装Kafka

  • 下载Kafka:从Apache Kafka官网下载最新版本的Kafka安装包。
  • 解压Kafka:使用tar命令解压下载的Kafka压缩包。
    tar -xzvf kafka_2.13-2.6.1.tgz
    
  • 移动Kafka到指定目录:将解压后的Kafka文件夹移动到合适的位置,例如/usr/local/kafka

3. 配置Kafka

  • 修改server.properties文件:进入Kafka的config目录,编辑server.properties文件。以下是一些关键配置项:
    • broker.id:每个Broker的唯一标识,通常设置为0。
    • listeners:监听的协议和地址,例如listeners=SASL_PLAINTEXT://your.host.name:9092
    • security.inter.broker.protocol: broker之间的安全协议,通常设置为SASL_PLAINTEXT
    • log.dirs:日志文件的存储目录,例如/home/kafka/kafka-logs
    • zookeeper.connect:Zookeeper的地址和端口,例如zookeeper.connect=192.168.0.1:2181
    • sasl.enabled.mechanisms:启用的认证机制,例如PLAIN
    • auto.create.topics.enable:是否允许自动创建Topic,建议设置为false
    • num.network.threadsnum.io.threads:网络线程和I/O线程的数量,可以根据需要调整。
    • log.flush.interval.messageslog.flush.interval.ms:日志刷新间隔,可以根据需要调整。
    • log.retention.hourslog.retention.bytes:日志保留时间和大小,可以根据存储需求调整。

4. 启动Kafka服务

  • 启动Kafka:在Kafka的bin目录下,使用以下命令启动Kafka服务:
    ./kafka-server-start.sh ../config/server.properties
    
  • 设置开机自启动:可以创建一个系统服务脚本,并将其添加到系统启动项中。
    sudo vi /etc/rc.d/init.d/kafka
    
    添加以下内容并赋予执行权限:
    #!/bin/bash
    export JAVA_HOME=/usr/java/latest
    export PATH=$JAVA_HOME/bin:$PATH
    case "$1" in
      start)
        /usr/local/kafka/bin/kafka-server-start.sh /usr/local/kafka/config/server.properties
        ;;
      stop)
        /usr/local/kafka/bin/kafka-server-stop.sh
        ;;
      status)
        jps
        ;;
      restart)
        stop
        start
        ;;
      *)
        echo "Usage: $0 {start|stop|status|restart}"
        exit 1
        ;;
    esac
    
    然后注册为系统服务并设置为开机自启动:
    sudo chkconfig --add kafka
    sudo chkconfig kafka on
    

5. 验证配置

  • 创建Topic:使用以下命令创建一个Topic进行测试:
    ./kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic test
    
  • 发送和接收消息:使用kafka-console-producer.shkafka-console-consumer.sh命令进行消息发送和接收测试。
    ./kafka-console-producer.sh --broker-list localhost:9092 --topic test
    ./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
    

6. 安全配置

  • 配置认证:可以配置Kafka的认证机制,例如使用SASL。需要创建kafka_server_jaas.conf文件,并在启动Kafka时指定该文件。
    if ["$KAFKA_OPTS"]; then
      export KAFKA_OPTS="-Djava.security.auth.login.config=/home/kafka/kafka_2.13-2.6.1/config/kafka_server_jaas.conf"
    fi
    

通过以上步骤和技巧,可以在CentOS上成功配置和运行Kafka。根据具体需求,可以进一步调整和优化配置参数。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读:centos上kafka配置有哪些技巧

0