zookeeper單節點安裝


本文介紹zookeeper單節點安裝。

 

下載

http://archive.apache.org/dist/zookeeper/zookeeper-3.4.6/

解壓后,把conf中的zoo_sample.cfg復制一份成為zoo.cfg,修改一下里面的路徑:

 

啟動zookeeper

[work@xxx zookeeper-3.4.6]$ bin/zkServer.sh start
JMX enabled by default
Using config: /home/work/soft/zookeeper-3.4.6/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

如果配置文件不是zoo.cfg,可以在start后面加上你指定的配置文件的名字

 

查看狀態

[work@xxx zookeeper-3.4.6]$ bin/zkServer.sh status
JMX enabled by default
Using config: /home/work/soft/zookeeper-3.4.6/bin/../conf/zoo.cfg
Error contacting service. It is probably not running.

明明提示起來了,但是狀態就不對,看了一下進程都沒有起來。這時候看了網上各種文章,里面列出了一些解決方法:

1、zoo.cfg配置文件中指定目錄卻沒有創建,創建相應目錄即可

2、使用service iptables stop 關閉防火牆;使用service iptables status確認

3、打開zkServer.sh 找到
status)
    STAT=`echo stat | nc localhost $(grep clientPort "$ZOOCFG" | sed -e 's/.*=//') 2> /dev/null| grep Mode`
在nc與localhost之間加上 -q 1 (是數字1而不是字母l),如果已存在則去掉

4、2181端口被占用

但是我遇到的情況都不是上面提到的,后面查到有個zookeeper.out的文件,里面會有一些log信息。

 

查看zookeeper.out

