kafka集群安装

来源:互联网 发布:python count函数 编辑:程序博客网 时间:2024/06/05 22:32

一、环境配置

  • jdk版本:jdk1.8.0_111
  • scala版本:2.11.8
  • kafka版本:kafka_2.11-0.10.2.1

二、kafka下载
kafka下载地址
注意:要选择对应的scala版本,否则容易报错。

三、解压到安装目录
tar -zxvf kafka_2.11-0.10.2.1.tgz -C /root/myInstall/

四、Kafka目录介绍
/bin 操作kafka的可执行脚本,其中包含windows下脚本
/config 配置文件所在目录
/libs 依赖jar包目录
/logs 日志数据目录,目录kafka把server端日志分为5种类型,分为:server,request,state,log-cleaner,controller

五、配置配置文件
进入config目录下,修改server.properties配置文件

 vi server.properties 

配置文件介绍

broker.id=1  #当前机器在集群中的唯一标识,和zookeeper的myid性质一样port=9092 #当前kafka对外提供服务的端口默认是9092host.name=192.168.183.101 #本机ipnum.network.threads=3 #这个是borker进行网络处理的线程数num.io.threads=8 #这个是borker进行I/O处理的线程数log.dirs=/root/myInstall/kafka_2.11-0.10.2.1/logs/ #消息存放的目录,这个目录可以配置为以逗号分割的表达式,注意上面的num.io.threads要大于这个目录的个数这个目录,如果配置多个目录,新创建的topic就把消息持久化到当前以逗号分割的目录中,那个分区数最少就放那一个socket.send.buffer.bytes=102400 #发送缓冲区buffer大小,数据不是一下子就发送的,先回存储到缓冲区了到达一定的大小后在发送,能提高性能socket.receive.buffer.bytes=102400 #kafka接收缓冲区大小,当数据到达一定大小后在序列化到磁盘socket.request.max.bytes=104857600 #这个参数是向kafka请求消息或者向kafka发送消息的请请求的最大数,这个值不能超过java的堆栈大小num.partitions=1 #默认的分区数,一个topic默认1个分区数log.retention.hours=168 #默认消息的最大持久化时间,168小时,7天message.max.byte=5242880  #消息保存的最大值5Mdefault.replication.factor=2  #kafka保存消息的副本数,如果一个副本失效了,另一个还可以继续提供服务replica.fetch.max.bytes=5242880  #取消息的最大直接数log.segment.bytes=1073741824 #这个参数是:因为kafka的消息是以追加的形式落地到文件,当超过这个值的时候,kafka会新起一个文件log.retention.check.interval.ms=300000 #每隔300000毫秒去检查上面配置的log失效时间(log.retention.hours=168 ),到目录查看是否有过期的消息如果有,删除log.cleaner.enable=false #是否启用log压缩,一般不用启用,启用的话可以提高性能zookeeper.connect=192.168.7.100:12181,192.168.7.101:12181,192.168.7.107:1218 #设置zookeeper的连接端口

我的配置是

#注意:每台服务器的broker.id不能一样broker.id=1port=9092host.name=192.168.183.101log.dirs=/root/myInstall/kafka_2.11-0.10.2.1/logs/log.retention.hours=168default.replication.factor=2log.segment.bytes=1073741824log.retention.check.interval.ms=300000log.cleaner.enable=falsezookeeper.connect=node1:2181,node2:2181,node3:2181,node4:2181,node5:2181

六、把文件分发到其他服务器上

scp -r kafka_2.11-0.10.2.1/ node2:$PWD

注意要更改config目录下,server.properties配置文件的broker.id。

七、启动kafka
1、启动zookeeper
2、启动kafka

bin/kafka-server-start.sh config/server.properties >>/dev/null 2>&1 &

好的至此,kafka集群启动成功!
一些常用的kafka命令见我的博客:kafka常用命令总结进行测试在这就不做赘述了!

原创粉丝点击