一、虚拟机环境

见我的另一篇博客http://www.cnblogs.com/xckk/p/6000881.html

zookeeper是用JAVA编写,因此需要安装JDK环境,centos下安装JDK可参考:

http://www.centoscn.com/image-text/install/2014/0827/3585.html

二、zookeeper安装

计划安装三台zookeeper集群,centos1、centos2、centos3,以centos1为例

1、下载zookeeper,官网下载:http://apache.fayea.com/zookeeper/,我下载的是3.4.8版本

2、下载后,文件拷贝到/root/目录下,可以用ftp,也可以用scp

scp zookeeper-3.4.8.tar.gz root@centos1:/root/

3、解压:tar -zxvf zookeeper-3.4.8.tar.gz

4、建立软链,目的是应用程序都放在/home目录下

ln –sf /root/zookeeper-3.4.8 /home/zookeeper-3.4

完成后,可以看到如下效果。

三、zookeeper集群配置(三台机器都要配置)

1、conf/zoo.cfg文件

修改 dataDir=/opt/zookeeper

端口号clientPort=2181

最后面增加

server.1=centos1:2888:3888

server.2=centos2:2888:3888

server.3=centos3:2888:3888

2、/opt/zookeeper目录下创建myid文件,目录不存在就手动创建目录。

centos1的myid文件内容设置为1

centos1的myid文件内容设置为2

centos1的myid文件内容设置为3

(分别对应zoo.cfg配置的的server.1、server.2、server.3中的1,2,3)

下图是centos1的myid文件

四、启动

1、三台机器分别启动

bin/zkServer.sh start

2、三台机器都启动完后

bin/zkServer.sh status 查看启动是否成功,三台机器会选择一台做为leader,另两台为follower

客户端命令

./zkCli.sh -server centos1:2181   (因为是集群,机器名随便选一台即可)

五、问题解决

1、Error contracting service. It is probably not running

解决方法:

检查防火墙是否关闭,service iptables stop;

检查三台机器是否均已启动,可通过jps查看,有QuorumPeerMain进程代表当前机器zookeeper已经启动(但启动成功与否无法判断)

查看日志文件,根据日志文件判断。默认日志文件路径 bin/zookeeper.out

zookeeper-3.4.8 集群搭建的更多相关文章

  1. zookeeper相关知识与集群搭建

    Zookeeper Zookeeper相关概念 Zookeeper概述 Zookeeper是一个分布式协调服务的开源框架,主要用来解决分布式集群中应用系统的一致性问题. Zookeeper本质上是一个 ...

  2. ZooKeeper的伪分布式集群搭建

    ZooKeeper集群的一些基本概念 zookeeper集群搭建: zk集群,主从节点,心跳机制(选举模式) 配置数据文件 myid 1/2/3 对应 server.1/2/3 通过 zkCli.sh ...

  3. zookeeper+activemq高可用集群搭建

    一.准备工作: 准备三台机器:192.168.35.111192.168.35.112192.168.35.113 二.搭建zookeeper 三台机器上均要搭建zookeeper服务// 下载zoo ...

  4. Zookeeper,Hbase 伪分布,集群搭建

    工作中一般使用的都是zookeeper和Hbase的分布式集群. more /etc/profile cd /usr/local zookeeper-3.4.5.tar.gz zookeeper在安装 ...

  5. 【ZooKeeper】单机伪集群搭建(适用于mac)

    1.配置 .zookeeper下载地址:http://apache.mirrors.lucidnetworks.net/zookeeper/ 可以选择需要的版本,我下载的是zookeeper-3.4. ...

  6. zookeeper集群搭建及Leader选举算法源码解析

    第一章.zookeeper概述 一.zookeeper 简介 zookeeper 是一个开源的分布式应用程序协调服务器,是 Hadoop 的重要组件. zooKeeper 是一个分布式的,开放源码的分 ...

  7. 分布式实时日志系统(一)环境搭建之 Jstorm 集群搭建过程/Jstorm集群一键安装部署

    最近公司业务数据量越来越大,以前的基于消息队列的日志系统越来越难以满足目前的业务量,表现为消息积压,日志延迟,日志存储日期过短,所以,我们开始着手要重新设计这块,业界已经有了比较成熟的流程,即基于流式 ...

  8. 分布式架构中一致性解决方案——Zookeeper集群搭建

    当我们的项目在不知不觉中做大了之后,各种问题就出来了,真jb头疼,比如性能,业务系统的并行计算的一致性协调问题,比如分布式架构的事务问题, 我们需要多台机器共同commit事务,经典的案例当然是银行转 ...

  9. 28.zookeeper单机(Standalones模式)和集群搭建笔记

    zookeeper单机(Standalones模式)和集群搭建: 前奏: (1).zookeeper也可以在windows下使用,和linux一样可以单机也可以集群,具体就是解压zookeeper-3 ...

  10. ZooKeeper在centos6.4的集群搭建

    首先给一个小tips,在搭建zookeeper之前,需要配置好java环境,请参看我的另一篇文章<Jdk1.8在CentOS7中的安装与配置>,还需要免密码登录,请参看我的另一篇文章< ...

