kafka1.0.0集群搭建

https://blog.51cto.com/leizhu/2075724

 

一、环境准备
1、软件
zookeeper3.4.11 https://www.apache.org/dyn/closer.cgi/zookeeper/
kafka1.0.0 https://www.apache.org/dyn/closer.cgi?path=/kafka/1.0.0/kafka_2.11-1.0.0.tgz
java8 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
2、硬件
✔ 机器:10.205.104.55
✔ 机器:10.205.102.52
✔ 机器:10.205.105.33
二、安装
jdk安装略
1、统一目录/opt
kafka1.0.0集群搭建
2、安装zookeeper(三台机器同样操作)
cp conf/zoo_sample.cfg zoo.cfg
grep ^[^#] conf/zoo.cfg
kafka1.0.0集群搭建
添加机器id到 dataDir=/opt/zookeeper-3.4.11/data目录下的myid文件中
机器:10.205.104.55 写1
机器:10.205.102.52 写2
机器:10.205.105.33 写3
kafka1.0.0集群搭建
每台机器都是同样的配置
启动zookeeper
bin/zkServer.sh start 
检验
kafka1.0.0集群搭建
3、安装kafka(每台机器broker.id不同。这里依此是0,1,2)
每台机器依此配置
kafka1.0.0集群搭建
启动kafka(每台都启动)
bin/kafka-server-start.sh config/server-1.properties &
校验
kafka1.0.0集群搭建
创建topic
bin/kafka-topics.sh --create --zookeeper 10.205.104.55:2181 --replication-factor 3 --partitions 1 --topic my-replicated-topic
查看topic信息
bin/kafka-topics.sh --describe --zookeeper 10.205.104.55:2181 --topic my-replicated-topic
kafka1.0.0集群搭建
推送信息
bin/kafka-console-producer.sh --broker-list 10.205.104.55:9092 --topic my-replicated-topic
消费信息
bin/kafka-console-consumer.sh --bootstrap-server 10.205.104.55:9092 --from-beginning --topic my-replicated-topic
安装完毕
最后送上优化文章:kafka参数配置优化

以下:

#非负整数,用于唯一标识broker
broker.id=0

# broker 服务监听端口
port=9092

# broker 发布给生产者消费者的hostname,会存储在zookeeper。配置好这个host可以实现内网外网同时访问。
advertised.host.name=host1

# broker 发布给生产者消费者的port,会存储在zookeeper。
advertised.port=9092

# 处理网络请求的线程数量,一般默认配置就好
num.network.threads=3

# 处理磁盘的线程数量,一般默认配置就好
num.io.threads=8

#  socket server 发送数据缓冲区大小
socket.send.buffer.bytes=102400

# socket server 接受数据缓冲区大小
socket.receive.buffer.bytes=102400

# soket server 可接受最大消息大小,防止oom
socket.request.max.bytes=104857600

# kafka存放消息的目录
log.dirs=/home/data/kafka/kafka-logs

# 每个topic默认partition数量,根据消费者实际情况配置,配置过小会影响消费性能
num.partitions=50

# kafka启动恢复日志,关闭前日志刷盘的线程数
num.recovery.threads.per.data.dir=1

#  日志保留时间
log.retention.minutes=30
# 日志保留大小
log.retention.bytes=53687091200

# 日志 segment file 大小. 超过这个大小创建新segment file
log.segment.bytes=67108864

# 日志 segment file 刷新时间. 超过这个时间创建新segment file
log.roll.hours=24

# 日志淘汰检查间隔时间
log.retention.check.interval.ms=10000

# Zookeeper host和port 
zookeeper.connect=localhost:2181

# 连接zookeeper超时时间
zookeeper.connection.timeout.ms=6000

# 清除fetch  purgatory 间隔消息条数
fetch.purgatory.purge.interval.requests=100
#清除producer purgatory 间隔消息条数
producer .purgatory.purge.interval.requests=100

#是否可以通过管理工具删除topic,默认是false
delete.topic.enable=true

#日志传输时候的压缩格式,可选择lz4, snappy, gzip,不压缩。建议打开压缩,可以提高传输性能,压缩格式的选择可以参考文章结尾的参考资料。
compression.type=snappy

# 启用压缩的topic名称。若上面参数选择了一个压缩格式,那么压缩仅对本参数指定的topic有效,若本参数为空,则对所有topic有效。
compressed.topics=topic1

#用来从主partion同步数据的线程数,默认为1,建议适当调大,数据量大的时候一个同步线程可能不够用
num.replica.fetchers=3

#消息日志备份因子,默认是1
default.replication.factor=2
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值