zoukankan      html  css  js  c++  java
  • Zookpeer集群节点

    Adaptive Communication Environment(自适配通信环境),简称ACE。

    reference artfile:zookeeper单节点与集群的安装https://blog.csdn.net/xfz0330/article/details/52434237

                               5分钟让你了解 ZooKeeper 的功能和原理https://blog.csdn.net/weijifeng_/article/details/79775738

     download url: https://zookeeper.apache.org/

    zookpeer介绍:

         zookpeer有个集群角色,leader,follower,observer。只能有一个leader。

    ※注意:tar.gz实质也就是zip文件,一般也是可以在windows上使用的。下载解压即可。

    1. 配置环境变量

        ZK_HOME=文件解压地址

       Path添加  %ZK_HOME%in;

    2. 创建配置文件

        创建data文件夹和logs文件夹

        将conf下的zoo_sample.cfg文件,复制修改为zoo.cfg

       添加:

    dataDir=D:\workspace_canal\zookeeper-3.4.10\data
    dataLogDir=D:\workspace_canal\zookeeper-3.4.10\logs
    server.1=127.0.0.1:2888:3888

    注意要为\双反斜杠,在集群时,会在java程序中查找myid,因此如果是单则会使得文件夹之间的分隔符丢失。

    错误: Caused by: java.lang.IllegalArgumentException: D:workspace_canalzookeeper-3.4.10datamyid file is missing

    在data文件夹下创建myid文件。内容设置为 1,表示serverID为1.

    3. 启动 

       》zkServer.cmd

    错误:启动一闪而过

    ※ 如果启动一闪而退,说明有问题,需要在cmd文件中添加pause,查看错误内容。

    错误1:看到控制台输出call 时有这样一个调用:"C:Program FilesJavajdk1.8.0_172"injava  ***

    说明JAVA的拼接出了问题需要修正zkEnv.cmd中修改为正确的java地址去掉引号。

    错误2:再次运行发现依然报错,'C:Program' 不是内部或外部命令,也不是可运行的程序。

    说明 空格符将path给拆了导致。

    从以上两个错误可知,我们是想让“”包括住所有

    set JAVA="%JAVA_HOME%injava"

    再次启动,一切正常。

    》netstat -aon|findstr "2181"  端口已正常监听

    点击 zkCli.cmd发现也已经可以对联上2181端口了。

    集群布置:

    集群最少需要3个ip或者端口,在这里创建3个端口来测试。

    将zoo.cfg再添加两个server.2,3

    server.1=127.0.0.1:2888:3888
    server.2=127.0.0.1:2889:3889
    server.3=127.0.0.1:2890:3890

    建立data2,data3文件夹,并修改myid为对应的号。

    将zoo.cfg 复制两份同时

       1.  修改端口号

       2.  修改data

    更名为zoo2.cfg,zoo3.cfg。

    致此,zoo的集群就算是配置好了。

    启动:

    因 windows下 的zoo.cfg是固定被获取的,因此需要修改 zkEnv.cfg

    将其设为输入配置名称。

    set /p zooname=请输入zoo配置名称:zoo.cfg
    set ZOOCFG=%ZOOCFGDIR%\%zooname%

    启动zkServer.cmd:配置用zoo.cfg

    启动zkServer.cmd:配置用zoo2.cfg

    启动zkServer.cmd:配置用zoo3.cfg

    这样3个集群就全部起来了,在启动第一个时他会侦查第二个和第三个的IP地址,因还没启动会报错,不用管,那几个全部起来后就没错误了。

    ------------------------------------

    也可将zookeeper应用复制多份来做集群,做法一样。

    此时集群就算是完成了。

    启动错误:

    Unable to load database on disk 
    java.io.IOException: Unreasonable length = 1048583 

    解决办法:进入zkdata目录删除version-2下面的所有文件,还有binworkspace_canalzookeeper-3.4.10logs,还有logs文件的内容都删除。

  • 相关阅读:
    jquery设置控件位置的方法
    Redis学习(1)——下载与配置[转]
    Redis中redis.conf里面配置详解
    JAVA 上加密算法的实现用例,MessageDigest介绍
    JAVA的StringBuffer类[转]
    java synchronized详解[转]
    windows命令行下批量拷贝同一后缀的文件到另外一个目录
    批处理for命令详解(转)
    myeclipse10.X以上的破解方法
    jquery的get()方法
  • 原文地址:https://www.cnblogs.com/DennyZhao/p/9798922.html
Copyright © 2011-2022 走看看