ubuntu

kafka在ubuntu怎样稳定运行

小樊
37
2025-06-24 04:58:01
栏目: 智能运维

在Ubuntu上稳定运行Apache Kafka需要经过一系列的步骤,包括安装Java环境、下载和解压Kafka、配置Kafka以及启动Kafka服务等。以下是详细的步骤指南:

安装Java环境

Kafka需要Java环境来运行,推荐使用OpenJDK 11。

sudo apt update
sudo apt install openjdk-11-jdk -y
java -version

下载和解压Kafka

从Apache Kafka官网下载最新稳定版本的Kafka,并解压到指定目录。

wget https://downloads.apache.org/kafka/3.6.1/kafka_2.12-3.6.1.tgz
tar -zxvf kafka_2.12-3.6.1.tgz -C /usr/local/

配置Kafka

  1. 配置Zookeeper

    • 创建Zookeeper的数据目录:

      mkdir -p /usr/local/kafka/data/zookeeper
      
    • 编辑Zookeeper配置文件:

      nano /usr/local/kafka/config/zookeeper.properties
      
    • 更新 dataDir 属性指向新数据目录:

      dataDir=/usr/local/kafka/data/zookeeper
      
    • 启动Zookeeper:

      /usr/local/kafka/bin/zookeeper-server-start.sh /usr/local/kafka/config/zookeeper.properties
      
  2. 配置Kafka Broker

    • 创建Kafka的数据目录:

      mkdir -p /usr/local/kafka/data/kafka
      
    • 编辑Kafka配置文件:

      nano /usr/local/kafka/config/server.properties
      
    • 更新以下属性:

      log.dirs=/usr/local/kafka/data/kafka
      zookeeper.connect=localhost:2181
      

启动Zookeeper和Kafka

在两个终端会话中分别启动Zookeeper和Kafka。

启动Zookeeper

/usr/local/kafka/bin/zookeeper-server-start.sh /usr/local/kafka/config/zookeeper.properties

启动Kafka

/usr/local/kafka/bin/kafka-server-start.sh /usr/local/kafka/config/server.properties

测试安装

  1. 创建一个测试Topic

    /usr/local/kafka/bin/kafka-topics.sh --create --topic test --bootstrap-server localhost:9092 --partitions 1 --replication-factor 1
    
  2. 生产消息并消费消息以验证Kafka的功能

    • 生产者:

      /usr/local/kafka/bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
      
    • 消费者:

      /usr/local/kafka/bin/kafka-console-consumer.sh --topic test --from-beginning --bootstrap-server localhost:9092
      

设置Kafka为Systemd服务(可选)

为了确保Kafka和Zookeeper在启动时自动启动,可以将它们设置为systemd服务。

  1. 创建Zookeeper的systemd服务文件

    sudo nano /etc/systemd/system/zookeeper.service
    

    添加以下内容:

    [Unit]
    Description=Apache Zookeeper server
    Documentation=http://zookeeper.apache.org/doc/current/
    
    [Service]
    Type=simple
    Environment="PATH=/usr/local/kafka/bin:/usr/local/sbin:/usr/sbin:/usr/bin:/sbin:/bin"
    User=root
    Group=root
    ExecStart=/usr/local/kafka/bin/zookeeper-server-start.sh /usr/local/kafka/config/zookeeper.properties
    ExecStop=/usr/local/kafka/bin/zookeeper-server-stop.sh
    Restart=on-failure
    
    [Install]
    WantedBy=multi-user.target
    

    启动并启用Zookeeper服务:

    sudo systemctl daemon-reload
    sudo systemctl start zookeeper
    sudo systemctl enable zookeeper
    
  2. 创建Kafka的systemd服务文件

    sudo nano /etc/systemd/system/kafka.service
    

    添加以下内容:

    [Unit]
    Description=Apache Kafka server
    Documentation=http://kafka.apache.org/documentation.html
    
    [Service]
    Type=simple
    Environment="PATH=/usr/local/kafka/bin:/usr/local/sbin:/usr/sbin:/usr/bin:/sbin:/bin"
    User=root
    Group=root
    ExecStart=/usr/local/kafka/bin/kafka-server-start.sh /usr/local/kafka/config/server.properties
    ExecStop=/usr/local/kafka/bin/kafka-server-stop.sh
    Restart=on-failure
    
    [Install]
    WantedBy=multi-user.target
    

    启动并启用Kafka服务:

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

通过以上步骤,您可以在Ubuntu上成功安装并运行Apache Kafka。请确保遵循所有步骤,并根据需要调整配置。

0
看了该问题的人还看了