Kafka2.8.2单机安装部署(CentOS 7.9JDK 1.8)
环境信息操作系统CentOS 7.9 (x86_64)硬件4C8G4核8GB用户rootJDK 路径/usr/local/jdk1.8.0_491已安装Kafka 版本2.8.2Scala 2.13虚拟机 IP192.168.10.5一、配置 Java 环境变量# 设置 JAVA_HOME 和 PATH立即生效 export JAVA_HOME/usr/local/jdk1.8.0_491 export PATH$JAVA_HOME/bin:$PATH # 永久写入配置文件 echo export JAVA_HOME/usr/local/jdk1.8.0_491 /etc/profile echo export PATH\$JAVA_HOME/bin:\$PATH /etc/profile source /etc/profile # 验证 java -version # 应显示 java version 1.8.0_491 echo $JAVA_HOME二、系统优化针对 4C8G# 1. 内核参数优化 cat /etc/sysctl.conf EOF vm.swappiness 1 vm.max_map_count 262144 net.core.somaxconn 65535 net.core.rmem_default 262144 net.core.rmem_max 4194304 net.core.wmem_default 262144 net.core.wmem_max 1048576 EOF sysctl -p # 2. 文件描述符限制 cat /etc/security/limits.conf EOF * soft nofile 65535 * hard nofile 65535 EOF # 当前会话生效 ulimit -n 65535三、下载并安装 Kafkacd /usr/local wget https://archive.apache.org/dist/kafka/2.8.2/kafka_2.13-2.8.2.tgz tar -xzf kafka_2.13-2.8.2.tgz mv kafka_2.13-2.8.2 /usr/local/kafka # 创建数据目录 mkdir -p /data/zookeeper mkdir -p /data/kafka-logs四、配置 Kafka 堆内存4GB通过环境变量设置不修改启动脚本echo export KAFKA_HEAP_OPTS-Xmx4G -Xms4G /etc/profile source /etc/profile echo $KAFKA_HEAP_OPTS # 验证输出 -Xmx4G -Xms4G五、编写配置文件5.1 ZooKeeper 配置cat /usr/local/kafka/config/zookeeper.properties EOF dataDir/data/zookeeper clientPort2181 tickTime2000 initLimit5 syncLimit2 EOF5.2 Kafka Broker 配置vim /usr/local/kafka/config/server.properties将内容替换为以下注意advertised.listeners改为实际 IPbroker.id0 listenersPLAINTEXT://0.0.0.0:9092 advertised.listenersPLAINTEXT://192.168.10.5:9092 log.dirs/data/kafka-logs zookeeper.connectlocalhost:2181 num.network.threads5 num.io.threads8 socket.send.buffer.bytes1048576 socket.receive.buffer.bytes1048576 socket.request.max.bytes104857600 offsets.topic.replication.factor1 transaction.state.log.replication.factor1 transaction.state.log.min.isr1踩坑说明如果不设置offsets.topic.replication.factor1Kafka 会尝试用默认副本因子 3 创建__consumer_offsets主题但单机只有 1 个 broker导致消费者无法正常工作。六、配置 Systemd 服务6.1 ZooKeeper 服务vim /etc/systemd/system/zookeeper.service内容[Unit] DescriptionApache ZooKeeper Afternetwork.target [Service] Typesimple EnvironmentJAVA_HOME/usr/local/jdk1.8.0_491 EnvironmentKAFKA_HEAP_OPTS-Xmx1G -Xms1G ExecStart/usr/local/kafka/bin/zookeeper-server-start.sh /usr/local/kafka/config/zookeeper.properties ExecStop/usr/local/kafka/bin/zookeeper-server-stop.sh Restarton-abnormal [Install] WantedBymulti-user.target6.2 Kafka 服务vim /etc/systemd/system/kafka.service内容[Unit] DescriptionApache Kafka Afterzookeeper.service network.target [Service] Typesimple EnvironmentJAVA_HOME/usr/local/jdk1.8.0_491 EnvironmentKAFKA_HEAP_OPTS-Xmx4G -Xms4G ExecStart/usr/local/kafka/bin/kafka-server-start.sh /usr/local/kafka/config/server.properties ExecStop/usr/local/kafka/bin/kafka-server-stop.sh Restarton-abnormal [Install] WantedBymulti-user.target6.3 启动并设置开机自启systemctl daemon-reload systemctl start zookeeper systemctl start kafka #设置服务开机自启 systemctl enable zookeeper systemctl enable kafka systemctl list-unit-files |grep -Ew zookeeper|kafka # 检查状态 systemctl status zookeeper systemctl status kafka七、验证安装7.1 检查进程和端口jps # 应看到 QuorumPeerMain 和 Kafka 进程 netstat -tulnp | grep -E 2181|90927.2 手动创建主题/usr/local/kafka/bin/kafka-topics.sh --create --bootstrap-server 192.168.10.5:9092 --replication-factor 1 --partitions 1 --topic test7.3 消息收发测试生产者任选一种地址都行# 使用 IP /usr/local/kafka/bin/kafka-console-producer.sh --broker-list 192.168.10.5:9092 --topic test # 或使用 localhost /usr/local/kafka/bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test输入hello后回车。消费者同样可以使用 IP 或 localhost/usr/local/kafka/bin/kafka-console-consumer.sh --bootstrap-server 192.168.10.5:9092 --topic test --from-beginning # 或 /usr/local/kafka/bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning应该立即看到hello。经验总结只要advertised.listeners配置为可路由的 IP如192.168.10.5客户端无论是用该 IP 还是localhost连接都能正常工作。这是因为listeners0.0.0.0:9092绑定了所有接口而advertised.listeners返回的地址客户端也能访问本机访问 localhost 和 192.168.10.5 都通。八、日志查看与故障排查8.1 Kafka 日志# 实时查看 Kafka 日志 tail -100f /usr/local/kafka/logs/server.log # 查看最近 100 行错误 tail -100 /usr/local/kafka/logs/server.log | grep -i error # 查看全部日志分页 less /usr/local/kafka/logs/server.log8.2 ZooKeeper 日志# 实时查看 ZooKeeper 日志 journalctl -u zookeeper -f # 查看最近 100 行 journalctl -u zookeeper -n 100 # 查看所有错误 journalctl -u zookeeper -p err8.3 查看 systemd 服务状态和日志# Kafka 服务日志 journalctl -u kafka -f # 查看服务启动失败详情 journalctl -u kafka -n 50 --no-pager九、常用管理命令主题操作# 创建主题test /usr/local/kafka/bin/kafka-topics.sh --create --bootstrap-server 192.168.10.5:9092 --replication-factor 1 --partitions 1 --topic test # 列出所有主题 /usr/local/kafka/bin/kafka-topics.sh --list --bootstrap-server 192.168.10.5:9092 # 查看主题详情 /usr/local/kafka/bin/kafka-topics.sh --describe --bootstrap-server 192.168.10.5:9092 --topic test # 删除主题需在 server.properties 中设置 delete.topic.enabletrue /usr/local/kafka/bin/kafka-topics.sh --delete --bootstrap-server 192.168.10.5:9092 --topic test查看消费进度偏移量/usr/local/kafka/bin/kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list 192.168.10.5:9092 --topic test --time -1 # 输出格式 test:0:6 表示分区0有6条消息查看消费者组/usr/local/kafka/bin/kafka-consumer-groups.sh --bootstrap-server 192.168.10.5:9092 --list查看 broker 配置/usr/local/kafka/bin/kafka-configs.sh --bootstrap-server 192.168.10.5:9092 --describe --broker 0服务管理systemctl start kafka zookeeper systemctl stop kafka zookeeper systemctl restart kafka systemctl status kafka systemctl enable kafka # 开机自启十、常见踩坑与解决方法问题现象原因解决方法Kafka 启动失败日志提示InvalidReplicationFactorException: Replication factor: 3 larger than available brokers: 1未设置offsets.topic.replication.factor1在server.properties中添加该配置并重启消费者收不到消息但生产者无报错消费者使用了localhost而advertised.listeners是 IP导致网络不通或内部主题创建失败确保消费者地址与advertised.listeners中地址可达检查日志中的副本因子错误jps找不到命令JAVA_HOME未加入PATH重新执行export PATH$JAVA_HOME/bin:$PATH并写入/etc/profilekafka-run-class.sh报UnrecognizedOptionException某些工具参数名不同如GetOffsetShell用--broker-list而非--bootstrap-server查阅官方文档或使用--help生产者发送成功但消费者收不到GetOffsetShell显示 offset0消息实际未写入可能由于auto.create.topics.enablefalse且主题不存在先手动创建主题十一、重置环境清除所有数据systemctl stop kafka zookeeper rm -rf /data/kafka-logs/* /data/zookeeper/* systemctl start zookeeper kafka # 重新创建主题 /usr/local/kafka/bin/kafka-topics.sh --create --bootstrap-server 192.168.10.5:9092 --replication-factor 1 --partitions 1 --topic test附录完整配置文件清单/etc/profile中与 Kafka 相关的行export JAVA_HOME/usr/local/jdk1.8.0_491 export JRE_HOME$JAVA_HOME/jre export CLASSPATH.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export JAVA_PATH$JAVA_HOME/bin:$JRE_HOME/bin export PATH$PATH:$JAVA_PATH export KAFKA_HEAP_OPTS-Xmx4G -Xms4G/usr/local/kafka/config/server.properties最终版broker.id0 listenersPLAINTEXT://0.0.0.0:9092 advertised.listenersPLAINTEXT://192.168.10.5:9092 log.dirs/data/kafka-logs zookeeper.connectlocalhost:2181 num.network.threads5 num.io.threads8 socket.send.buffer.bytes1048576 socket.receive.buffer.bytes1048576 socket.request.max.bytes104857600 auto.create.topics.enablefalse offsets.topic.replication.factor1 transaction.state.log.replication.factor1 transaction.state.log.min.isr1/usr/local/kafka/config/zookeeper.properties最终版dataDir/data/zookeeper clientPort2181 tickTime2000 initLimit5 syncLimit2

