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%\bin;

2. 创建配置文件

创建data文件夹和logs文件夹

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

添加:

dataDir=D:\\workspace_canal\\zookeeper-3.4.\\data
dataLogDir=D:\\workspace_canal\\zookeeper-3.4.\\logs
server.=127.0.0.1::

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

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

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

3. 启动

》zkServer.cmd

错误:启动一闪而过

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

错误1:看到控制台输出call 时有这样一个调用:"C:\Program Files\Java\jdk1.8.0_172\"\bin\java  ***

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

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

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

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

set JAVA="%JAVA_HOME%\bin\java"

再次启动,一切正常。

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

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

集群布置:

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

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

server.=127.0.0.1::
server.=127.0.0.1::
server.=127.0.0.1::

建立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下面的所有文件,还有bin\workspace_canalzookeeper-3.4.10logs,还有logs文件的内容都删除。

Zookpeer集群节点的更多相关文章

  1. 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:4.安装Oracle RAC FAQ-4.3.Oracle 集群节点间连通失败

    1.检查节点连通性的错误 [grid@linuxrac1 grid]$ ./runcluvfy.sh stage -post hwos -n linuxrac1,linuxrac2 -verbose ...

  2. Akka(12): 分布式运算:Cluster-Singleton-让运算在集群节点中自动转移

    在很多应用场景中都会出现在系统中需要某类Actor的唯一实例(only instance).这个实例在集群环境中可能在任何一个节点上,但保证它是唯一的.Akka的Cluster-Singleton提供 ...

  3. 【故障公告】10:30-10:45 左右 docker swarm 集群节点问题引发故障

    非常抱歉,今天 10:30-10:45 左右由于 docker swarm 集群节点出现问题,造成除博客之外的站点出现访问异常,由此给您带来很大的麻烦,请您谅解. 故障开始时出现有时访问正常有时访问出 ...

  4. Kubernetes从懵圈到熟练:读懂这一篇,集群节点不下线

    排查完全陌生的问题,完全不熟悉的系统组件,是售后工程师的一大工作乐趣,当然也是挑战.今天借这篇文章,跟大家分析一例这样的问题.排查过程中,需要理解一些自己完全陌生的组件,比如systemd和dbus. ...

  5. Rabbitmq关于集群节点功能的读书笔记

    消息和队列可以指定是否持久化,如果指定持久化则会保存到硬盘上 ,不然只在内存里 普通集群模式下持久化的队列不能重建了 内存节点和磁盘节点的区别就是将元数据放在了内存还是硬盘,仅此而已,当在集群中声明队 ...

  6. Quartz的集群模式和单机模式共存-让一个非集群的Quartz与集群节点并行着运行

    假如你让一个非集群的 Quartz 应用与集群节点并行着运行,设法使用 JobInitializationPlugin和 RAMJobStore Quartz支持可选节点执行jobquartz集群,会 ...

  7. 删除RAC集群节点

    删除GRID集群节点:参考oracle database 11g RAC手册(第二版) 目前GRID集群中节点信息:[grid@node1 ~]$ olsnodesnode1node2node3nod ...

  8. 如何诊断 11.2 集群节点驱逐问题 (文档 ID 1674872.1)

    适用于: Oracle Database - Enterprise Edition - 版本 11.2.0.1 到 11.2.0.2 [发行版 11.2]本文档所含信息适用于所有平台 用途 这篇文档提 ...

  9. 集群节点Elasticsearch升级

    集群节点Elasticsearch升级 操作流程 1.首先执行Elasticsearch-1.2.2集群的索引数据备份 2.关闭elasticsearch-1.2.2集群的recovery.compr ...

随机推荐

  1. 计时器setTimeout()

    setTimeout()计时器,在载入后延迟指定时间后,去执行一次表达式,仅执行一次. 语法: setTimeout(代码,延迟时间); 参数说明: 1. 要调用的函数或要执行的代码串. 2. 延时时 ...

  2. [转][CentOS]开机时

    来自:https://www.cnblogs.com/jcblog/p/6431252.html 在 CentOS 开机界面有两个菜单: 第一个选项正常启动,第二个选项急救模式启动(系统出项问题不能正 ...

  3. centos7.4安装过程

    开启CPU虚拟化 按到install CentOS7 按下tab 输入net.ifnames=0 biosdevname=0 先来一段文档v1 ============================ ...

  4. mysql 删除表 外键出错

    MySQL库中有俩表,table1和table2,相互关联,在删除表的时候出错: Cannot delete or update a parent row: a foreign key constra ...

  5. Keras 实现一个简单GAN

    Keras 实现一个简单GAN 代码中需提供: Loss Function  参见Keras 或者 Tensorflow 文档 model_param_matrix   反向调整的模型参数/参数矩阵 ...

  6. gulp 编译es6 探究

    1.gulp配置: var gulp = require('gulp') var fs = require("fs") var babelify = require('babeli ...

  7. 利用jQuery与.ashx完成简单的Ajax

    在ASP.NET同样可以与其它编程语言一样,利用前台的Ajax技术,只是需要注意的是,后台的处理程序不再是一个aspx页面中的Page_Load,而且ASP.NET独有的“一般处理程序”.ashx,下 ...

  8. APIO 2018选圆圈

    #include<cstdio> #include<algorithm> #include<cstring> #include<iostream> #i ...

  9. Java之ConcurrentHashMap

    由于工作中使用到了ConcurrentHashMap,然后查了一波资料,最后整理如下: 1. 描述: ConcurrentHashMap是在Java1.5作为HashTable的替代选择新引入的,是c ...

  10. MySQL免安装配置(亲测过,请放心借鉴)

    下载地址:https://dev.mysql.com/downloads/mysql 1.mysqld --initialize-insecure  初始化 2.mysqld install  安装服 ...