Ubuntu Kafka 安装步骤是什么
Ubuntu系统安装Apache Kafka的详细步骤
1. 准备工作
- 系统要求:Ubuntu 20.04 LTS及以上版本(推荐);内存≥4GB(生产环境建议≥8GB);磁盘空间≥500GB(SSD优先);网络支持TCP通信。
- 依赖工具:需提前安装
wget
(用于下载安装包)、tar
(用于解压)、vim
/nano
(用于编辑配置文件)。可通过sudo apt update & & sudo apt install -y wget tar vim
安装。
2. 安装Java Development Kit (JDK)
Kafka基于Java开发,需安装JDK 8及以上版本(推荐OpenJDK 11,兼容性更好)。
执行以下命令安装:
sudo apt update
sudo apt install -y openjdk-11-jdk
验证安装是否成功:
java -version
输出应包含openjdk version "11.x.x"
,表示安装完成。
3. 安装与配置ZooKeeper(传统模式必需)
Kafka通过ZooKeeper管理集群元数据(如Broker信息、Topic配置)。若使用Kafka 2.8+的KRaft模式(无ZooKeeper),可跳过此步。
3.1 下载并解压ZooKeeper
从Apache官网下载稳定版(如3.6.3),解压至/opt
目录:
wget https://downloads.apache.org/zookeeper/zookeeper-3.6.3/apache-zookeeper-3.6.3-bin.tar.gz
tar -xzf apache-zookeeper-3.6.3-bin.tar.gz
sudo mv apache-zookeeper-3.6.3-bin /opt/zookeeper
3.2 配置ZooKeeper
进入ZooKeeper配置目录,复制默认配置文件并修改:
cd /opt/zookeeper/conf
cp zoo_sample.cfg zoo.cfg
sudo nano zoo.cfg
修改以下关键参数(取消注释并调整值):
tickTime=2000
dataDir=/var/lib/zookeeper
clientPort=2181
3.3 创建数据目录并启动
sudo mkdir -p /var/lib/zookeeper
sudo chown -R $USER:$USER /var/lib/zookeeper # 授权当前用户
启动ZooKeeper服务:
/opt/zookeeper/bin/zkServer.sh start
验证是否启动成功(监听2181端口):
sudo netstat -tulnp | grep 2181
输出应显示2181/tcp
处于LISTEN
状态。
4. 下载并解压Kafka
从Apache官网下载最新稳定版(如3.6.0),解压至/opt
目录:
wget https://downloads.apache.org/kafka/3.6.0/kafka_2.13-3.6.0.tgz
tar -xzf kafka_2.13-3.6.0.tgz
sudo mv kafka_2.13-3.6.0 /opt/kafka
建议将Kafka用户添加至系统用户组(可选,提升安全性):
sudo groupadd kafka
sudo useradd -g kafka kafka
sudo chown -R kafka:kafka /opt/kafka
5. 配置Kafka
进入Kafka配置目录,编辑server.properties
文件(核心配置):
cd /opt/kafka/config
sudo nano server.properties
修改以下关键参数:
# Broker唯一标识(单机版固定为0,集群版需唯一)
broker.id=0
# 监听地址(0.0.0.0允许所有IP访问,生产环境建议指定本机IP)
listeners=PLAINTEXT://:9092
# 对外暴露地址(客户端连接用,生产环境需替换为公网IP或域名)
advertised.listeners=PLAINTEXT://localhost:9092
# 日志存储目录(需提前创建并授权)
log.dirs=/opt/kafka/data
# ZooKeeper连接地址(传统模式必需,KRaft模式可删除此行)
zookeeper.connect=localhost:2181
# 默认分区数(可根据需求调整)
num.partitions=3
# 数据保留时间(小时,默认168小时=7天)
log.retention.hours=168
# 允许删除Topic(生产环境建议关闭)
delete.topic.enable=true
创建日志目录并授权:
sudo mkdir -p /opt/kafka/data
sudo chown -R kafka:kafka /opt/kafka/data
6. 启动Kafka服务
6.1 启动Kafka
使用以下命令后台启动Kafka(指定配置文件路径):
/opt/kafka/bin/kafka-server-start.sh -daemon /opt/kafka/config/server.properties
6.2 验证启动状态
检查Kafka是否监听9092端口:
sudo netstat -tulnp | grep 9092
输出应显示9092/tcp
处于LISTEN
状态,表示启动成功。
7. 测试Kafka功能
7.1 创建Topic
创建名为test
的Topic(1个分区,1个副本):
/opt/kafka/bin/kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic test
7.2 列出Topic
验证Topic是否创建成功:
/opt/kafka/bin/kafka-topics.sh --list --bootstrap-server localhost:9092
输出应包含test
。
7.3 生产与消费消息
-
启动生产者(向
test
Topic发送消息):/opt/kafka/bin/kafka-console-producer.sh --bootstrap-server localhost:9092 --topic test
在终端输入消息(如
Hello Kafka
),按Ctrl+D
结束输入。 -
启动消费者(从
test
Topic接收消息):/opt/kafka/bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
应能看到生产者发送的消息,表示Kafka功能正常。
8. 可选:配置环境变量
为方便全局使用Kafka命令,可将Kafka的bin
目录添加至PATH
环境变量:
echo 'export PATH=$PATH:/opt/kafka/bin' >
>
~/.bashrc
source ~/.bashrc
之后可直接在终端使用kafka-topics.sh
、kafka-console-producer.sh
等命令。
注意事项
- KRaft模式:Kafka 2.8+支持无ZooKeeper模式(KRaft),需修改
server.properties
中的process.roles=broker,controller
、controller.quorum.voters=0@localhost:9093
等参数,无需启动ZooKeeper。适合生产环境简化架构。 - 防火墙配置:若通过远程IP访问,需开放9092(Kafka)和2181(ZooKeeper)端口:
sudo ufw allow 9092/tcp sudo ufw allow 2181/tcp sudo ufw reload
- 数据备份:定期备份
/opt/kafka/data
(Kafka日志)和/var/lib/zookeeper
(ZooKeeper数据),避免数据丢失。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Ubuntu Kafka 安装步骤是什么
本文地址: https://pptw.com/jishu/726898.html