相关新闻

ChanlunX缠论插件:让复杂技术分析变得简单直观的智能工具

ChanlunX缠论插件:让复杂技术分析变得简单直观的智能工具

ChanlunX缠论插件:让复杂技术分析变得简单直观的智能工具 【免费下载链接】ChanlunX 缠中说禅炒股缠论可视化插件 项目地址: https://gitcode.com/gh_mirrors/ch/ChanlunX 还在为复杂的股票技术分析而烦恼吗?面对纷繁复杂的K线图和难以理解的技术…

2026/7/3 17:51:24阅读更多 →
打破NVIDIA垄断:如何在非NVIDIA GPU上无缝运行CUDA程序的终极方案

打破NVIDIA垄断:如何在非NVIDIA GPU上无缝运行CUDA程序的终极方案

打破NVIDIA垄断:如何在非NVIDIA GPU上无缝运行CUDA程序的终极方案 【免费下载链接】ZLUDA CUDA on non-NVIDIA GPUs 项目地址: https://gitcode.com/GitHub_Trending/zl/ZLUDA 你是否曾经因为手头只有Intel或AMD显卡,却需要运行依赖CUDA加速的应用…

2026/7/3 17:46:23阅读更多 →
GEO的KPI不止是“提及率”——搭建多维度的KPI体系

