zookeeper學習之路(一)單機版安裝測試

一,安裝環境與軟件版本

linux centOs6 64
jdk      jdk-8u191-linux-x64.tar.gz
zookeeper zookeeper-3.4.10.tar.gz

     注:zookeeper是JAVA開發的項目,依賴於JDK,所以要有JDK環境。

二,安裝Zookeeper

    1,JDK環境的檢查
 

[root@localhost ~]# cd ../etc/
[root@localhost etc]# vi profile
   
    ## /etc/profile 文件中
    export JAVA_HOME=/opt/jdk1.8.0_191
    export JRE_HOME=${JAVA_HOME}/jre
    export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
    export  PATH=${JAVA_HOME}/bin:$PATH

[root@localhost etc]# java -version
java version "1.8.0_191"
Java(TM) SE Runtime Environment (build 1.8.0_191-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.191-b12, mixed mode)
[root@localhost etc]# 

    2,解壓安裝Zookeeper

##把安裝包移動到相應目錄下
[root@localhost opt]# ll
total 34232
drwxr-xr-x. 7 uucp  143     4096 Oct  6  2018 jdk1.8.0_191
drwxr-xr-x. 2 root root     4096 Mar 26  2015 rh
-rwxrw-rw-. 1 root root 35042811 Jun 21  2017 zookeeper-3.4.10.tar.gz
## 創建安裝目錄
[root@localhost opt]# mkdir module
[root@localhost opt]# ll
total 34236
drwxr-xr-x. 7 uucp  143     4096 Oct  6  2018 jdk1.8.0_191
drwxr-xr-x. 2 root root     4096 May 26 07:46 module
drwxr-xr-x. 2 root root     4096 Mar 26  2015 rh
-rwxrw-rw-. 1 root root 35042811 Jun 21  2017 zookeeper-3.4.10.tar.gz
## 解壓zookeeper
 tar zxvf zookeeper-3.4.10.tar.gz -C module
## zookeeper-3.4.10目錄下,創建data目錄和logs
[root@localhost zookeeper-3.4.10]# mkdir zkData
[root@localhost zookeeper-3.4.10]# mkdir logs
## conf目錄下,目錄下複製配置文件
[root@localhost conf]# cp zoo_sample.cfg  zoo.cfg
## 修改配置文件  zoo.cfg
dataDir=/opt/module/zookeeper-3.4.10/zkData
dataLogDir=/opt/module/zookeeper-3.4.10/logs

3.操作Zookeeper

