zoukankan      html  css  js  c++  java
  • win10安装Zookeeper3.4.12

    为了方便在本地开发环境进行调试,希望在win10环境中安装一个zookeeper

    安装:

    下载:

    下载最新的stable版

    zookeeper-3.4.12.tar.gz

    配置环境变量:

    ZOOKEEPER_HOME=D:Program Fileszookeeper-3.4.12
    
    PATH=%ZOOKEEPER_HOME%in
    

    目录说明:

    bin:

    .sh 为 linux 环境
    .cmd 为 windows 环境

    conf:

    zoo_sample.cfg 为样例配置文件,需要修改自己的名称,一般为 zoo.cfg
    log4j.properties 为日志配置文件

    contrib

    contrib 为一些常用于操作 zk 的工具包

    lib

    zk 依赖的某些包

    recipes

    zk 某些用法的代码实例

    dist-maven

    maven 编译后的发布目录

    配置文件说明:

    启动zk前,你需要做的就是将 zoo_sample.cfg 改名为 zoo.cfg,因为 Zookeeper 在启动时会找这个文件作为默认配置文件。

    下面详细介绍一下,这个配置文件中各个配置项的意义。

    # 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=C:\Users\qhong\zookeeper-3.4.5\data
    dataLogDir=C:\Users\qhong\zookeeper-3.4.5\log
    # 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
    
    • tickTime:这个时间是作为 Zookeeper 服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个 tickTime 时间就会发送一个心跳。
    • dataDir:顾名思义就是 Zookeeper 保存数据的目录,默认情况下,Zookeeper 将写数据的日志文件也保存在这个目录里。
    • dataLogDir:顾名思义就是 Zookeeper 保存日志文件的目录
    • clientPort:这个端口就是客户端连接 Zookeeper 服务器的端口,Zookeeper 会监听这个端口,接受客户端的访问请求。

    启动:

    启动服务端:

    D:Program Fileszookeeper-3.4.12in
    $ zkServer.cmd
    
    call "D:Program FilesJavajdk1.8.0"injava "-Dzookeeper.log.dir=D:Program Fileszookeeper-3.4.12in.." "-Dzookeeper.root.logger=INFO,CONSOLE" -cp "D:Program Fileszookeeper-3.4.12in..uildclasses;D:Program Fileszookeeper-3.4.12in..uildlib*;D:Program Fileszookeeper-3.4.12in..*;D:Program Fileszookeeper-3.4.12in..lib*;D:Program Fileszookeeper-3.4.12in..conf" org.apache.zookeeper.server.quorum.QuorumPeerMain "D:Program Fileszookeeper-3.4.12in..confzoo.cfg"
    2018-12-04 11:14:28,112 [myid:] - INFO  [main:QuorumPeerConfig@136] - Reading configuration from: D:Program Fileszookeeper-3.4.12in..confzoo.cfg
    2018-12-04 11:14:28,127 [myid:] - INFO  [main:DatadirCleanupManager@78] - autopurge.snapRetainCount set to 3
    2018-12-04 11:14:28,127 [myid:] - INFO  [main:DatadirCleanupManager@79] - autopurge.purgeInterval set to 0
    2018-12-04 11:14:28,128 [myid:] - INFO  [main:DatadirCleanupManager@101] - Purge task is not scheduled.
    2018-12-04 11:14:28,130 [myid:] - WARN  [main:QuorumPeerMain@116] - Either no config or no quorum defined in config, running  in standalone mode
    2018-12-04 11:14:28,210 [myid:] - INFO  [main:QuorumPeerConfig@136] - Reading configuration from: D:Program Fileszookeeper-3.4.12in..confzoo.cfg
    2018-12-04 11:14:28,211 [myid:] - INFO  [main:ZooKeeperServerMain@98] - Starting server
    2018-12-04 11:14:37,250 [myid:] - INFO  [main:Environment@100] - Server environment:zookeeper.version=3.4.12-e5259e437540f349646870ea94dc2658c4e44b3b, built on 03/27/2018 03:55 GMT
    2018-12-04 11:14:37,250 [myid:] - INFO  [main:Environment@100] - Server environment:host.name=hongda
    2018-12-04 11:14:37,251 [myid:] - INFO  [main:Environment@100] - Server environment:java.version=1.8.0_181
    2018-12-04 11:14:37,251 [myid:] - INFO  [main:Environment@100] - Server environment:java.vendor=Oracle Corporation 2018-12-04 11:14:37,251 [myid:] - INFO  [main:Environment@100] - Server environment:java.home=D:Program FilesJavajdk1.8.0jre
    2018-12-04 11:14:37,252 [myid:] - INFO  [main:Environment@100] - Server environment:java.class.path=D:Program Fileszookeeper-3.4.12in..uildclasses;D:Program Fileszookeeper-3.4.12in..uildlib*;D:Program Fileszookeeper-3.4.12in..zookeeper-3.4.12.jar;D:Program Fileszookeeper-3.4.12in..libaudience-annotations-0.5.0.jar;D:Program Fileszookeeper-3.4.12in..libjline-0.9.94.jar;D:Program Fileszookeeper-3.4.12in..liblog4j-1.2.17.jar;D:Program Fileszookeeper-3.4.12in..lib
    etty-3.10.6.Final.jar;D:Program Fileszookeeper-3.4.12in..libslf4j-api-1.7.25.jar;D:Program Fileszookeeper-3.4.12in..libslf4j-log4j12-1.7.25.jar;D:Program Fileszookeeper-3.4.12in..conf
    2018-12-04 11:14:37,253 [myid:] - INFO  [main:Environment@100] - Server environment:java.library.path=D:Program FilesJavajdk1.8.0in;C:WINDOWSSunJavain;C:WINDOWSsystem32;C:WINDOWS;D:Program Filescmderin;D:Program Filescmdervendorconemu-maximus5ConEmuScripts;D:Program Filescmdervendorconemu-maximus5;D:Program Filescmdervendorconemu-maximus5ConEmu;D:Program Files
    odejs
    ode_global;C:Windowssystem32;C:Windows;C:WindowsSystem32Wbem;C:WindowsSystem32WindowsPowerShellv1.0;%ANDROID_HOME%;%ANDROID_HOME%	ools;%ANDROID_HOME%uild-tools;%ANDROID_HOME%platform-tools;D:Program FilesTomcat8in;D:Program FilesJavajdk1.8.0in;D:Program FilesJavajdk1.8.0jrein;D:Program FilesMySQLin;D:Program Files (x86)JetBrainsIDEA Configuration And Cachegradlein;D:Program Files (x86)JetBrainsIDEA Configuration And Cachemavenin;D:Program Filescmder;D:Program Files
    odejs;D:Program Filescurlin;C:Program Files (x86)NVIDIA CorporationPhysXCommon;C:WINDOWSsystem32;C:WINDOWS;C:WINDOWSSystem32Wbem;C:WINDOWSSystem32WindowsPowerShellv1.0;C:WINDOWSSystem32OpenSSH;D:Program FilesMicrosoft VS Codein;D:Program Files (x86)JetBrainsIDEA Configuration And Cachegradlein;D:Program FilesGitcmd;C:Program FilesTortoiseGitin;D:Program FilesPythonPython36Scripts;D:Program FilesPythonPython36;C:UsersqhongAppDataLocalMicrosoftWindowsApps;D:Program FilesMicrosoft VS Codein;C:Program FilesBandizip;C:UsersqhongAppDataLocalPandoc;C:Program Filessmartmontoolsin;C:UsersqhongAppDataLocalMicrosoftWindowsApps;D:Program FilesGitmingw64;D:Program FilesGitusrin;.
    2018-12-04 11:14:37,257 [myid:] - INFO  [main:Environment@100] - Server environment:java.io.tmpdir=C:UsersqhongAppDataLocalTemp
    2018-12-04 11:14:37,258 [myid:] - INFO  [main:Environment@100] - Server environment:java.compiler=<NA>
    2018-12-04 11:14:37,259 [myid:] - INFO  [main:Environment@100] - Server environment:os.name=Windows 10
    2018-12-04 11:14:37,260 [myid:] - INFO  [main:Environment@100] - Server environment:os.arch=amd64
    2018-12-04 11:14:37,260 [myid:] - INFO  [main:Environment@100] - Server environment:os.version=10.0
    2018-12-04 11:14:37,260 [myid:] - INFO  [main:Environment@100] - Server environment:user.name=qhong
    2018-12-04 11:14:37,261 [myid:] - INFO  [main:Environment@100] - Server environment:user.home=C:Usersqhong
    2018-12-04 11:14:37,261 [myid:] - INFO  [main:Environment@100] - Server environment:user.dir=D:Program Fileszookeeper-3.4.12in
    2018-12-04 11:14:37,277 [myid:] - INFO  [main:ZooKeeperServer@835] - tickTime set to 2000
    2018-12-04 11:14:37,278 [myid:] - INFO  [main:ZooKeeperServer@844] - minSessionTimeout set to -1
    2018-12-04 11:14:37,278 [myid:] - INFO  [main:ZooKeeperServer@853] - maxSessionTimeout set to -1
    2018-12-04 11:14:38,473 [myid:] - INFO  [main:ServerCnxnFactory@117] - Using org.apache.zookeeper.server.NIOServerCnxnFactory as server connection factory
    2018-12-04 11:14:38,477 [myid:] - INFO  [main:NIOServerCnxnFactory@89] - binding to port 0.0.0.0/0.0.0.0:2181
    

    查看:

    D:Developmentpayment-server (master -> origin)
    $ netstat -ano|grep "2181"
      TCP    0.0.0.0:2181           0.0.0.0:0              LISTENING       19912
      TCP    18.16.202.169:4403     18.16.200.41:2181      ESTABLISHED     18436
      TCP    18.16.202.169:10786    18.16.200.43:2181      ESTABLISHED     13780
      TCP    [::]:2181              [::]:0                 LISTENING       19912
    
    D:Developmentpayment-server (master -> origin)
    $ tasklist | findstr "19912"
    java.exe                     19912 Console                    1     44,660 K
    

    启动客户端:

    D:Program Fileszookeeper-3.4.12in
    $ zkCli.cmd -server 127.0.0.1:2181
    Connecting to 127.0.0.1:2181
    2018-12-04 11:29:00,775 [myid:] - INFO  [main:Environment@100] - Client environment:zookeeper.version=3.4.12-e5259e437540f349646870ea94dc2658c4e44b3b, built on 03/27/2018 03:55 GMT
    2018-12-04 11:29:00,779 [myid:] - INFO  [main:Environment@100] - Client environment:host.name=hongda
    2018-12-04 11:29:00,779 [myid:] - INFO  [main:Environment@100] - Client environment:java.version=1.8.0_181
    2018-12-04 11:29:00,781 [myid:] - INFO  [main:Environment@100] - Client environment:java.vendor=Oracle Corporation 2018-12-04 11:29:00,782 [myid:] - INFO  [main:Environment@100] - Client environment:java.home=D:Program FilesJavajdk1.8.0jre
    2018-12-04 11:29:00,782 [myid:] - INFO  [main:Environment@100] - Client environment:java.class.path=D:Program Fileszookeeper-3.4.12in..uildclasses;D:Program Fileszookeeper-3.4.12in..uildlib*;D:Program Fileszookeeper-3.4.12in..zookeeper-3.4.12.jar;D:Program Fileszookeeper-3.4.12in..libaudience-annotations-0.5.0.jar;D:Program Fileszookeeper-3.4.12in..libjline-0.9.94.jar;D:Program Fileszookeeper-3.4.12in..liblog4j-1.2.17.jar;D:Program Fileszookeeper-3.4.12in..lib
    etty-3.10.6.Final.jar;D:Program Fileszookeeper-3.4.12in..libslf4j-api-1.7.25.jar;D:Program Fileszookeeper-3.4.12in..libslf4j-log4j12-1.7.25.jar;D:Program Fileszookeeper-3.4.12in..conf
    2018-12-04 11:29:00,783 [myid:] - INFO  [main:Environment@100] - Client environment:java.library.path=D:Program FilesJavajdk1.8.0in;C:WINDOWSSunJavain;C:WINDOWSsystem32;C:WINDOWS;D:Program Filescmderin;D:Program Filescmdervendorconemu-maximus5ConEmuScripts;D:Program Filescmdervendorconemu-maximus5;D:Program Filescmdervendorconemu-maximus5ConEmu;D:Program Files
    odejs
    ode_global;C:Windowssystem32;C:Windows;C:WindowsSystem32Wbem;C:WindowsSystem32WindowsPowerShellv1.0;%ANDROID_HOME%;%ANDROID_HOME%	ools;%ANDROID_HOME%uild-tools;%ANDROID_HOME%platform-tools;D:Program FilesTomcat8in;D:Program FilesJavajdk1.8.0in;D:Program FilesJavajdk1.8.0jrein;D:Program FilesMySQLin;D:Program Files (x86)JetBrainsIDEA Configuration And Cachegradlein;D:Program Files (x86)JetBrainsIDEA Configuration And Cachemavenin;D:Program Filescmder;D:Program Files
    odejs;D:Program Filescurlin;C:Program Files (x86)NVIDIA CorporationPhysXCommon;C:WINDOWSsystem32;C:WINDOWS;C:WINDOWSSystem32Wbem;C:WINDOWSSystem32WindowsPowerShellv1.0;C:WINDOWSSystem32OpenSSH;D:Program FilesMicrosoft VS Codein;D:Program Files (x86)JetBrainsIDEA Configuration And Cachegradlein;D:Program FilesGitcmd;C:Program FilesTortoiseGitin;D:Program FilesPythonPython36Scripts;D:Program FilesPythonPython36;C:UsersqhongAppDataLocalMicrosoftWindowsApps;D:Program FilesMicrosoft VS Codein;C:Program FilesBandizip;C:UsersqhongAppDataLocalPandoc;C:Program Filessmartmontoolsin;C:UsersqhongAppDataLocalMicrosoftWindowsApps;D:Program FilesGitmingw64;D:Program FilesGitusrin;.
    2018-12-04 11:29:00,787 [myid:] - INFO  [main:Environment@100] - Client environment:java.io.tmpdir=C:UsersqhongAppDataLocalTemp
    2018-12-04 11:29:00,788 [myid:] - INFO  [main:Environment@100] - Client environment:java.compiler=<NA>
    2018-12-04 11:29:00,788 [myid:] - INFO  [main:Environment@100] - Client environment:os.name=Windows 10
    2018-12-04 11:29:00,788 [myid:] - INFO  [main:Environment@100] - Client environment:os.arch=amd64
    2018-12-04 11:29:00,789 [myid:] - INFO  [main:Environment@100] - Client environment:os.version=10.0
    2018-12-04 11:29:00,789 [myid:] - INFO  [main:Environment@100] - Client environment:user.name=qhong
    2018-12-04 11:29:00,789 [myid:] - INFO  [main:Environment@100] - Client environment:user.home=C:Usersqhong
    2018-12-04 11:29:00,789 [myid:] - INFO  [main:Environment@100] - Client environment:user.dir=D:Program Fileszookeeper-3.4.12in
    2018-12-04 11:29:00,792 [myid:] - INFO  [main:ZooKeeper@441] - Initiating client connection, connectString=127.0.0.1:2181 sessionTimeout=30000 watcher=org.apache.zookeeper.ZooKeeperMain$MyWatcher@67424e82
    Welcome to ZooKeeper!
    2018-12-04 11:29:02,164 [myid:] - INFO  [main-SendThread(127.0.0.1:2181):ClientCnxn$SendThread@1028] - Opening socket connection to server 127.0.0.1/127.0.0.1:2181. Will not attempt to authenticate using SASL (unknown error)
    2018-12-04 11:29:02,169 [myid:] - INFO  [main-SendThread(127.0.0.1:2181):ClientCnxn$SendThread@878] - Socket connection established to 127.0.0.1/127.0.0.1:2181, initiating session
    JLine support is enabled
    2018-12-04 11:29:02,216 [myid:] - INFO  [main-SendThread(127.0.0.1:2181):ClientCnxn$SendThread@1302] - Session establishment complete on server 127.0.0.1/127.0.0.1:2181, sessionid = 0x10029a625410000, negotiated timeout = 30000
    
    WATCHER::
    
    WatchedEvent state:SyncConnected type:None path:null
    

    操作命令:

    ls:

    [zk: 127.0.0.1:2181(CONNECTED) 1] ls /
    [zookeeper]
    

    create:

    [zk: 127.0.0.1:2181(CONNECTED) 2] create /name hongdada
    Created /name
    [zk: 127.0.0.1:2181(CONNECTED) 4] ls /
    [name, zookeeper]
    

    get:

    [zk: 127.0.0.1:2181(CONNECTED) 5] get /name   
    hongdada                                      
    cZxid = 0x2                                   
    ctime = Tue Dec 04 13:08:06 CST 2018          
    mZxid = 0x2                                   
    mtime = Tue Dec 04 13:08:06 CST 2018          
    pZxid = 0x2                                   
    cversion = 0                                  
    dataVersion = 0                               
    aclVersion = 0                                
    ephemeralOwner = 0x0                          
    dataLength = 8                                
    numChildren = 0                               
    

    set:

    [zk: 127.0.0.1:2181(CONNECTED) 7] set /name hondadadada
    cZxid = 0x2
    ctime = Tue Dec 04 13:08:06 CST 2018
    mZxid = 0x3
    mtime = Tue Dec 04 13:09:03 CST 2018
    pZxid = 0x2
    cversion = 0
    dataVersion = 1
    aclVersion = 0
    ephemeralOwner = 0x0
    dataLength = 11
    numChildren = 0
    

    delete:

    delete只能删除不包含子节点的节点

    [zk: 127.0.0.1:2181(CONNECTED) 50] ls /dubbo/com.jsy.order.api.OrderFacade
    [configurators, providers]
    [zk: 127.0.0.1:2181(CONNECTED) 52] delete /dubbo/com.jsy.order.api.OrderFacade/providers
    [zk: 127.0.0.1:2181(CONNECTED) 53] ls /dubbo/com.jsy.order.api.OrderFacade/providers
    Node does not exist: /dubbo/com.jsy.order.api.OrderFacade/providers
    [zk: 127.0.0.1:2181(CONNECTED) 57] delete /dubbo/com.jsy.order.api.OrderFacade/configurators
    [zk: 127.0.0.1:2181(CONNECTED) 58] delete /dubbo/com.jsy.order.api.OrderFacade
    

    只能从最底部子节点一个个删除

    rmr:

    rmr:整个节点全部删除

    [zk: 127.0.0.1:2181(CONNECTED) 60] ls  /dubbo
    [com.jsy.order.api.OrderPayFacade, com.jsy.order.api.OrderTrialFacade, com.jsy.order.api.OpenAccountHttpFacade, com.jsy.payment.api.PaymentFacade, com.jsy.ufida.api.UfidaFacade, com.jsy.order.api.OpenAccountFacade, com.jsy.validation.ValidationFacade, com.jsy.payment.api.CustomerOpenAccountFacade, com.jsy.payment.api.PaymentQueryFacade, com.jsy.order.api.OrderUfidaFacade, com.jsy.order.api.OrderPayAccountFacade, com.jsy.order.api.OrderFacade2]
    [zk: 127.0.0.1:2181(CONNECTED) 61] rmr /dubbo/com.jsy.order.api.OrderPayFacade
    [zk: 127.0.0.1:2181(CONNECTED) 62] ls  /dubbo
    [com.jsy.order.api.OrderTrialFacade, com.jsy.order.api.OpenAccountHttpFacade, com.jsy.payment.api.PaymentFacade, com.jsy.ufida.api.UfidaFacade, com.jsy.order.api.OpenAccountFacade, com.jsy.validation.ValidationFacade, com.jsy.payment.api.CustomerOpenAccountFacade, com.jsy.payment.api.PaymentQueryFacade, com.jsy.order.api.OrderUfidaFacade, com.jsy.order.api.OrderPayAccountFacade, com.jsy.order.api.OrderFacade2]
    

    参考:

    Windows安装和使用zookeeper

    Windows 安装 ZooKeeper

  • 相关阅读:
    《Scrum实战》第4次课【全职的Scrum Master】作业汇总
    回顾Scrum学习:《Scrum实战》第4次课【全职的Scrum Master】作业
    孙式无极桩站桩要领--林泰年
    [Android Tips] 29. 如何判断当前编译的是哪个 Flavor ?
    [Jenkins] 解决 Gradle 编译包含 SVG Drawable 出现异常
    [Android Tips] 28. 如何指定运行特定的 Android Instrumentation Test
    [Gradle] 给已存在的 task 添加依赖
    [Gradle] 针对不同的项目类型应用不同的 findbugs 配置
    [Android Tips] 27. 检查 APK 是否可调试
    [Gradle] 如何强制 Gradle 重新下载项目的依赖库
  • 原文地址:https://www.cnblogs.com/hongdada/p/10063574.html
Copyright © 2011-2022 走看看