GEO的KPI不止是“提及率”——搭建多维度的KPI体系

很多品牌在做GEO时,把所有的注意力都放在了“提及率”这一个指标上。但GEO的KPI远不止这么简单。一个科学、完整的GEO KPI体系,应该像一份体检报告一样,涵盖多个维度,既有“结果指标”,也有“过程指标”和“质量指标”…

2026/7/3 17:46:23阅读更多 →
2026论文顶级降AI率平台大曝光:一键压到安全线谁最稳

2026论文顶级降AI率平台大曝光:一键压到安全线谁最稳

2026年的学术战场已经彻底变了天,曾经让人头疼的查重率问题,现在连边都算不上了。随着AI检测技术越来越“狡猾”,高校的审查标准也像被按了加速键一样不断升级。现在的论文审核,早已不是单纯看重复率就能过关的年代了,…

2026/7/3 19:16:30阅读更多 →
2026免费视频去水印工具推荐电脑手机在线全整理

2026免费视频去水印工具推荐电脑手机在线全整理

日常整理学习素材、收藏优质视频内容时,画面上的水印常会影响观看体验,也不利于后续的个人整理归档。针对个人学习与收藏的使用需求,本文整理了不同场景下的免费视频去水印工具,覆盖在线网页、电脑软件、手机小程序与 APP 三类形态…

2026/7/3 19:16:30阅读更多 →
2026免费在线PPT转PDF工具实操指南:无需注册无水印转换渠道整理

2026免费在线PPT转PDF工具实操指南:无需注册无水印转换渠道整理

2026 年日常办公、学业场景中,PPT 导出 PDF 是高频操作,线上网页、微信小程序、本地办公软件都存在可免费使用的转换渠道。不少使用者会关注文件隐私安全、是否需要注册登录、导出文件是否附带水印等细节,本文整合多类安全免费 PPT 转 PDF 转…

2026/7/3 19:16:30阅读更多 →
TFT Overlay:云顶之弈免费终极助手,3分钟快速上手提升段位

TFT Overlay:云顶之弈免费终极助手,3分钟快速上手提升段位

TFT Overlay:云顶之弈免费终极助手,3分钟快速上手提升段位 【免费下载链接】TFT-Overlay Overlay for Teamfight Tactics 项目地址: https://gitcode.com/gh_mirrors/tf/TFT-Overlay TFT Overlay 是一款专为《英雄联盟:云顶之弈》玩家…

2026/7/3 19:16:30阅读更多 →
STM32F412RE与IS31FL3731 LED驱动芯片的硬件协同设计与应用

STM32F412RE与IS31FL3731 LED驱动芯片的硬件协同设计与应用

