一、安装zookeeper
- 1.1 下载解压zookeeper
cd /opt/sofaware/
wget http://mirrors.hust.edu.cn/apache/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz
tar -zxvf zookeeper-3.4.14.tar.gz -C /opt/module/
- 1.2配置zoo.cfg,进入到conf目录下
cp zoo_sample.cfg zoo.cfg
vim zoo.cfg
tickTime=2000
# tickTime:CS通信心跳数 Zookeeper
# 服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个 tickTime 时间就会发送一个心跳。tickTime以毫秒为单位。
initLimit=5
# initLimit:LF初始通信时限
# 集群中的follower服务器(F)与leader服务器(L)之间初始连接时能容忍的最多心跳数(tickTime的数量)。
syncLimit=2
# syncLimit:LF同步通信时限
# 集群中的follower服务器与leader服务器之间请求和应答之间能容忍的最多心跳数(tickTime的数量)。
dataDir=/opt/module/zookeeper-3.4.14/data
# syncLimit:LF同步通信时限
# 集群中的follower服务器与leader服务器之间请求和应答之间能容忍的最多心跳数(tickTime的数量)。
dataLogDir=/opt/module/zookeeper-3.4.14/logs
# dataLogDir:日志文件目录
# Zookeeper保存日志文件的目录。
clientPort=2181
# clientPort:客户端连接端口
# 客户端连接 Zookeeper 服务器的端口,Zookeeper 会监听这个端口,接受客户端的访问请求。
server.1=192.168.160.100:2888:3888
server.2=192.168.160.102:2888:3888
server.3=192.168.160.103:2888:3888
# 服务器名称与地址:集群信息(服务器编号,服务器地址,LF通信端口,选举端口)
# 这个配置项的书写格式比较特殊,规则如下:
# server.N=YYY:A:B
# 其中N表示服务器编号,YYY表示服务器的IP地址,A为LF通信端口,表示该服务器与集群中的leader交换的信息的端口。B为选举端口,
# 表示选举新leader时服务器间相互通信的端口(当leader挂掉时,其余服务器会相互通信,选择出新的leader)。一般来说,
# 集群中每个服务器的A端口都是一样,每个服务器的B端口也是一样。但是当所采用的为伪集群时,IP地址都一样,只能时A端口和B端口不一样。
- 1.3 在另外两台上做同样的配置
rsync -av /opt/module/zookeeper-3.4.14/ hdp-101:/opt/module/zookeeper-3.4.14/
rsync -av /opt/module/zookeeper-3.4.14/ hdp-102:/opt/module/zookeeper-3.4.14/
-
1.4 Zookeeper 的data/myid配置,使用如下命令,server.1中的数字1为服务器的ID,需要与myid文件中的id一致,下一步将配置myid
在zookeeper下新建data目录
mkdir data
每台机器执不同的命令
服务器1 echo ‘1’ > data/myid
服务器2 echo ‘2’ > data/myid
服务器3 echo ‘3’ > data/myid -
1.5 分别启动三个zookeeper节点,即完成对ZooKeeper集群的安装
启动命令:./bin/zkServer.sh start
停止命令:./bin/zkServer.sh stop
重启命令:./bin/zkServer.sh restart
状态查看命令:./bin/zkServer.sh status
- 1.6 查看节点状态
- 1.7 使用客户端连接Zookeeper服务
命令:./bin/zkCli.sh -server 127.0.01:2181
./bin/zkCli.sh默认连接到本地127.0.0.1:2181
使用ls命令查看当前ZooKeeper中所包含的内容:
命令:ls /
创建一个新的znode节点“zk”以及与他关联的字符串
命令:creata /zk myData
获znode节点“zk”
命令:get/zk
删除zonde节点“zk”
命令:delete /zk
退出客户端
命令 quit