首页主机资讯ubuntu下kafka配置步骤

ubuntu下kafka配置步骤

时间2025-10-17 13:41:04发布访客分类主机资讯浏览639
导读:Ubuntu下Kafka配置详细步骤 1. 安装Java环境 Kafka依赖Java运行时环境(JRE),推荐使用OpenJDK 8或11(兼容性更好)。 sudo apt update sudo apt install openjdk-1...

Ubuntu下Kafka配置详细步骤

1. 安装Java环境

Kafka依赖Java运行时环境(JRE),推荐使用OpenJDK 8或11(兼容性更好)。

sudo apt update
sudo apt install openjdk-11-jdk -y  # 推荐使用OpenJDK 11
java -version  # 验证安装(输出需包含Java版本信息)

:若使用OpenJDK 8,将命令中的openjdk-11-jdk替换为openjdk-8-jdk

2. 下载并解压Kafka

从Apache Kafka官网下载最新稳定版本(如3.7.0),解压至指定目录(如/opt/kafka)。

wget https://downloads.apache.org/kafka/3.7.0/kafka_2.13-3.7.0.tgz  # 替换为最新版本链接
tar -xzvf kafka_2.13-3.7.0.tgz
sudo mv kafka_2.13-3.7.0 /opt/kafka  # 移动至/opt目录(系统级软件推荐路径)

3. 配置Zookeeper(Kafka依赖组件)

Kafka通过Zookeeper实现集群管理和协调,需先配置Zookeeper。

  • 创建数据目录
    sudo mkdir -p /opt/zookeeper/data  # 存储Zookeeper数据
    
  • 配置Zookeeper
    复制默认配置文件并修改关键参数:
    sudo cp /opt/kafka/config/zoo_sample.cfg /opt/kafka/config/zoo.cfg  # 复制模板
    sudo vi /opt/kafka/config/zoo.cfg  # 编辑配置
    
    修改以下内容(根据实际路径调整):
    dataDir=/opt/zookeeper/data  # 数据存储路径
    clientPort=2181              # 客户端连接端口
    tickTime=2000                # 心跳间隔(毫秒)
    initLimit=10                 # 初始化连接超时(心跳数)
    syncLimit=5                  # 同步超时(心跳数)
    
  • 启动Zookeeper
    /opt/kafka/bin/zkServer.sh start  # 启动Zookeeper
    netstat -nap | grep 2181          # 验证端口(需显示LISTEN状态)
    

4. 配置Kafka Broker

编辑Kafka主配置文件server.properties,设置关键参数:

sudo vi /opt/kafka/config/server.properties

修改以下核心配置(按需调整):

# Broker唯一标识(集群中需唯一)
broker.id=0  

# 监听地址(单机用localhost,集群用服务器IP)
listeners=PLAINTEXT://localhost:9092  

# 对外公布的地址(集群中需指向服务器IP,供其他Broker访问)
advertised.listeners=PLAINTEXT://your_server_ip:9092  

# 日志存储目录(需提前创建)
log.dirs=/opt/kafka/logs  

# Zookeeper连接地址(集群中需列出所有Zookeeper节点)
zookeeper.connect=localhost:2181  

# 允许删除Topic(生产环境建议关闭)
delete.topic.enable=true  

# 日志保留时间(小时,默认168小时=7天)
log.retention.hours=168  

5. 配置环境变量(可选但推荐)

将Kafka和Zookeeper路径添加至系统环境变量,方便全局调用。

sudo vi /etc/profile  # 编辑全局环境变量

在文件末尾添加:

export KAFKA_HOME=/opt/kafka
export PATH=$PATH:$KAFKA_HOME/bin
export ZOOKEEPER_HOME=/opt/kafka  # Zookeeper与Kafka同目录时无需额外配置

使配置生效:

source /etc/profile

6. 启动Kafka服务

  • 直接启动(前台模式,用于测试)
    /opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/server.properties
    
  • 后台守护进程模式(生产环境推荐)
    /opt/kafka/bin/kafka-server-start.sh -daemon /opt/kafka/config/server.properties
    
  • 验证Kafka进程
    ps aux | grep kafka  # 查看是否有kafka进程
    netstat -nap | grep 9092  # 验证Kafka端口(需显示LISTEN状态)
    

7. 验证Kafka功能

  • 创建测试Topic
    /opt/kafka/bin/kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic test
    
  • 启动生产者发送消息
    /opt/kafka/bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
    
    输入消息(如Hello Kafka),按Ctrl+D结束输入。
  • 启动消费者接收消息
    /opt/kafka/bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
    
    应能看到生产者发送的消息,验证Kafka通信正常。

8. 可选:配置开机自启(生产环境必备)

通过systemd创建服务单元,实现Kafka和Zookeeper开机自动启动。

  • 创建Zookeeper服务文件
    sudo vi /etc/systemd/system/zookeeper.service
    
    添加以下内容:
    [Unit]
    Description=Apache Zookeeper server
    After=network.target
    
    [Service]
    Type=simple
    User=root
    ExecStart=/opt/kafka/bin/zkServer.sh start
    ExecStop=/opt/kafka/bin/zkServer.sh stop
    Restart=always
    
    [Install]
    WantedBy=multi-user.target
    
  • 创建Kafka服务文件
    sudo vi /etc/systemd/system/kafka.service
    
    添加以下内容:
    [Unit]
    Description=Apache Kafka Server
    After=zookeeper.service
    
    [Service]
    Type=simple
    User=root
    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  # 重新加载systemd配置
    sudo systemctl enable zookeeper  # 开机自启Zookeeper
    sudo systemctl enable kafka      # 开机自启Kafka
    sudo systemctl start zookeeper   # 启动Zookeeper
    sudo systemctl start kafka       # 启动Kafka
    

以上步骤覆盖了Ubuntu下Kafka的基础配置流程,可根据实际需求调整参数(如集群配置、安全设置等)。配置完成后,即可通过Kafka API或命令行工具进行消息生产和消费。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: ubuntu下kafka配置步骤
本文地址: https://pptw.com/jishu/728940.html
如何在ubuntu配置kafka kafka在ubuntu上怎么设置

游客 回复需填写必要信息