1. IS31FL3731与STM32F412RE的硬件协同设计1.1 核心器件选型解析IS31FL3731是一款采用I2C接口的PWM LED矩阵驱动芯片,支持169(144个)独立可控的LED。其2.7-5.5V的宽电压范围设计,使其能够兼容绝大多数微控制器系统。我在实际项目中…

2026/7/3 19:16:30阅读更多 →
如何快速提升Markdown阅读效率:5个终极技巧与markdownReader工具指南

如何快速提升Markdown阅读效率:5个终极技巧与markdownReader工具指南

如何快速提升Markdown阅读效率:5个终极技巧与markdownReader工具指南 【免费下载链接】markdownReader markdownReader is a extention for chrome, used for reading markdown file. 项目地址: https://gitcode.com/gh_mirrors/ma/markdownReader 还在为浏览…

2026/7/3 19:11:30阅读更多 →
AI Coding 六个月真实ROI账本:产品经理的血泪教训,研发的冷静忠告

AI Coding 六个月真实ROI账本:产品经理的血泪教训,研发的冷静忠告

6个月前的2025年12月,Boris Cherny 公开宣布自己卸载了 IDE。一时间,Vibe Coding 成了全行业最热的话题。6个月后,当我们回过头来拉一份真实账本,发现事情远没有"一句话生成一个App"那么浪漫。本文从产品经理和研发两个…

2026/7/3 14:18:39阅读更多 →
审计来了,数据权限全开——审计走了,怎么确保权限全部关掉?

审计来了,数据权限全开——审计走了,怎么确保权限全部关掉?

引言:审计结束三个月了,审计员的权限还没关某城商行每年按照监管要求开展至少一次数据安全审计。审计期间,内审部门需要抽样检查各类业务数据——交易流水、客户信息、员工操作日志、权限配置记录。这些数据分布在不同系统中,审计…

2026/7/3 14:38:35阅读更多 →
LV3296与PIC18F45K22的UART通信与USB扩展方案

LV3296与PIC18F45K22的UART通信与USB扩展方案

1. LV3296与PIC18F45K22的硬件搭档解析在嵌入式数据采集系统中,LV3296条形码扫描模块与PIC18F45K22微控制器的组合堪称经典搭配。LV3296作为一款工业级条码扫描头,其核心是一颗高性能CMOS图像传感器,配合专用解码芯片,能自动识别包…

2026/7/3 0:03:41阅读更多 →
AI初创生存指南:6个月完成可信度验证闭环

AI初创生存指南:6个月完成可信度验证闭环

1. 这不是“逆袭指南”,而是一份AI初创公司真实生存手记“How To Beat Odds As an AI Startup?”——这个标题乍看像一句热血口号,但在我带过7个从0到1的AI产品团队、亲手踩过融资失败、技术债崩盘、客户POC卡在最后一公里等23类典型坑之后,…

2026/7/3 0:03:41阅读更多 →
多模态+推理链+RAG 2.0+智能体:工业级AI系统落地四支柱

多模态+推理链+RAG 2.0+智能体:工业级AI系统落地四支柱

1. 这不是又一篇“AI趋势速览”,而是一份实操者手记:当多模态、推理链、检索增强与智能体协作真正撞进工程现场“LAI #73”这个编号本身就像一个暗号——它不属于某家大厂的白皮书,也不是学术会议的议程表,而是长期泡在模型训练集…

2026/7/3 0:03:41阅读更多 →
YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

如果你在部署 YOLOv8 时,发现推理速度只有可怜的 1-2 FPS,而别人的演示视频却能跑到 30 FPS 以上,那么问题很可能不在模型本身,而在于你的整个处理链路。很多开发者拿到一个训练好的 YOLOv8 模型后,会直接使用官方示例…

2026/7/3 1:12:46阅读更多 →
Coze与Dify对比指南:低代码AI应用开发从入门到实战

Coze与Dify对比指南:低代码AI应用开发从入门到实战

1. 从零到一:为什么你需要了解 Coze 和 Dify?如果你对 AI 应用开发感兴趣,但一看到“大模型”、“智能体”、“工作流”这些词就头疼,觉得门槛太高,那这篇文章就是为你准备的。很多开发者,包括我自己&#…

2026/7/3 1:36:36阅读更多 →
AI生图工具怎么选?2026年6月版实测对比

AI生图工具怎么选?2026年6月版实测对比

做自媒体的朋友应该都有体会:配图一直是个让人头疼的问题。2026年,AI生图工具已经非常成熟了,但工具太多反而不知道怎么选。以下是截至2026年6月我对主流AI生图工具的实测对比。Midjourney V8.1:速度之王2026年6月11日&#xff0c…

2026/7/3 2:08:15阅读更多 →