写在前面
该系列文章仅为作者自己学习过程的总结,包括个人的理解以及网上相关知识的吸收。鉴于作者初出茅庐,无法给出更多深入解释的地方,希望诸位同仁海涵谅解。
闲言少叙
ZooKeeper 下载安装
- 诸公可以参考小生给出的官网镜像地址,选择性下载相应的版本
- 环境:Mac
- 版本:3.4.11
- wget 下载
-
cd 到指定的目录,该目录用以处理ZooKeeper
cd /Users/lirui/Documents/tools/for-code
-
确保本机已有wget工具,再于该目录下输入命令:
wget http://mirrors.shuosc.org/apache/zookeeper/zookeeper-3.4.11/zookeeper-3.4.11.tar.gz
-
待下载完成,输入命令解压到当前目录
tar zvxf zookeeper-3.4.11.tar.gz
-
解压完成后,当前目录下生成了新的目录
zookeeper-3.4.11/
-
如果觉得该目录不太方便操作,可以修改目录名,用zk目录名替换zookeeper-3.4.11
mv zookeeper-3.4.11/ ./zk
-
ZooKeeper 修改配置文件
-
从 zk 目录进入 conf目录,并将conf目录下默认的配置文件zoo_sample.cfg替换为zoo.cfg
cd conf/ mv zoo_sample.cfg ./zoo.cfg
-
修改配置文件
vim zoo.cfg tickTime=2000 # 默认不变 initLimit=10 # 默认不变 syncLimit=5 # 默认不变 dataDir=./data # 诸公可根据本机情况,指定具体的目录。如小生指定为:该文件所在的目录 dataLogDir=./logs # 诸公可根据本机情况,指定具体的目录。如小生指定为:该文件所在的目录 clientPort=2181 # 默认不变 配置完毕,保存退出
-
回到zk目录,启动服务
cd ../ ./bin/zkServer.sh start
-
查看启动状态
./bin/zkServer.sh status # 启动成功的状态如下 ZooKeeper JMX enabled by default Using config: /Users/lirui/Documents/tools/for-code/zk/bin/../conf/zoo.cfg Mode: standalone # 说明:Mode为standalone表示当前运行的是独立模式,而非集群模式
-
除此之外,诸公还可以通过 telnet 127.0.0.1 2181 或者 jps 命令查询服务是否启动
telnet 127.0.0.1 2181 Trying 127.0.0.1... Connected to localhost. # 启动成功 jps 6210 QuorumPeerMain # 启动成功 5844 QuorumPeerMain # 启动成功
-
-
停止服务
./bin/zkServer.sh stop
另外
-
如果读者觉得使用上述服务启动、关闭等命令比较麻烦,可以配置环境变量,笔者的环境变量文件为:/Users/lirui/.bash_profile
ZOOKEEPER_HOME=/Users/lirui/Documents/tools/for-code/zk export ZOOKEEPER_HOME export PATH=$PATH:$ZOOKEEPER_HOME/bin
配置完成之后,可以直接使用 zkServer.sh status/start/stop等命令
ZooKeeper 会话
-
如果想要在前台查看服务器的输出,可以通过以下命令运行:
zkServer.sh start-foreground
-
新建shell,启动客户端,通过该客户端,可以进行一些操作。请确保启动客户端 shell 前,先启动服务端 shell
zkCli.sh
- 如上,通过客户端创建和删除节点,并关闭当前会话