随机推荐

  1. java的装箱与拆箱

    在 JDK1.5 引入自动装箱和拆箱的机制后,包装类和基本类型之间的转换就更加轻松便利了.那什么是装箱和拆箱呢?我们分别来看下装箱:把基本类型转换成包装类,使其具有对象的性质,又可分为手动装箱和自动装 ...

  2. android 进度对话框的使用

    import android.app.Activity; import android.app.ProgressDialog; import android.os.Bundle; public cla ...

  3. 环信_EaseUI 使用指南

    EaseUI 使用指南 简介 EaseUI 封装了 IM 功能常用的控件(如聊天会话.会话列表.联系人列表).旨在帮助开发者快速集成环信 SDK. 源码地址: EaseUI:https://githu ...

  4. C语言关键字 - 铁布衫:const 转载

    const 描述:相传C世界中出现了一件极品装备const,它能的出现,让天下所有的刺客,黑客都失业了,在它的保护下,所有的变量都可以完好无损. 作用:const是constant的简写,表示海枯石栏 ...

  5. CDC 虚拟com口

    现在很多电脑已经不带232了,特别是手提电脑.这使很多使用手提在外调试人员非常不方便.或许你可以买一条市面上usb转232转换线,但这些线抗干扰不是太好,在一些干扰大的地方会发生连接中断的问题,所以往 ...

  6. 【大话QT之十】实现FTP断点续传(需要设置ftp服务器为“PASV”被动接收方式)

    应用需求: 网盘开发工作逐步进入各部分的整合阶段,当用户在客户端修改或新增加一个文件时,该文件要同步上传到服务器端对应的用户目录下,因此针对数据传输(即:上传.下载)这一块现在既定了三种传输方式,即: ...

  7. 中国版dropbox“坚果云”和它背后的团队故事(大的优势就在于他为用户提供了设定多个文件夹的权利)

    (速途网专栏 作者:娄昊川)坚果云是一款中文存储服务,前身是“坚果铺子”,提供免费的云空间,与dropbox类似,用户可以直接把档案同步到坚果云,供自己和伙伴用任何设备访问.自上线以来,几乎所有用户都 ...

  8. datetime 和 smalldatetime

    用于表示某天的日期和时间的数据类型. datetime 和 smalldatetime 表示某天的日期和时间. 数据类型 范围 精确度 datetime 1753 年 1 月 1 日到 9999 年 ...

  9. Android:Fragment+ViewPager实现Tab滑动

    public class FragAdapter extends FragmentPagerAdapter { private List<Fragment> fragments ; pub ...

  10. WinForm实现简单的拖拽功能(C#)

    用到了ListBox和TreeView两个控件,ListBox作为数据源,通过拖拽其中的数据放置到TreeView上,自动添加一个树节点 ListBox控件的MouseDown用于获取要拖拽的值并调用 ...