第一步:解壓文件
[julong@localhost ~]$ tar -zxvf zookeeper-3.4.0.tar.gz
[julong@localhost ~]$ ls
apache-tomcat-7.0.90 jdk-7u55-linux-x64.tar.gz rarlinux-x64-5.6.0.tar.gz redis-2.8.3.tar.gz solr-5.5.2.tgz zookeeper-3.4.0 zookeeper-cloud
apache-tomcat-7.0.90.tar.gz MySQL-5.6.41-1.el7.x86_64.rpm-bundle.tar redis-2.8.3 solr-5.5.2 solr-cloud zookeeper-3.4.0.tar.gz
[julong@localhost ~]$
第二步:創建文件夾
[julong@localhost zookeeper-3.4.0]$ mkdir data
[julong@localhost zookeeper-3.4.0]$ ls
bin CHANGES.txt contrib dist-maven ivysettings.xml lib README_packaging.txt recipes zookeeper-3.4.0.jar zookeeper-3.4.0.jar.md5
build.xml conf data docs ivy.xml LICENSE.txt NOTICE.txt README.txt src zookeeper-3.4.0.jar.asc zookeeper-3.4.0.jar.sha1
[julong@localhost zookeeper-3.4.0]$
第三步:創建配置文件
[julong@localhost zookeeper-3.4.0]$ ls
bin CHANGES.txt contrib dist-maven ivysettings.xml lib NOTICE.txt README.txt src zookeeper-3.4.0.jar.asc zookeeper-3.4.0.jar.sha1
build.xml conf data docs ivy.xml LICENSE.txt README_packaging.txt recipes zookeeper-3.4.0.jar zookeeper-3.4.0.jar.md5
[julong@localhost zookeeper-3.4.0]$ cd conf
[julong@localhost conf]$ ls
configuration.xsl log4j.properties zoo_sample.cfg
[julong@localhost conf]$ cp zoo_sample.cfg zoo.cfg
[julong@localhost conf]$ ls
configuration.xsl log4j.properties zoo.cfg zoo_sample.cfg
[julong@localhost conf]$
第四步:編輯zoo.cfg文件
[julong@localhost conf]$ vi zoo.cfg
# The number of milliseconds of each tick
tickTime=2000
# The number of ticks that the initial
# synchronization phase can take
initLimit=10
# The number of ticks that can pass between
# sending a request and getting an acknowledgement
syncLimit=5
# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just
# example sakes.
dataDir=/home/julong/zookeeper-3.4.0/data
# the port at which the clients will connect
clientPort=2181
#
# Be sure to read the maintenance section of the
# administrator guide before turning on autopurge.
#
# http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
#
# The number of snapshots to retain in dataDir
#autopurge.snapRetainCount=3
# Purge task interval in hours
# Set to "0" to disable auto purge feature
#autopurge.purgeInterval=1
第五步:啓動
[julong@localhost zookeeper-3.4.0]$ cd bin/
[julong@localhost bin]$ ls
README.txt zkCleanup.sh zkCli.cmd zkCli.sh zkEnv.cmd zkEnv.sh zkServer.cmd zkServer.sh
[julong@localhost bin]$ ./zkServer.sh
JMX enabled by default
Using config: /home/julong/zookeeper-3.4.0/bin/../conf/zoo.cfg
Usage: ./zkServer.sh {start|start-foreground|stop|restart|status|upgrade|print-cmd}
[julong@localhost bin]$ ./zkServer.sh start
JMX enabled by default
Using config: /home/julong/zookeeper-3.4.0/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
第六步:查看狀態
[julong@localhost bin]$ ./zkCli.sh
Connecting to localhost:2181
2020-01-06 22:15:02,413 [myid:] - INFO [main:Environment@98] - Client environment:zookeeper.version=3.4.0-1202560, built on 11/16/2011 07:18 GMT
2020-01-06 22:15:02,417 [myid:] - INFO [main:Environment@98] - Client environment:host.name=localhost
2020-01-06 22:15:02,418 [myid:] - INFO [main:Environment@98] - Client environment:java.version=1.7.0_55
2020-01-06 22:15:02,419 [myid:] - INFO [main:Environment@98] - Client environment:java.vendor=Oracle Corporation
2020-01-06 22:15:02,420 [myid:] - INFO [main:Environment@98] - Client environment:java.home=/opt/jdk1.7.0_55/jre
2020-01-06 22:15:02,421 [myid:] - INFO [main:Environment@98] - Client environment:java.class.path=/home/julong/zookeeper-3.4.0/bin/../build/classes:/home/julong/zookeeper-3.4.0/bin/../build/lib/*.jar:/home/julong/zookeeper-3.4.0/bin/../lib/slf4j-log4j12-1.6.1.jar:/home/julong/zookeeper-3.4.0/bin/../lib/slf4j-api-1.6.1.jar:/home/julong/zookeeper-3.4.0/bin/../lib/netty-3.2.2.Final.jar:/home/julong/zookeeper-3.4.0/bin/../lib/log4j-1.2.15.jar:/home/julong/zookeeper-3.4.0/bin/../lib/jline-0.9.94.jar:/home/julong/zookeeper-3.4.0/bin/../zookeeper-3.4.0.jar:/home/julong/zookeeper-3.4.0/bin/../src/java/lib/*.jar:/home/julong/zookeeper-3.4.0/bin/../conf:
2020-01-06 22:15:02,422 [myid:] - INFO [main:Environment@98] - Client environment:java.library.path=/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
2020-01-06 22:15:02,423 [myid:] - INFO [main:Environment@98] - Client environment:java.io.tmpdir=/tmp
2020-01-06 22:15:02,423 [myid:] - INFO [main:Environment@98] - Client environment:java.compiler=<NA>
2020-01-06 22:15:02,424 [myid:] - INFO [main:Environment@98] - Client environment:os.name=Linux
2020-01-06 22:15:02,424 [myid:] - INFO [main:Environment@98] - Client environment:os.arch=amd64
2020-01-06 22:15:02,425 [myid:] - INFO [main:Environment@98] - Client environment:os.version=3.10.0-123.el7.x86_64
2020-01-06 22:15:02,426 [myid:] - INFO [main:Environment@98] - Client environment:user.name=julong
2020-01-06 22:15:02,427 [myid:] - INFO [main:Environment@98] - Client environment:user.home=/home/julong
2020-01-06 22:15:02,428 [myid:] - INFO [main:Environment@98] - Client environment:user.dir=/home/julong/zookeeper-3.4.0/bin
2020-01-06 22:15:02,430 [myid:] - INFO [main:ZooKeeper@433] - Initiating client connection, connectString=localhost:2181 sessionTimeout=30000 watcher=org.apache.zookeeper.ZooKeeperMain$MyWatcher@165a8803
2020-01-06 22:15:02,471 [myid:] - INFO [main-SendThread():ClientCnxn$SendThread@933] - Opening socket connection to server /0:0:0:0:0:0:0:1:2181
2020-01-06 22:15:02,477 [myid:] - INFO [main-SendThread(localhost:2181):ClientCnxn$SendThread@846] - Socket connection established to localhost/0:0:0:0:0:0:0:1:2181, initiating session
Welcome to ZooKeeper!
JLine support is enabled
2020-01-06 22:15:02,563 [myid:] - INFO [main-SendThread(localhost:2181):ClientCnxn$SendThread@1181] - Session establishment complete on server localhost/0:0:0:0:0:0:0:1:2181, sessionid = 0x16f7b34f2e60000, negotiated timeout = 30000
WATCHER::
WatchedEvent state:SyncConnected type:None path:null
[zk: localhost:2181(CONNECTED) 0]
至此安裝完成
關於客戶端命令如下
[zk: localhost:2181(CONNECTED) 0] help
ZooKeeper -server host:port cmd args
connect host:port
get path [watch]
ls path [watch]
set path data [version]
rmr path
delquota [-n|-b] path
quit
printwatches on|off
create [-s] [-e] path data acl
stat path [watch]
close
ls2 path [watch]
history
listquota path
setAcl path acl
getAcl path
sync path
redo cmdno
addauth scheme auth
delete path [version]
setquota -n|-b val path