## 啓動Zookeeper
[root@localhost zookeeper-3.4.10]# bin/zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /opt/module/zookeeper-3.4.10/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
## 查看進程是否啓動(QuorumPeerMain是zk的啓動類)
[root@localhost zookeeper-3.4.10]# jps
2952 QuorumPeerMain
2970 Jps
## 查看狀態
[root@localhost zookeeper-3.4.10]# bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /opt/module/zookeeper-3.4.10/bin/../conf/zoo.cfg
Mode: standalone
## 啓動客戶端
[root@localhost zookeeper-3.4.10]# bin/zkCli.sh
Connecting to localhost:2181
2019-05-26 07:56:56,428 [myid:] - INFO  [main:Environment@100] - Client environment:zookeeper.version=3.4.10-39d3a4f269333c922ed3db283be479f9deacaa0f, built on 03/23/2017 10:13 GMT
2019-05-26 07:56:56,442 [myid:] - INFO  [main:Environment@100] - Client environment:host.name=localhost
2019-05-26 07:56:56,442 [myid:] - INFO  [main:Environment@100] - Client environment:java.version=1.8.0_191
2019-05-26 07:56:56,450 [myid:] - INFO  [main:Environment@100] - Client environment:java.vendor=Oracle Corporation
2019-05-26 07:56:56,450 [myid:] - INFO  [main:Environment@100] - Client environment:java.home=/opt/jdk1.8.0_191/jre
2019-05-26 07:56:56,451 [myid:] - INFO  [main:Environment@100] - Client environment:java.class.path=/opt/module/zookeeper-3.4.10/bin/../build/classes:/opt/module/zookeeper-3.4.10/bin/../build/lib/*.jar:/opt/module/zookeeper-3.4.10/bin/../lib/slf4j-log4j12-1.6.1.jar:/opt/module/zookeeper-3.4.10/bin/../lib/slf4j-api-1.6.1.jar:/opt/module/zookeeper-3.4.10/bin/../lib/netty-3.10.5.Final.jar:/opt/module/zookeeper-3.4.10/bin/../lib/log4j-1.2.16.jar:/opt/module/zookeeper-3.4.10/bin/../lib/jline-0.9.94.jar:/opt/module/zookeeper-3.4.10/bin/../zookeeper-3.4.10.jar:/opt/module/zookeeper-3.4.10/bin/../src/java/lib/*.jar:/opt/module/zookeeper-3.4.10/bin/../conf:.:/opt/jdk1.8.0_191/lib:/opt/jdk1.8.0_191/jre/lib
2019-05-26 07:56:56,451 [myid:] - INFO  [main:Environment@100] - Client environment:java.library.path=/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
2019-05-26 07:56:56,452 [myid:] - INFO  [main:Environment@100] - Client environment:java.io.tmpdir=/tmp
2019-05-26 07:56:56,452 [myid:] - INFO  [main:Environment@100] - Client environment:java.compiler=<NA>
2019-05-26 07:56:56,452 [myid:] - INFO  [main:Environment@100] - Client environment:os.name=Linux
2019-05-26 07:56:56,453 [myid:] - INFO  [main:Environment@100] - Client environment:os.arch=amd64
2019-05-26 07:56:56,453 [myid:] - INFO  [main:Environment@100] - Client environment:os.version=2.6.32-642.el6.x86_64
2019-05-26 07:56:56,454 [myid:] - INFO  [main:Environment@100] - Client environment:user.name=root
2019-05-26 07:56:56,454 [myid:] - INFO  [main:Environment@100] - Client environment:user.home=/root
2019-05-26 07:56:56,455 [myid:] - INFO  [main:Environment@100] - Client environment:user.dir=/opt/module/zookeeper-3.4.10
2019-05-26 07:56:56,461 [myid:] - INFO  [main:ZooKeeper@438] - Initiating client connection, connectString=localhost:2181 sessionTimeout=30000 watcher=org.apache.zookeeper.ZooKeeperMain$MyWatcher@b81eda8
Welcome to ZooKeeper!
2019-05-26 07:56:56,540 [myid:] - INFO  [main-SendThread(localhost:2181):ClientCnxn$SendThread@1032] - Opening socket connection to server localhost/0:0:0:0:0:0:0:1:2181. Will not attempt to authenticate using SASL (unknown error)
JLine support is enabled
2019-05-26 07:56:56,917 [myid:] - INFO  [main-SendThread(localhost:2181):ClientCnxn$SendThread@876] - Socket connection established to localhost/0:0:0:0:0:0:0:1:2181, initiating session
2019-05-26 07:56:57,053 [myid:] - INFO  [main-SendThread(localhost:2181):ClientCnxn$SendThread@1299] - Session establishment complete on server localhost/0:0:0:0:0:0:0:1:2181, sessionid = 0x16af4a28e030000, negotiated timeout = 30000

WATCHER::

WatchedEvent state:SyncConnected type:None path:null
[zk: localhost:2181(CONNECTED) 0] 

## 停止Zookeeper
[root@localhost zookeeper-3.4.10]# bin/zkServer.sh stop
ZooKeeper JMX enabled by default
Using config: /opt/module/zookeeper-3.4.10/bin/../conf/zoo.cfg
Stopping zookeeper ... STOPPED

 

4.zoo.cfg 參數解讀

1.tickTime =2000:通信心跳數,Zookeeper服務器與客戶端心跳時間,單位毫秒

Zookeeper使用的基本時間,服務器之間或客戶端與服務器之間維持心跳的時間間隔,也就是每個tickTime時間就會發送一個心跳時間單位爲毫秒。

它用於心跳機制,並且設置最小的session超時時間爲兩倍心跳時間(session的最小超時時間是2*tickTime)

2.initLimit =10:LF初始通信時限

集羣中的Follower跟隨者服務器與Leader領導者服務器之間初始連接時能容忍的最多心跳數(tickTime的數量),用它來限定集羣中的Zookeeper服務器連接到Leader的時限。

3.syncLimit =5:LF同步通信時限

集羣中Leader與Follower之間的最大響應時間單位,假如響應超過syncLimit * tickTime,Leader認爲Follwer死掉,從服務器列表中刪除Follwer。

4.dataDir:數據文件目錄+數據持久化路徑

主要用於保存Zookeeper中的數據。

5.clientPort =2181:客戶端連接端口

監聽客戶端連接的端口

 

5.啓動Zookeeper失敗的原因

   1,沒有配置JDK環境變量;

   2,JDK版本於Zookeeper版本不符合;

   3,zoo.cfg文件dataDir路徑配置有誤。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章