用三台服务器搭建集群,服务器名称分别为flink01,flink02,flink03
搭建zookeeper环境
创建安装目录
mkdir /opt/module #安装目录
mkdir /opt/software #压缩包目录
上传zookeeper压缩包到software/目录,解压到module/下
tar -xvf apache-zookeeper-3.6.3-bin.tar.gz -C /opt/module/
进入zk解压目录下,修改配置文件
cp zoo_sample.cfg zoo.cfg #拷贝一份
vim zoo.cfg
#修改dataDir文件位置
dataDir=/opt/module/zookeeper-3.6.3/data
#集群环境添加对应的IP
server.1=IP1:2888:3888
server.2=IP2:2888:3888
server.3=IP3:2888:3888
回到zk根目录下,
mkdir data
mkdir logs
另外服务器也需要配置相同的配置,用分发脚本直接实现;
#flink01
/opt/module/zookeeper-3.6.3/data/myid
文件中内容为 1
#flink02
//opt/module/zookeeper-3.6.3/data/myid
文件中内容为 2
#flink03
/opt/module/zookeeper-3.6.3/data/myid
文件中内容为 3
启动服务,检查服务器状态
启动服务
./zkServer.sh start
./zkServer.sh status
#下面的状态为启动成功。
ZooKeeper JMX enabled by default
Using config: /home/itwang/opt/module/zookeeper-3.6.3/bin/../conf/zoo.cfg
Mode: follower
#Mode有两种类型:leader和follower,leader代表领导(主节点),follower代表下属(备节点)
#zk集群一般只有一个leader,多个follower,主一般是相应客户端的读写请求,而从主同步数据,当主挂掉之后就会从follower里投票选举一个leader出来。
zookeeper集群安装完毕
搭建kafka集群环境
上传压缩包解压
tar -xvf kafka_2.12-3.0.1.tgz -C /opt/module/
在kafka根目录下创建
mkdir logs
修改config/server.properties
vim server.properties
broker.id=1//每台服务器上面需要修改一下 一次为 1 、2 、3
listeners=PLAINTEXT://flink01:9092
log.dirs=/opt/module/kafka_2.12-3.0.1/logs
zookeeper.connect=flink01:2182,flink02:2181,flink03:2181
kafka配置完成
启动
#先启动zookeeper
/opt/module/zookeeper-3.6.3/bin/zkServer.sh start
#再启动kafka
/opt/module/kafka_2.12-3.0.1/bin/kafka-server-start.sh -daemon /opt/module/kafka_2.12-3.0.1/config/server.properties
#三个服务器都要启动
#使用jps查看启动状态,我这里用的是脚本命令,
若是无法启动,可以查看日志消息,来进行修改
#kafka日志查看
tail -111f /opt/module/kafka_2.12-3.0.1/logs/kafkaServer.out
#zookeeper日志查看
tail -f /opt/module/zookeeper-3.6.3/logs/*
参考:https://blog.csdn.net/weixin_42575806/article/details/80981743?spm=1001.2014.3001.5506