赞
踩
环境:3台服务器,每台服务器分别部署一个zookeeper节点和一个kafka节点,kafka不用自带的zookeeper,另外安装
一、zookeeper安装
1、下载zookeeper压缩包apache-zookeeper-3.6.3-bin.tar.gz,解压
tar -zxvf apache-zookeeper-3.6.3-bin.tar.gz -C ./
2、conf下编辑zookeeper配置文件zoo.cfg
(1)copy一份zoo_sample.cfg并命名为zoo.cfg(此处不该需要在启动脚本改一下配置文件名称,默认启动脚本里的配置文件名称zoo.cfg)
cp zoo_sample.cfg zoo.cfg
(2)编辑配置文件
vi zoo.cfg
添加基本配置(这是最基本的设置,其他设置项可自行查阅相关资料进行设置)
- tickTime=2000
- initLimit=10
- syncLimit=5
- dataDir=/data1/zookeeper-data
- dataLogDir=/data1/zookeeper-logs
- clientPort=2181
- server.1=ip1:2888:3888
- server.2=ip2:2888:3888
- server.3=ip3:2888:3888
以上设置在其余两个节点相同设置
(3)在数据存放路径下设置id,用于选举leader(我这里的路径是/data1/zookeeper-data)
cd /data1/zookeeper-data
echo 1 > myid
其余两台机器分别在相同路径下执行命令
echo 2 > myid
echo 3 > myid
至此,三台zookeeper节点已配置好
3、启动命令(这里需要依赖java环境,一般环境都有设置,没有的可自行设置,如果无法设置环境变量的,可在zkEnv.sh里JAVA_HOME里面添加jdk路径)
- #check to see if the conf dir is given as an optional argument
- export JAVA_HOME=/usr/local/java/jdk1.8.0_144
bin目录下执行(分别启动3个节点)
./zkServer.sh start
查看zookeeper状态
./zkServer.sh status
二、kafka安装
1、下载kafka安装包解压
tar -zxvf kafka_2.13-2.8.0.tgz -C ./
2、设置配置文件
config目录下server.propertis(broker id唯一,其余两个节点可分别设置为1、2)
- broker.id=0
- delete.topic.enable=true
- num.network.threads=9
- num.io.threads=16
- socket.send.buffer.bytes=1048567
- socket.receive.buffer.bytes=1048567
- socket.request.max.bytes=104857600
- listeners=PLAINTEXT://ip:9092
- log.dirs=设置路径
- num.partitions=9
-
- num.recovery.threads.per.data.dir=3
-
- offsets.topic.replication.factor=3
- transaction.state.log.replication.factor=3
- transaction.state.log.min.isr=2
- default.replication.factor=3
- log.retention.hours=24
- log.segment.bytes=1073741824
- log.roll.ms=3600000
- log.retention.check.interval.ms=180000
- zookeeper.connect=ip1:2181,ip2:2181,ip3:2181
-
- zookeeper.connection.timeout.ms=50000
- zookeeper.session.timeout.ms=30000
-
- num.replica.fetchers=12
-
- replica.fetch.max.bytes=4194304
-
- replica.fetch.min.bytes=10
-
- replica.lag.time.max.ms=30000
-
- replica.socket.receive.buffer.bytes=2097152
-
- group.initial.rebalance.delay.ms=0
3、创建文件夹log.dir文件夹(可以不创建,启动会自动创建)
4、启动(如果启动报错没有jdk,在kafka-run-class.sh中添加jdk路径JAVA_HOME="/usr/local/java/jdk1.8.0_144",最好配环境变量)
前台启动
bin/kafka-server-start.sh config/server.properties
后台启动
bin/kafka-server-start.sh -daemon config/server.properties
-daemon 参数会将任务转入后台运行,输出日志信息将写入日志文件,日志文件在执行命令的目录下的logs目录中kafkaServer.out,结尾输同started说明启动成功
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。