ubuntu

kafka集群搭建ubuntu步骤

小樊
35
2025-09-03 13:21:50
栏目: 智能运维

以下是在Ubuntu上搭建Kafka集群的步骤:

  1. 安装Java

    sudo apt update  
    sudo apt install openjdk-11-jdk  
    java -version  # 验证安装  
    
  2. 安装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  
      sudo mv apache-zookeeper-3.7.0 /opt/zookeeper  
      
    • 配置zoo.cfg
      sudo nano /opt/zookeeper/conf/zoo.cfg  
      dataDir=/opt/zookeeper/data  
      clientPort=2181  
      server.1=zoo1:2888:3888  # 多节点需配置所有节点IP  
      server.2=zoo2:2888:3888  
      server.3=zoo3:2888:3888  
      
    • 启动ZooKeeper:
      cd /opt/zookeeper/bin  
      ./zkServer.sh start  
      ./zkServer.sh status  # 验证启动  
      
  3. 安装Kafka

    • 下载并解压:
      wget https://downloads.apache.org/kafka/3.6.2/kafka_2.12-3.6.2.tgz  
      tar -xzf kafka_2.12-3.6.2.tgz  
      sudo mv kafka_2.12-3.6.2 /opt/kafka  
      
    • 创建数据目录:
      sudo mkdir -p /opt/kafka/logs  
      sudo chown -R $USER:$USER /opt/kafka/logs  
      
  4. 配置Kafka

    • 编辑server.properties(每节点唯一配置):
      sudo nano /opt/kafka/config/server.properties  
      broker.id=1  # 每个节点唯一ID  
      listeners=PLAINTEXT://节点IP:9092  
      advertised.listeners=PLAINTEXT://节点IP:9092  
      zookeeper.connect=zoo1:2181,zoo2:2181,zoo3:2181  # ZooKeeper集群地址  
      log.dirs=/opt/kafka/logs  
      
    • 复制配置文件到其他节点并修改broker.id
  5. 启动Kafka集群

    • 在每个节点上执行:
      cd /opt/kafka/bin  
      ./kafka-server-start.sh /opt/kafka/config/server.properties &  
      
  6. 验证集群

    • 创建Topic:
      ./kafka-topics.sh --create --bootstrap-server 节点IP:9092 --replication-factor 3 --partitions 1 --topic test  
      
    • 列出Topic:
      ./kafka-topics.sh --list --bootstrap-server 节点IP:9092  
      
    • 生产者/消费者测试:
      # 生产者  
      ./kafka-console-producer.sh --broker-list 节点IP:9092 --topic test  
      # 消费者  
      ./kafka-console-consumer.sh --bootstrap-server 节点IP:9092 --topic test --from-beginning  
      
  7. 可选:配置Systemd服务

    • 创建服务文件:
      sudo nano /etc/systemd/system/kafka.service  
      [Unit]  
      Description=Apache Kafka Server  
      Requires=zookeeper.service  
      After=zookeeper.service  
      [Service]  
      Type=simple  
      User=kafka  
      WorkingDirectory=/opt/kafka  
      ExecStart=/opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/server.properties  
      ExecStop=/opt/kafka/bin/kafka-server-stop.sh  
      Restart=always  
      [Install]  
      WantedBy=multi-user.target  
      
    • 启用并启动服务:
      sudo systemctl daemon-reload  
      sudo systemctl start kafka  
      sudo systemctl enable kafka  
      

注意事项

0
看了该问题的人还看了