zookeeper学习之路(一)单机版安装测试

    xiaoxiao2025-07-23  8

    一,安装环境与软件版本

    linuxcentOs6 64jdk     jdk-8u191-linux-x64.tar.gzzookeeperzookeeper-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路径配置有误。

     

    最新回复(0)