Linux系统上安装kafka

目录

[1. 安装Java环境](#1. 安装Java环境)

[2. 下载和解压Kafka](#2. 下载和解压Kafka)

[3. 配置Kafka](#3. 配置Kafka)

[4. 启动ZooKeeper和Kafka](#4. 启动ZooKeeper和Kafka)

[5. 测试Kafka](#5. 测试Kafka)

[6. 停止服务](#6. 停止服务)

7.常见问题


1. 安装Java环境

Kafka依赖Java运行环境(JDK 8或更高版本):

复制代码
# 安装OpenJDK(推荐)
yum install openjdk-11-jdk

# 验证安装
java -version

如果已经安装Java环境,可通过如下方式进行检查。

复制代码
​# 检查当前 JAVA_HOME
echo $JAVA_HOME

# 查找Java安装路径
update-alternatives --config java

# 输出示例:/usr/lib/jvm/java-11-openjdk-amd64/bin/java

# 设置JAVA_HOME(替换为你的路径)
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.18.0.10-1.el7_9.x86_64
export PATH=$JAVA_HOME/bin:$PATH

#永久修复(所有终端生效):
# /etc/profile
vim /etc/profile

# 添加以下内容(替换为你的路径)
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.18.0.10-1.el7_9.x86_64
export PATH=$JAVA_HOME/bin:$PATH

# 使配置生效
source /etc/profile

2. 下载和解压Kafka

从官网下载最新版Kafka(以3.7.0为例):

复制代码
​wget https://archive.apache.org/dist/kafka/3.7.0/kafka_2.13-3.7.0.tgz
tar -xzf kafka_2.13-3.7.0.tgz
mv kafka_2.13-3.7.0 /opt/kafka  #移动到/opt目录
cd /opt/kafka

3. 配置Kafka

修改配置文件 config/server.properties:

复制代码
vim config/server.properties

关键配置项:

复制代码
# 允许外部访问(替换为你的服务器IP或保持localhost)
listeners=PLAINTEXT://0.0.0.0:9092
advertised.listeners=PLAINTEXT://<服务器IP>:9092

# 日志存储目录(确保目录存在且可写)
log.dirs=/tmp/kafka-logs

4. 启动ZooKeeper和Kafka

Kafka依赖ZooKeeper协调服务,新版本内置了ZooKeeper:

复制代码
#启动ZooKeeper(后台运行)
nohup bin/zookeeper-server-start.sh config/zookeeper.properties > zookeeper.log 2>&1 &

#启动Kafka(后台运行)
nohup bin/kafka-server-start.sh config/server.properties > kafka.log 2>&1 &

5. 测试Kafka

5.1 创建Topic

复制代码
bin/kafka-topics.sh --create --topic test-topic \
--bootstrap-server localhost:9092 \
--partitions 1 --replication-factor 1

5.2 启动生产者

复制代码
bin/kafka-console-producer.sh --topic test-topic --bootstrap-server localhost:9092

5.3 启动消费者(新终端)

复制代码
bin/kafka-console-consumer.sh --topic test-topic --bootstrap-server localhost:9092 --from-beginning

6. 停止服务

复制代码
# 停止Kafka
bin/kafka-server-stop.sh

# 停止ZooKeeper
bin/zookeeper-server-stop.sh

7.常见问题

端口冲突:确保9092(Kafka)和2181(ZooKeeper)端口未被占用。

防火墙:开放端口或关闭防火墙:

日志目录权限:确保Kafka进程有权限写入log.dirs配置的目录。

通过以上步骤,成功在Linux上安装并运行Kafka!

相关推荐
三言老师3 小时前
mv移动文件、重命名文件实战案例
linux·服务器·网络·centos
乱世刀疤3 小时前
Claude Code提高工作效率案例:自动化分析工作流程时效性,缩短工单流转时长
运维·自动化
AOwhisky3 小时前
云原生 DevOps 工具链从入门到实战(第二期)——Jenkins安装与基础配置——CICD核心引擎
linux·运维·ci/cd·云原生·jenkins·devops
Wang's Blog4 小时前
Go-Zero 项目开发19:基于 Kafka 的异步消息存储与转发实战
golang·kafka
一叶之秋14124 小时前
Linux网络初识
linux·服务器·网络
盐焗鹌鹑蛋4 小时前
【Linux】基础开发工具yum和vim
linux·运维·vim
AOwhisky4 小时前
Linux(CentOS)系统管理入门笔记(第十四期)——计划任务与进程调度管理:atcron 与 nicechrt
linux·运维·笔记·centos·云计算·进程调度·计划任务
小莫分享4 小时前
sshw:用交互搜索和 Web 配置高效管理 SSH Server
linux·运维·golang·开源·ssh
Molesidy4 小时前
【linux】【全志F133】基于全志F133的busybox编译学习记录以及对于经典根文件系统busybox的学习与理解
linux
Devin~Y4 小时前
互联网大厂 Java 面试实录:Spring Boot、MyBatis、Redis、Kafka、Spring Security、RAG 与 MCP 全链路问答
java·redis·kafka·mybatis·spring security·spring mvc·sprint boot