ubuntu

kafka在ubuntu上怎么设置

小樊
49
2025-10-17 07:29:04
栏目: 智能运维

1. 准备工作

2. 安装Java环境 Kafka依赖Java运行,需先安装OpenJDK 8:

sudo apt update
sudo apt install openjdk-8-jdk
# 验证安装
java -version

若输出Java版本信息(如openjdk version "1.8.0_392"),则说明安装成功。

3. 安装与配置Zookeeper Kafka通过Zookeeper管理集群元数据,需先安装Zookeeper:

# 下载并解压Zookeeper(以3.6.3为例)
wget https://downloads.apache.org/zookeeper/zookeeper-3.6.3/zookeeper-3.6.3.tar.gz
tar -xzvf zookeeper-3.6.3.tar.gz
sudo mv zookeeper-3.6.3 /opt/zookeeper

# 创建数据目录并授权
sudo mkdir -p /var/lib/zookeeper
sudo chown -R $(whoami):$(whoami) /opt/zookeeper /var/lib/zookeeper

# 配置Zookeeper
sudo cat > /opt/zookeeper/conf/zoo.cfg << EOF
tickTime=2000
dataDir=/var/lib/zookeeper
clientPort=2181
EOF

# 启动Zookeeper
/opt/zookeeper/bin/zkServer.sh start
# 验证启动(检查2181端口)
sudo netstat -plnt | grep 2181

若输出包含0.0.0.0:2181,则Zookeeper启动成功。

4. 安装Kafka 下载并解压Kafka(以3.5.2为例):

# 下载并解压Kafka
wget https://downloads.apache.org/kafka/3.5.2/kafka_2.12-3.5.2.tgz
tar -xzvf kafka_2.12-3.5.2.tgz
sudo mv kafka_2.12-3.5.2 /opt/kafka

# 创建日志目录并授权
sudo mkdir -p /var/lib/kafka
sudo chown -R $(whoami):$(whoami) /opt/kafka /var/lib/kafka

5. 配置Kafka 编辑Kafka配置文件server.properties(位于/opt/kafka/config/):

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

修改以下关键参数:

# Broker唯一标识(集群中需唯一)
broker.id=0
# 监听地址(单机用localhost,集群用服务器IP)
listeners=PLAINTEXT://localhost:9092
# 日志存储目录
log.dirs=/var/lib/kafka
# Zookeeper连接地址
zookeeper.connect=localhost:2181
# 可选:日志保留时间(小时)
log.retention.hours=168  # 7天

保存退出(Ctrl+OEnterCtrl+X)。

6. 启动Kafka

# 启动Kafka(后台模式)
/opt/kafka/bin/kafka-server-start.sh -daemon /opt/kafka/config/server.properties
# 验证启动(检查9092端口)
sudo netstat -plnt | grep 9092

若输出包含0.0.0.0:9092,则Kafka启动成功。

7. 测试Kafka功能

8. 可选:配置开机自启动 创建systemd服务文件/etc/systemd/system/kafka.service

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

添加以下内容:

[Unit]
Description=Kafka Service
After=network.target zookeeper.service

[Service]
Type=forking
Environment="JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64"
ExecStart=/opt/kafka/bin/zookeeper-server-start.sh /opt/zookeeper/config/zoo.cfg
ExecStartPost=/opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/server.properties
ExecStop=/opt/kafka/bin/kafka-server-stop.sh
ExecStopPost=/opt/zookeeper/bin/zkServer.sh stop
Restart=on-failure

[Install]
WantedBy=multi-user.target

保存退出后,执行以下命令启用并启动服务:

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

通过sudo systemctl status kafka可查看服务状态。

0
看了该问题的人还看了