ZooKeeper伪集群环境搭建
1.从官网下载程序包。
2.解压。
[dev@localhost software]$ tar xzvf zookeeper-3.4.6.tar.gz
3.进入zookeeper文件夹后创建data文件夹。
[dev@localhost software]$ cd zookeeper-3.4.6
[dev@localhost software]$ mkdir data
[dev@localhost software]$ cd data
[dev@localhost software]$ touch myid
myid这个文件必须创建。不然启动的时候会跑出以下的异常。
[dev@localhost bin]$ ./zkServer.sh start-foreground
JMX enabled by default
Using config: /home/dev/zookeeper/zookeeper1/bin/../conf/zoo.cfg
2015-03-12 16:06:38,155 [myid:] - INFO [main:QuorumPeerConfig@101] - Reading configuration from: /home/dev/zookeeper/zookeeper1/bin/../conf/zoo.cfg
2015-03-12 16:06:38,159 [myid:] - INFO [main:QuorumPeerConfig@334] - Defaulting to majority quorums
2015-03-12 16:06:38,161 [myid:] - ERROR [main:QuorumPeerMain@85] - Invalid config, exiting abnormally
org.apache.zookeeper.server.quorum.QuorumPeerConfig$ConfigException: Error processing /home/dev/zookeeper/zookeeper1/bin/../conf/zoo.cfg
at org.apache.zookeeper.server.quorum.QuorumPeerConfig.parse(QuorumPeerConfig.java:121)
at org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:101)
at org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:78)
Caused by: java.lang.IllegalArgumentException: /home/dev/zookeeper/zookeeper1/data/myid file is missing
at org.apache.zookeeper.server.quorum.QuorumPeerConfig.parseProperties(QuorumPeerConfig.java:344)
at org.apache.zookeeper.server.quorum.QuorumPeerConfig.parse(QuorumPeerConfig.java:117)
... 2 more
Invalid config, exiting abnormally
myid文件中必需要有内容,其值相应zoo.cfg中server的id。有点绕,我也是试了好多次才配好的。也就说,假如集群的配置例如以下,那问题来了,怎么区分当前启动的zookeeper是哪一个呢?就是通过myid文件来区分的。第1个zookeeper服务的myid文件的内容就是1。其他就以此类推了。假设myid配错了,后果非常严重——zookeeper服务起不来。O(∩_∩)O哈哈~,而且报以下的异常。
server.1=localhost:2888:3888
server.2=localhost:2889:3889
server.3=localhost:2890:3890
[dev@localhost bin]$ ./zkServer.sh start-foreground
JMX enabled by default
Using config: /home/dev/zookeeper/zookeeper2/bin/../conf/zoo.cfg
2015-03-12 16:09:35,422 [myid:] - INFO [main:QuorumPeerConfig@101] - Reading configuration from: /home/dev/zookeeper/zookeeper2/bin/../conf/zoo.cfg
2015-03-12 16:09:35,426 [myid:] - INFO [main:QuorumPeerConfig@334] - Defaulting to majority quorums
2015-03-12 16:09:35,434 [myid:0] - INFO [main:DatadirCleanupManager@78] - autopurge.snapRetainCount set to 3
2015-03-12 16:09:35,434 [myid:0] - INFO [main:DatadirCleanupManager@79] - autopurge.purgeInterval set to 0
2015-03-12 16:09:35,435 [myid:0] - INFO [main:DatadirCleanupManager@101] - Purge task is not scheduled.
2015-03-12 16:09:35,455 [myid:0] - INFO [main:QuorumPeerMain@127] - Starting quorum peer
2015-03-12 16:09:35,472 [myid:0] - INFO [main:NIOServerCnxnFactory@94] - binding to port 0.0.0.0/0.0.0.0:2182
2015-03-12 16:09:35,500 [myid:0] - INFO [main:QuorumPeer@913] - tickTime set to 2000
2015-03-12 16:09:35,501 [myid:0] - INFO [main:QuorumPeer@933] - minSessionTimeout set to -1
2015-03-12 16:09:35,501 [myid:0] - INFO [main:QuorumPeer@944] - maxSessionTimeout set to -1
2015-03-12 16:09:35,502 [myid:0] - INFO [main:QuorumPeer@959] - initLimit set to 10
2015-03-12 16:09:35,519 [myid:0] - ERROR [main:QuorumPeer@171] - Setting LearnerType to PARTICIPANT but 0 not in QuorumPeers.
2015-03-12 16:09:35,530 [myid:0] - INFO [main:QuorumPeer@429] - currentEpoch not found! Creating with a reasonable default of 0. This should only happen when you are upgrading your installation
2015-03-12 16:09:35,591 [myid:0] - INFO [main:QuorumPeer@444] - acceptedEpoch not found! Creating with a reasonable default of 0. This should only happen when you are upgrading your installation
2015-03-12 16:09:35,598 [myid:0] - ERROR [main:QuorumPeerMain@89] - Unexpected exception, exiting abnormally
java.lang.RuntimeException: My id 0 not in the peer list
at org.apache.zookeeper.server.quorum.QuorumPeer.startLeaderElection(QuorumPeer.java:479)
at org.apache.zookeeper.server.quorum.QuorumPeer.start(QuorumPeer.java:411)
at org.apache.zookeeper.server.quorum.QuorumPeerMain.runFromConfig(QuorumPeerMain.java:151)
at org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:111)
at org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:78)
4.改动zoo.cfg文件。
在zookeeper/conf/zoo.cfg改动dataDir的文件夹,就是我们在第2步中创建的data文件夹。
在文件最后加入zookeeper集群节点地址。
server.1=localhost:2888:3888
server.2=localhost:2889:3889
server.3=localhost:2890:3890
5.其他节点配置。
好了,上面已经配置好了1个zookeeper服务。然后直接copy刚才配好的zookeeper文件夹两份。改动data/myid文件中的id,zoo.cfg的dataDir。clientPort。
6.然后分别启动zookeeper。
ZooKeeper伪集群环境搭建好了,不然让它静静地在那里跑着,继续捣鼓它。
。。。。
。
ZooKeeper伪集群环境搭建的更多相关文章
- zookeeper伪集群的搭建
由于公司服务器数量的限制,我们往往没有那么多的服务器用来搭建zookeeper的集群,所以产生了伪集群的搭建,也就是将多个zookeeper搭建在同一台机器上. 准备工作: 1,一台服务器,我们这里用 ...
- 【Zookeeper】集群环境搭建
一.概述 1.1 Zookeeper的角色 1.2 Zookeeper的读写机制 1.3 Zookeeper的保证 1.4 Zookeeper节点数据操作流程 二.Zookeeper 集群环境搭建 2 ...
- Hadoop+HBase+ZooKeeper分布式集群环境搭建
一.环境说明 集群环境至少需要3个节点(也就是3台服务器设备):1个Master,2个Slave,节点之间局域网连接,可以相互ping通,下面举例说明,配置节点IP分配如下: Hostname IP ...
- zookeeper 单机. 集群环境搭建
zookeeper分布式系统中面临的很多问题, 如分布式锁,统一的命名服务,配置中心,集群的管理Leader的选举等 环境准备 分布式系统中各个节点之间通信,Zookeeper保证了这个过程中 数据的 ...
- ZooKeeper伪集群的搭建(Windows)
首先下载 zookeeper 地址:https://www.apache.org/dyn/closer.cgi/zookeeper/ 1.下载完成解压后修改文件夹名字为zookeeper1,然后删除c ...
- Hadoop 学习之路(四)—— Hadoop单机伪集群环境搭建
一.前置条件 Hadoop的运行依赖JDK,需要预先安装,安装步骤见: Linux下JDK的安装 二.配置免密登录 Hadoop组件之间需要基于SSH进行通讯. 2.1 配置映射 配置ip地址和主机名 ...
- zookeeper集群环境搭建详细图文教程
zookeeper集群环境搭建详细图文教程 zhoubang @ 2018-01-02 [文档大纲] 友情介绍 软件环境 注意点 环境安装 1. 新建用于存储安装包以及软件安装的目录 2. 下载安装z ...
- 【Hadoop离线基础总结】zookeeper的介绍以及集群环境搭建、网络编程和RPC的简单了解
ZooKeeper的介绍以及集群环境搭建.网络编程和RPC的简单了解 ZooKeeper介绍 概述 ZooKeeper是一个分布式协调服务的开源框架,主要用来解决分布式集群中应用系统的一致性问题.例如 ...
- win10环境下搭建zookeeper伪集群
一.下载zookeeper https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/ 这里笔者下载的是zookeeper-3.3.6 二.配置zoo ...
随机推荐
- codecombat之KithGard地牢19-37关代码分享
codecombat中国游戏网址:http://www.codecombat.cn/ 全部代码为javascript代码分享 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 19 ...
- DOMContentLoaded事件<zz>
今天查看百度空间源代码,发现多了个util.js文件,打开看看.里面里面定义了addDOMLoadEvent.这是干什么用的? 仔细查看代码,发现在Mozilla添加了DOMContentLoaded ...
- 初学ToggleButton 点击button,更换button背景图片;再次点击,恢复之前背景图
上方的图标,R.drawable.register_checked 是选中图片 下方的图标, R.drawable.register_unchecked 是未选中图片 默认是上方的选中效果.点击 ...
- 2014.08.04,读书,读书笔记-《Matlab概率与数理统计分析》-第1章 MATLAB的数据基础
第1章 MATLAB数据基础 虽然一直间或使用MATLAB,但从来没有系统的学习过,现在开始也不晚.先对几个重点或者平时忽略的要点做下笔记. %后的所有文字为注释,多条命令可以放在一行,但要用逗号或分 ...
- tomat遇到的一些错误
资料链接:启动tomcat一闪而过的问题
- [SCOI 2005] 栅栏
[题目链接] https://www.lydsy.com/JudgeOnline/problem.php?id=1082 [算法] 首先二分“最多得到的符合条件的木板数”,检验时可以使用DFS,但是, ...
- SPOJ COT2 Count on a tree II (树上莫队)
题目链接:http://www.spoj.com/problems/COT2/ 参考博客:http://www.cnblogs.com/xcw0754/p/4763804.html上面这个人推导部分写 ...
- float类型和double类型的二进制存储
在32位环境下, float占用32位,double占用64位, 目前C/C++编译器标准都遵照IEEE制定的浮点数表示法来进行float,double运算.这种结构是一种科学计数法,用符号.指数和 ...
- 判断是否是Ajax请求
Request.IsAjaxRequest()判断是否是ajax请求原理:Http协议上有个X-Requested-With:XML HttpRequest属性判断的 mvc后台通过Request可以 ...
- Android 给WebView设置Cookie
最近项目中用到WebView访问新浪支付页面,有个要求是必须是登录状态,否则会报Token过期,然后我简单的将我从cookie中取得的ticket,即一串数字可以代表用户登录的唯一标识作为参数拼接到u ...