[work@xxx zookeeper-3.4.6]$cat zookeeper.out
nohup: failed to run command `/usr/java/jdk1.8.0_65//bin/java': No such file or directory

這里可以看到是系統的環境變量有問題了!!!

 

查看系統環境變量

[work@xxx zookeeper-3.4.6]$ export
declare -x CVS_RSH="ssh"
declare -x G_BROKEN_FILENAMES="1"
declare -x HISTCONTROL="ignoredups"
declare -x HISTSIZE="1000"
declare -x HISTTIMEFORMAT="%F %T work "
declare -x HOME="/home/work"
declare -x JAVA_HOME="/usr/java/jdk1.8.0_65/"

果然TM有問題!

 

修改系統環境變量

[work@xxx zookeeper-3.4.6]$ export JAVA_HOME=/usr

 

再次啟動zookeeper

[work@xxx zookeeper-3.4.6]$ bin/zkServer.sh start
JMX enabled by default
Using config: /home/work/soft/zookeeper-3.4.6/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

 

再次查看狀態

[work@xxx zookeeper-3.4.6]$ bin/zkServer.sh status
JMX enabled by default
Using config: /home/work/soft/zookeeper-3.4.6/bin/../conf/zoo.cfg
Mode: standalone

 

再次查看zookeeper.out

[work@xxx zookeeper-3.4.6]$ cat zookeeper.out
2018-01-05 20:29:36,745 [myid:] - INFO  [main:QuorumPeerConfig@103] - Reading configuration from: /home/work/soft/zookeeper-3.4.6/bin/../conf/zoo.cfg
2018-01-05 20:29:36,751 [myid:] - INFO  [main:DatadirCleanupManager@78] - autopurge.snapRetainCount set to 3
2018-01-05 20:29:36,752 [myid:] - INFO  [main:DatadirCleanupManager@79] - autopurge.purgeInterval set to 0
2018-01-05 20:29:36,752 [myid:] - INFO  [main:DatadirCleanupManager@101] - Purge task is not scheduled.
2018-01-05 20:29:36,752 [myid:] - WARN  [main:QuorumPeerMain@113] - Either no config or no quorum defined in config, running  in standalone mode
2018-01-05 20:29:36,767 [myid:] - INFO  [main:QuorumPeerConfig@103] - Reading configuration from: /home/work/soft/zookeeper-3.4.6/bin/../conf/zoo.cfg
2018-01-05 20:29:36,767 [myid:] - INFO  [main:ZooKeeperServerMain@95] - Starting server
2018-01-05 20:29:36,776 [myid:] - INFO  [main:Environment@100] - Server environment:zookeeper.version=3.4.6-1569965, built on 02/20/2014 09:09 GMT
2018-01-05 20:29:36,776 [myid:] - INFO  [main:Environment@100] - Server environment:host.name=xxx
2018-01-05 20:29:36,776 [myid:] - INFO  [main:Environment@100] - Server environment:java.version=1.7.0_111
2018-01-05 20:29:36,776 [myid:] - INFO  [main:Environment@100] - Server environment:java.vendor=Oracle Corporation
2018-01-05 20:29:36,776 [myid:] - INFO  [main:Environment@100] - Server environment:java.home=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.111.x86_64/jre
2018-01-05 20:29:36,776 [myid:] - INFO  [main:Environment@100] - Server environment:java.class.path=/home/work/soft/zookeeper-3.4.6/bin/../build/classes:/home/work/soft/zookeeper-3.4.6/bin/../build/lib/*.jar:/home/work/soft/zookeeper-3.4.6/bin/../lib/slf4j-log4j12-1.6.1.jar:/home/work/soft/zookeeper-3.4.6/bin/../lib/slf4j-api-1.6.1.jar:/home/work/soft/zookeeper-3.4.6/bin/../lib/netty-3.7.0.Final.jar:/home/work/soft/zookeeper-3.4.6/bin/../lib/log4j-1.2.16.jar:/home/work/soft/zookeeper-3.4.6/bin/../lib/jline-0.9.94.jar:/home/work/soft/zookeeper-3.4.6/bin/../zookeeper-3.4.6.jar:/home/work/soft/zookeeper-3.4.6/bin/../src/java/lib/*.jar:/home/work/soft/zookeeper-3.4.6/bin/../conf:
2018-01-05 20:29:36,777 [myid:] - INFO  [main:Environment@100] - Server environment:java.library.path=/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
2018-01-05 20:29:36,777 [myid:] - INFO  [main:Environment@100] - Server environment:java.io.tmpdir=/tmp
2018-01-05 20:29:36,777 [myid:] - INFO  [main:Environment@100] - Server environment:java.compiler=<NA>
2018-01-05 20:29:36,779 [myid:] - INFO  [main:Environment@100] - Server environment:os.name=Linux
2018-01-05 20:29:36,779 [myid:] - INFO  [main:Environment@100] - Server environment:os.arch=amd64
2018-01-05 20:29:36,779 [myid:] - INFO  [main:Environment@100] - Server environment:os.version=3.10.0_1-0-0-8
2018-01-05 20:29:36,780 [myid:] - INFO  [main:Environment@100] - Server environment:user.name=work
2018-01-05 20:29:36,780 [myid:] - INFO  [main:Environment@100] - Server environment:user.home=/home/work
2018-01-05 20:29:36,780 [myid:] - INFO  [main:Environment@100] - Server environment:user.dir=/home/work/soft/zookeeper-3.4.6
2018-01-05 20:29:36,787 [myid:] - INFO  [main:ZooKeeperServer@755] - tickTime set to 2000
2018-01-05 20:29:36,787 [myid:] - INFO  [main:ZooKeeperServer@764] - minSessionTimeout set to -1
2018-01-05 20:29:36,787 [myid:] - INFO  [main:ZooKeeperServer@773] - maxSessionTimeout set to -1
2018-01-05 20:29:36,803 [myid:] - INFO  [main:NIOServerCnxnFactory@94] - binding to port 0.0.0.0/0.0.0.0:2181
2018-01-05 20:29:41,380 [myid:] - INFO  [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2181:NIOServerCnxnFactory@197] - Accepted socket connection from /127.0.0.1:33745
2018-01-05 20:29:41,385 [myid:] - INFO  [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2181:NIOServerCnxn@827] - Processing srvr command from /127.0.0.1:33745
2018-01-05 20:29:41,388 [myid:] - INFO  [Thread-1:NIOServerCnxn@1007] - Closed socket connection for client /127.0.0.1:33745 (no session established for client)

 

啟動成功后可以看到zoo_0中

里面的文件zookeeper_server.pid就是對應的進程號

 

安裝后用cli來測試一下:
[work@xxx zookeeper-3.4.6]$ bin/zkCli.sh -server 127.0.0.1:2181
Connecting to 127.0.0.1:2181
2018-01-05 21:25:15,952 [myid:] - INFO  [main:Environment@100] - Client environment:zookeeper.version=3.4.6-1569965, built on 02/20/2014 09:09 GMT
2018-01-05 21:25:15,956 [myid:] - INFO  [main:Environment@100] - Client environment:host.name=xxx
2018-01-05 21:25:15,956 [myid:] - INFO  [main:Environment@100] - Client environment:java.version=1.7.0_111
2018-01-05 21:25:15,958 [myid:] - INFO  [main:Environment@100] - Client environment:java.vendor=Oracle Corporation
2018-01-05 21:25:15,958 [myid:] - INFO  [main:Environment@100] - Client environment:java.home=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.111.x86_64/jre
2018-01-05 21:25:15,958 [myid:] - INFO  [main:Environment@100] - Client environment:java.class.path=/home/work/soft/zookeeper-3.4.6/bin/../build/classes:/home/work/soft/zookeeper-3.4.6/bin/../build/lib/*.jar:/home/work/soft/zookeeper-3.4.6/bin/../lib/slf4j-log4j12-1.6.1.jar:/home/work/soft/zookeeper-3.4.6/bin/../lib/slf4j-api-1.6.1.jar:/home/work/soft/zookeeper-3.4.6/bin/../lib/netty-3.7.0.Final.jar:/home/work/soft/zookeeper-3.4.6/bin/../lib/log4j-1.2.16.jar:/home/work/soft/zookeeper-3.4.6/bin/../lib/jline-0.9.94.jar:/home/work/soft/zookeeper-3.4.6/bin/../zookeeper-3.4.6.jar:/home/work/soft/zookeeper-3.4.6/bin/../src/java/lib/*.jar:/home/work/soft/zookeeper-3.4.6/bin/../conf:
2018-01-05 21:25:15,958 [myid:] - INFO  [main:Environment@100] - Client environment:java.library.path=/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
2018-01-05 21:25:15,959 [myid:] - INFO  [main:Environment@100] - Client environment:java.io.tmpdir=/tmp
2018-01-05 21:25:15,959 [myid:] - INFO  [main:Environment@100] - Client environment:java.compiler=<NA>
2018-01-05 21:25:15,959 [myid:] - INFO  [main:Environment@100] - Client environment:os.name=Linux
2018-01-05 21:25:15,959 [myid:] - INFO  [main:Environment@100] - Client environment:os.arch=amd64
2018-01-05 21:25:15,959 [myid:] - INFO  [main:Environment@100] - Client environment:os.version=3.10.0_1-0-0-8
2018-01-05 21:25:15,959 [myid:] - INFO  [main:Environment@100] - Client environment:user.name=work
2018-01-05 21:25:15,959 [myid:] - INFO  [main:Environment@100] - Client environment:user.home=/home/work
2018-01-05 21:25:15,959 [myid:] - INFO  [main:Environment@100] - Client environment:user.dir=/home/work/soft/zookeeper-3.4.6
2018-01-05 21:25:15,961 [myid:] - INFO  [main:ZooKeeper@438] - Initiating client connection, connectString=127.0.0.1:2181 sessionTimeout=30000 watcher=org.apache.zookeeper.ZooKeeperMain$MyWatcher@544cbce2
Welcome to ZooKeeper!
2018-01-05 21:25:15,988 [myid:] - INFO  [main-SendThread(127.0.0.1:2181):ClientCnxn$SendThread@975] - Opening socket connection to server 127.0.0.1/127.0.0.1:2181. Will not attempt to authenticate using SASL (unknown error)
JLine support is enabled
2018-01-05 21:25:15,994 [myid:] - INFO  [main-SendThread(127.0.0.1:2181):ClientCnxn$SendThread@852] - Socket connection established to 127.0.0.1/127.0.0.1:2181, initiating session
2018-01-05 21:25:16,018 [myid:] - INFO  [main-SendThread(127.0.0.1:2181):ClientCnxn$SendThread@1235] - Session establishment complete on server 127.0.0.1/127.0.0.1:2181, sessionid = 0x160c67e9c270000, negotiated timeout = 30000
[zk: 127.0.0.1:2181(CONNECTED) 0]
WATCHER::

WatchedEvent state:SyncConnected type:None path:null

[zk: 127.0.0.1:2181(CONNECTED) 0]
[zk: 127.0.0.1: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
[zk: 127.0.0.1:2181(CONNECTED) 1]
[zk: 127.0.0.1:2181(CONNECTED) 1]
[zk: 127.0.0.1:2181(CONNECTED) 1]

 

windows下的安裝方式見:zookeeper單節點windows下安裝

 

 

本文參考自:

http://blog.csdn.net/xiewendong93/article/details/50500471

http://qsfwy.iteye.com/blog/1667191

https://www.cnblogs.com/haippy/archive/2012/07/19/2599989.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM