> 文章列表 > zookeeper集群搭建

zookeeper集群搭建

zookeeper集群搭建

1.搭建采用三台centos7主机,均关闭防火墙与selinux服务

2.主机信息如下表所示

主机 IP 端口 服务
A 10.1.60.112 2181、2888、3888 zookeeper
B 10.1.60.114 2181、2888、3888 zookeeper
C 10.1.60.115 2181、2888、3888 zookeeper

3.从zookeeper官网下载安装包(本次搭建使用了3.7.1版本)

下载地址https://dlcdn.apache.org/zookeeper/zookeeper-3.7.1/apache-zookeeper-3.7.1-bin.tar.gz
4.创建zookeeper目录(以下操作所有主机都要执行)

mkdir /etc/zookeeper

5.把安装包拷贝到zookeeper目录下并解压

tar -zxvf apache-zookeeper-3.7.1-bin.tar.gz

ls

6. 进入解压后的zookeeper目录中备份并修改配置文件名称

cd zookeeper/conf

cp zoo_sample.cfg zoo.cfg

7.编辑配置文件

vi zoo.cfg

tickTime=2000 #zookeeper服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是说每个tickTime时间就会发送一个心跳,即2秒
initLimit=10  #配置集群接受follower初始化连接时最长能忍受多少个心跳时间间隔数
syncLimit=5   #leader与follower之间发送消息,请求和应答时间长度不能超过多少个心跳时间
dataDir=/etc/zookeeper/zookeeper  #zookeeper保存数据的目录,默认情况下zookeeper将写数据的日志文件也保存在这个目录里
dataLogDir=/etc/zookeeper/zookeeper/log #数据日志文件保存路径,类似mysql的binlog
clientPort=2181  #客户端连接Zookeeper服务器的端口,默认2181
#配置zookeeper集群信息
server.1=10.1.60.112:2888:3888 #1表示为zookeeper服务器编号,每个zookeeper不能相同,2888是服务器与集群中的leader服务器交换信息的端口,3888是leader挂掉时专门用来进行选举leader所用的端口
server.2=10.1.60.114:2888:3888
server.3=10.1.60.115:2888:3888

8.在zookeeper目录下创建服务器编号文件(每台主机的文件内容都不相同,按照配置文件中的写入)

在A主机执行即可

echo "1" >> /etc/zookeeper/zookeeper/myid

在B主机执行即可

echo "2" >> /etc/zookeeper/zookeeper/myid

在C主机执行即可

echo "3" >> /etc/zookeeper/zookeeper/myid

9.创建数据日志文件保存目录(zookeeper所有的数据都保存在这个log日志中)

mkdir /etc/zookeeper/zookeeper/log

10.启动zookeeper服务

/etc/zookeeper/zookeeper/bin/zkServer.sh start

 11.启动完所有主机的zookeeper服务后查看状态

/etc/zookeeper/zookeeper/bin/zkServer.sh status

 B

 C

可以看到已经选举出B主机为集群的leader角色,A、C为follower角色 

12.日志查看

若是zookeeper服务启动有问题可查看kafkaServer.out或server.log 日志

tail -f /etc/zookeeper/zookeeper/logs/kafkaServer.out

tail -f /etc/zookeeper/zookeeper/logs/server.log

13.只有leader节点会启用2888监听端口

 

 

敦实网