一、集群部署的基本流程
下载安装包、解压安装包、修改配置文件、分发安装包、启动集群
二、集群部署的基础环境准备
安装前的准备工作(zk集群已经部署完毕)
关闭防火墙
chkconfig iptables off && setenforce 0
创建用户
groupadd realtime && useradd realtime && usermod -a -G realtime realtime
创建工作目录并赋权
mkdir /export
mkdir /export/servers
chmod 755 -R /export
切换到realtime用户下
su realtime
PS :测试环境下可以都用ROOT用户,省去配置用户权限问题。
三、Kafka集群部署
1、下载安装包
http://kafka.apache.org/downloads.html
在linux中使用wget命令下载安装包
wget http://mirrors.hust.edu.cn/apache/kafka/0.8.2.2/kafka_2.11-0.8.2.2.tg
2、解压安装包
tar -zxvf /export/software/kafka_2.11-0.8.2.2.tgz -C /export/servers/
cd /export/servers/
cp /export/servers/kafka/config/server.properties
/export/servers/kafka/config/server.properties.bak
vi /export/servers/kafka/config/server.properties
输入以下内容:
4、分发安装包
scp -r /export/servers/kafka_2.11-0.8.2.2 kafka02:/export/servers
然后分别在各机器上创建软连
cd /export/servers/
ln -s kafka_2.11-0.8.2.2 kafka
5、再次修改配置文件(重要)
依次修改各服务器上配置文件的的broker.id,分别是0,1,2不得重复
6、启动集群
依次在各节点上启动kafka
bin/kafka-server-start.sh config/server.properties
四、Kafka常用操作命令
查看当前服务器中的所有topic bin/kafka-topics.sh --list --zookeeper zk01:2181 创建topic ./kafka-topics.sh --create --zookeeper mini1:2181 --replication-factor 1 --partitions 3 --topic first 删除topic sh bin/kafka-topics.sh --delete --zookeeper zk01:2181 --topic test 需要server.properties中设置delete.topic.enable=true否则只是标记删除或者直接重启。 通过shell命令发送消息 kafka-console-producer.sh --broker-list kafka01:9092 --topic itheima 通过shell消费消息 sh bin/kafka-console-consumer.sh --zookeeper zk01:2181 --from-beginning --topic test1 查看消费位置 sh kafka-run-class.sh kafka.tools.ConsumerOffsetChecker --zookeeper zk01:2181 --group testGroup 查看某个Topic的详情 sh kafka-topics.sh --topic test --describe --zookeeper zk01:2181
五、Java API
1、生产者
2、消费者
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通