kafka集群部署

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: 前提:kafka集群依赖于zk集群,没有zk集群环境的请先参考 http://www.cnblogs.com/yjmyzz/p/4587663.html . 假设搭建3个节点的kafka集群,下面是步骤:  一、下载 http://kafka.apache.org/downloads ,如果只是安装,直接down kafka_2.12-0.11.0.0.tgz 即可。

前提:
kafka集群依赖于zk集群,没有zk集群环境的请先参考 http://www.cnblogs.com/yjmyzz/p/4587663.html .

假设搭建3个节点的kafka集群,下面是步骤:

 一、下载

http://kafka.apache.org/downloads ,如果只是安装,直接down kafka_2.12-0.11.0.0.tgz 即可。

二、解压

假设$KAFKA_HOME为解压后的根目录,将tag包解压到该目录下(3台机器上都解压)

三、修改$KAFKA_HOME/config/service.properties

内容参考下面:

 1 broker.id=1 #类似zk的myid一样,每个节点上的id都要唯一
 2 host.name=192.168.29.60 #每个节点对应的机器IP
 3 num.network.threads=3
 4 num.io.threads=8
 5 socket.send.buffer.bytes=102400
 6 socket.receive.buffer.bytes=102400
 7 socket.request.max.bytes=104857600
 8 log.dirs=/data/application/kafka/data #日志保存目录
 9 num.partitions=1
10 num.recovery.threads.per.data.dir=1
11 offsets.topic.replication.factor=1
12 transaction.state.log.replication.factor=1
13 transaction.state.log.min.isr=1
14 log.retention.hours=168
15 message.max.byte=5242880
16 default.replication.factor=2
17 replica.fetch.max.bytes=5242880
18 log.segment.bytes=1073741824
19 log.retention.check.interval.ms=300000
20 zookeeper.connect=192.168.29.11:2181,192.168.29.12:2181,192.168.29.13:2181 #zk集群的地址
21 zookeeper.connection.timeout.ms=6000
22 group.initial.rebalance.delay.ms=0

 

注:每台机器上都要修改这个文件,而且broker.id,host.name这二个很关键,弄错了将启动失败。

 

四、启动

$KAFKA_HOME/bin/kafka-server-start.sh -daemon ../config/server.properties

(3台节点都要启动)

注:初次启动,可不加用-daemon参数,方便直接在控制台查看输出,启动成功后,可ctrl+C结束掉,再加-daemon后台启动。

五、验证

5.1 创建topic

$KAFKA_HOME/bin/kafka-topics.sh --create --zookeeper 192.168.29.11:2181 --replication-factor 2 --partitions 1 --topic mytopic

5.2 测试消息发布

$KAFKA_HOME/bin/kafka-console-producer.sh --broker-list 192.168.29.60:9092 --topic mytopic

这个命令会进入一个>提示符的终端,直接输入消息内容,回车就发出去了。

5.3 测试消息接收
保持5.2的窗口不要关,再加一个终端窗口

$KAFKA_HOME/bin/kafka-console-consumer.sh --zookeeper 192.168.29.11:2181 --topic mytopic --from-beginning

在刚才5.2的窗口里,输入些内容,顺利的话,消息接收窗口里,就能收到消息。

 

参考文章:

http://kafka.apache.org/documentation/

目录
相关文章
|
5月前
|
消息中间件 Kafka Linux
115 Kafka集群部署
115 Kafka集群部署
38 0
|
4月前
|
消息中间件 存储 Java
分布式实时消息队列Kafka(二)Kafka分布式集群部署
分布式实时消息队列Kafka(二)Kafka分布式集群部署
76 0
|
8月前
|
消息中间件 Kafka Apache
Kafka3.0集群部署(内附zookeeper3.5.7集群部署)
Kafka3.0集群部署(内附zookeeper3.5.7集群部署)
102 0
|
10月前
|
消息中间件 存储 分布式计算
Kafka集群部署
Kafka集群部署
Kafka集群部署
|
消息中间件 存储 分布式计算
消息队列KafKa的集群部署
🍅程序员小王的博客:程序员小王的博客 🍅 欢迎点赞 👍 收藏 ⭐留言 📝 🍅 如有编辑错误联系作者,如果有比较好的文章欢迎分享给我,我会取其精华去其糟粕 🍅java自学的学习路线:java自学的学习路线
245 0
消息队列KafKa的集群部署
|
消息中间件 存储 算法
【Kafka SASL/SCRAM动态认证集群部署
【Kafka SASL/SCRAM动态认证集群部署
883 0
|
消息中间件 安全 Kafka
Kafka SASL集群部署
Kafka SASL集群部署
241 0
|
消息中间件 Kafka
Kafka集群部署
Kafka集群部署
117 0
|
消息中间件 存储 分布式计算
zookeeper集群 +kafka 集群部署(下)
为什么需要消息列队(MQ)   主要原因是由于在高并发环境下,同步请求来不及处理,请求往往会发生阻塞。比如大量的请求并发访问数据库,导致行锁表锁,最后请求线程会堆积过多,从而触发 too many connection 错误,引发雪崩效应。 我们使用消息队列,通过异步处理请求,从而缓解系统的压力。消息队列常应用于异步处理,流量削峰,应用解耦,消息通讯等场景。 当前比较常见的 MQ 中间件有 ActiveMQ、RabbitMQ、RocketMQ、Kafka 等
zookeeper集群 +kafka 集群部署(下)
|
存储 消息中间件 负载均衡
zookeeper集群 +kafka 集群部署(上)
Zookeeper 定义 zookeeper是一个开源的分布式的,为分布式框架提供协调服务的Apache项目 Zookeeper 工作机制 Zookeeper是–个基于观察者模式设计的分布式服务管理框架,它负责存储和管理大家都关心的数据,然后接受观察者的注册, 一旦这些数据的状态发生变化,Zookeeper就将负责通知已经在Zookeeper上注册的那些客户端做出相应的反应。 也就是说Zookeeper =文件系统+通知机制
zookeeper集群 +kafka 集群部署(上)