zookeeper与kafka集群搭建与测试

时间:2022-06-02
本文章向大家介绍zookeeper与kafka集群搭建与测试,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
本文介绍的zookeeper版本是 zookeeper-3.4.8,kafka版本是 kafka_2.12-1.0.0
准备好三台机器 192.168.1.1、192.168.1.2、192.168.1.3

JDK搭建

从官网下载jdk,假设解压在 /usr/local/java/jdk1.8.0_60目录下,编辑 /etc/profile 文件,设置如下环境变量

JAVA_HOME=/usr/java/jdk1.8.0_60
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib/tools.jar
export PATH JAVA_HOME CLASSPATH

如果运行 source /etc/profile && java -version 后显示java版本,那么表明jdk环境已经安装好。

zookeeper搭建

从官网下载zookeeper-3.4.8版本,解压到/usr/local/zookeeper-3.4.8/ 目录下,在 /usr/local/zookeeper-3.4.8/
目录下创建 data目录、log目录

mkdir -p /usr/local/zookeeper-3.4.8/data
mkdir -p /usr/local/zookeeper-3.4.8/log

创建 conf/zoo.cfg配置文件

maxClientCnxns=60
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/usr/local/zookeeper-3.4.8/data
dataLogDir=/usr/local/zookeeper-3.4.8/data
clientPort=2181
server.1=192.168.1.1:2888:3888
server.2=192.168.1.2:2888:3888
server.3=192.168.1.3:2888:3888

修改 conf/log4j.properties配置文件

zookeeper.root.logger=INFO,ROLLINGFILE
zookeeper.log.dir=./log


在192.168.1.1、192.168.1.2、192.168.1.3机器上依次执行
echo 1 > /usr/local/zookeeper-3.4.8/data/myid
echo 2 > /usr/local/zookeeper-3.4.8/data/myid
echo 3 > /usr/local/zookeeper-3.4.8/data/myid

启动 zookeeper
java  -cp "lib/slf4j-log4j12-1.6.1.jar:lib/slf4j-api-1.6.1.jar:lib/netty-3.7.0.Final.jar:lib/log4j-1.2.16.jar:lib/jline-0.9.94.jar:zookeeper-3.4.8.jar:conf/"  org.apache.zookeeper.server.quorum.QuorumPeerMain conf/zoo.cfg &

查看zookeeper运行状态
echo srvr | nc localhost 2181

kafka环境搭建

从官网下载 kafka_2.12-1.0.0 软件包,解压在 /usr/local/kafka_2.12-1.0.0 目录下
修改 config/server.properties配置文件,需要要注意的是 borker.id字段在三台机器中均不同

broker.id=0
port=19092
num.network.threads=3
num.io.threads=8
socket.send.buffer.bytes=102400
socket.receive.buffer.bytes=102400
socket.request.max.bytes=104857600
log.dirs=/tmp/kafka-logs
num.partitions=1
num.recovery.threads.per.data.dir=1
offsets.topic.replication.factor=1
transaction.state.log.replication.factor=1
transaction.state.log.min.isr=1
log.retention.hours=168
log.segment.bytes=1073741824
log.retention.check.interval.ms=300000
zookeeper.connect=192.168.1.1:2181,192.168.1.2:2181,192.168.1.3:2181
zookeeper.connection.timeout.ms=6000

进入kafka的bin目录,执行如下命令启动kafka
./kafka-server-start.sh  -daemon ../config/server.properties