Zookeeper的安装:
1.Zookeeper的下载地址:https://archive.apache.org/dist/zookeeper/
2.下载完成后,解压文件:
tar -zxvf /usr/local/src/apache-zookeeper-3.5.5-bin.tar.gz
3.解压后进入到conf目录下,复制zoo_sample.cfg文件为zoo.cfg
4.修改zoo.cfg文件中的dataDir的目录,建议不要使用/tmp目录,配置文件的内容大致如下:
# 每个tick的毫秒数。后面的initLimit和syncLimit都以tick为单位
tickTime=2000
#初始化同步阶段时长
initLimit=10
# 同步确认时长
syncLimit=5
# 快照存储路径,不要使用/tmp。这里使用只是为了示例
dataDir=/var/lib/zookeeper
# 客户端端口好
clientPort=2181
#可连接的client的最大数
#如果需要处理更多的clinet,请增加此数量
#maxClientCnxns=60
单机Zookeeper启动:
进入到bin目录,执行启动命令,启动时可以指定目标配置文件
./zkServer.sh start ../conf/zoo.cfg
启动后可以看到如下信息:
使用客户端进行连接Zookeeper
进入到bin目录,执行zkCli.sh文件,进行连接客户端
./zkCli.sh
客户端基本操作命令
1.创建Znode节点,并携带数据:
create /test testZoo
2.查询Znode节点的信息,如果仅查询数据则去掉-s即可
get -s /test
3.修改Znode节点数据
set /test testPark
4.创建子Znode节点:
create /test/children testMuseum
5.查询子Znode节点:
ls /test
6.删除Znode节点,注意:如果有子节点不能直接删除,需要先删除子节点。
delete /test/children
##查看子节点是否已经删除
ls /test
delete /test
Zookeeper集群环境的配置和启动
1.首先进入到conf目录,修改zoo.cfg文件,在文件中添加如下内容,其中hostname为对应的服务器名称。
server.1=ip1:2888:3888
server.2=ip2:2889:3889
server.3=ip3:2890:3890
2.然后修改zoo.cfg的配置文件为zoo1.cfg,针对zoo1.cfg文件复制出zoo2.cfg和zoo3.cfg
3.分别将zoo1.cfg、zoo2.cfg和zoo3.cfg文件中的dataDir项和clientPort项分别进行修改,可以参考如下所示:
dataDir=/var/lib/zookeeper1
clientPort=2181
dataDir=/var/lib/zookeeper2
clientPort=2182
dataDir=/var/lib/zookeeper3
clientPort=2183
4.进入到.cfg配置文件对应的dataDir目录中,如果没有该目录可以手动创建一个,然后创建一个myid文件,myid文件中的内容对应zoo1.cfg的顺序,例如:zoo1.cfg的dataDir对应目录/var/lib/zookeeper1中的myid文件内容为1,而/var/lib/zookeeper2的myid文件内容就为2,依次往后进行类推。
5.修改完成myid文件后,回到zookeeper的bin目录,然后挨个进行启动
./zkServer.sh start ../conf/zoo1.cfg
./zkServer.sh start ../conf/zoo2.cfg
./zkServer.sh start ../conf/zoo3.cfg
6.可以使用jps命令进行查看服务是否已经运行,如下图所示:
7.然后执行status查看各个服务的状态:
./zkServer.sh status ../conf/zoo1.cfg
8.目前,各个Zookeeper服务是正常运行的状态,我们还需要进行一个小测验进行测试一下,随便连接上一个Server端:
./zkCli.sh -server ip2:2182
在该Server端上创建一个Znode节点
create /test panda
然后这时,我们连接上另外的一个服务端:
./zkCli.sh -server ip3:2183
查询一下该Znode节点:
get /test
可以查询到panda数据,则证明集群环境已经搭建完成。