CentOS 7部署Kafka和Kafka集群
CentOS 7部署Kafka和Kafka集群
注意事项
需要启动多个shell脚本交互客户端进行验证,运行中的客户端不要停止。
准备工作:##
安装java并设置java环境变量,在`/etc/profile`中加入
export JAVA_HOME=/usr/java/jdk1.8.0_65
export PATH=$PATH:$JAVA_HOME/bin
安装kafka
-
下载:
wget http://mirrors.cnnic.cn/apache/kafka/0.10.0.1/kafka_2.10-0.10.0.1.tgz
-
解压:
tar -zxvf kafka_2.10-0.10.0.1.tgz
-
移动到指定目录:
mv kafka_2.10-0.10.0.1 /usr/local/kafka
功能验证
- 启动
zookeeper
/usr/local/kafka/bin/zookeeper-server-start.sh -daemon /usr/local/kafka/config/zookeeper.properties
- 启动
kafka
服务
/usr/local/kafka/bin/kafka-server-start.sh /usr/local/kafka/config/server.properties
- 创建topic
/usr/local/kafka/bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
- 产生消息
/usr/local/kafka/bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
输入以下内容:
Hello world!
Hello Kafka!
- 消费消息
/usr/local/kafka/bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning
如果能正常接收消息,则说明kafka配置成功
集群配置
单机多broker 集群配置
利用单节点部署多个broker。 不同的broker 设置不同的 id,监听端口及日志目录。 例如:
cp /usr/local/kafka/config/server.properties /usr/local/kafka/config/server-1.properties
编辑配置:
config/server-1.properties:
broker.id=1
port=9093
log.dir=/tmp/kafka-logs-1
启动Kafka服务:
bin/kafka-server-start.sh config/server-1.properties &
启动多个服务,按上文类似方式产生和消费消息。
多机多broker 集群配置
分别在多个节点按上述方式安装Kafka,配置启动多个Zookeeper 实例。 例如: 在10.4.253.22,10.4.253.23,10.4.253.24三台机器部署,Zookeeper配置如下:
initLimit=5
syncLimit=2
server.1=10.4.253.22:2888:3888
server.2=10.4.253.23:2888:3888
server.3=10.4.253.24:2888:3888
分别配置多个机器上的Kafka服务 设置不同的broke id,zookeeper.connect设置如下:
zookeeper.connect=10.4.253.22:2181,10.4.253.23:2181,10.4.253.24:2181
启动Zookeeper与Kafka服务,按上文方式产生和消费消息,验证集群功能。
参考文档:
扫描公众号,关注更多信息
---------------------------------------------------------------------------------我是分割线--------------------------------------------------------------------------to be a better me, talk is cheap show me the code
版权所有,转载请注明原文链接。
文中有不妥或者错误的地方还望指出,以免误人子弟。如果觉得本文对你有所帮助不妨【推荐】一下!如果你有更好的建议,可以给我留言讨论,共同进步!
再次感谢您耐心的读完本篇文章。
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?