一、前期环境

  • 安装概览
IP Host Name     Software    
192.168.23.128     ae01 JDK 1.7
192.168.23.129 ae02 JDK 1.7
192.168.23.130 ae03 JDK 1.7
    若使用虚拟机安装,可以安装samba, smbfs方便对于文件的控制。
  • 系统环境: ubuntu-12.04.2-server-amd64
  • 安装目录: /usr/local/ae
  • JDK 安装目录: export JAVA_HOME=/usr/local/ae/jdk1.7.0_51
  • Zookeeper版本: zookeeper-3.4.5

二、Zookeeper 安装

  • 修改host文件,添加3台服务器的hostname, 以ae01 为例。

    user@ae01:/usr/local/ae$ sudo vim /etc/hosts
    127.0.0.1         localhost
    192.168.23.128 ae01
    192.168.23.129 ae02
    192.168.23.129 ae03
  • 解压zookeeper-3.4.5.tar.gz 到/usr/local/ae 目录
    user@ae01:/usr/local/ae$ sudo tar -zxvf zookeeper-3.4.5.tar.gz
  • 复制$ZOOKEEPER_HOME/conf/zoo_sample.cfg 为zoo.cfg 并修改
    user@ae01:/usr/local/ae/zookeeper-3.4./conf$ sudo vm zoo_sample.cfg zoo.cfg
  • 修改zoo.cfg
    # The number of milliseconds of each tick
    tickTime=2000
    # The number of ticks that the initial
    # synchronization phase can take
    initLimit=5
    # The number of ticks that can pass between
    # sending a request and getting an acknowledgement
    syncLimit=2
    # the directory where the snapshot is stored.
    # do not use /tmp for storage, /tmp here is just
    # example sakes.
    dataDir=/usr/local/ae/storage/zookeeper
    # 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
    server.1=ae01:2888:3888
    server.2=ae02:2888:3888
    server.3=ae03:2888:3888
    dataDir 为Zookeeper保存数据的文件夹
    server.1=ae01:2888:3888 '2888'为连接所使用的端口号,'3888'为选举leader使用的端口号
  • 复制zookeeper-3.4.5 到ae02,ae03
    user@ae01:/usr/local/ae$ scp -r zookeeper-3.3.5/ user@ae01:/usr/local/ae
    user@ae01:/usr/local/ae$ scp -r zookeeper-3.3.5/ user@ae02:/usr/local/ae
  • 设置myid
    user@ae01:/usr/local/ae$ echo "" > /usr/local/ae/storage/zookeeper/myid
    user@ae02:/usr/local/ae$ echo "" > /usr/local/ae/storage/zookeeper/myid
    user@ae03:/usr/local/ae$ echo "" > /usr/local/ae/storage/zookeeper/myid

    myid的值对应着上文中 server.x 的参数

三、启动Zookeeper 集群

  • 启动Zookeeper

    user@ae01:/usr/local/ae/zookeeper-3.4.5/bin$ sudo zkServer.sh start
    user@ae02:/usr/local/ae/zookeeper-3.4.5/bin$ sudo zkServer.sh start
    user@ae03:/usr/local/ae/zookeeper-3.4.5/bin$ sudo zkServer.sh start

    由于ZooKeeper集群启动的时候,每个结点都试图去连接集群中的其它结点,先启动的肯定连不上后面还没启动的,日志前面部分出现连接异常(java.net.ConnectException: Connection refused )是可以忽略的。集群在选出一个Leader后,最后稳定了。

  • 验证启动
    user@ae01:/usr/local/ae/zookeeper-3.4.5/bin$ zkServer.sh status
    JMX enabled by default
    Using config: /usr/local/ae/zookeeper-3.4.5/bin/../conf/zoo.cfg
    Mode: leader
    user@ae02:/usr/local/ae/zookeeper-3.4.5/bin$ zkServer.sh status
    JMX enabled by default
    Using config: /usr/local/ae/zookeeper-3.4.5/bin/../conf/zoo.cfg
    Mode: follower
    user@ae03:/usr/local/ae/zookeeper-3.4.5/bin$ zkServer.sh status
    JMX enabled by default
    Using config: /usr/local/ae/zookeeper-3.4.5/bin/../conf/zoo.cfg
    Mode: follower

四、文档参考

  • http://zookeeper.apache.org/doc/trunk/zookeeperOver.html

Zookeeper 分布式环境搭建的更多相关文章

  1. 攻城狮在路上(陆)-- hadoop分布式环境搭建(HA模式)

    一.环境说明: 操作系统:Centos6.5 Linux node1 2.6.32-431.el6.x86_64 #1 SMP Fri Nov 22 03:15:09 UTC 2013 x86_64 ...

  2. Hadoop-04-HBase全然分布式环境搭建

    Hbase分布式具体安装步骤 Hadoop全然分布式环境已经搭建完毕(參见01_Hadoop全然分布式环境搭建). 注意:Hbase和Hadoop的版本号必须相应! 不然会出现各种问题! 这里选用的是 ...

  3. hadoop学习(三)----hadoop2.x完全分布式环境搭建

    今天我们来完成hadoop2.x的完全分布式环境搭建,话说学习本来是一件很快乐的事情,可是一到了搭环境就怎么都让人快乐不起来啊,搭环境的时间比学习的时间还多.都是泪.话不多说,走起. 1 准备工作 开 ...

  4. 【Hadoop离线基础总结】完全分布式环境搭建

    完全分布式环境搭建 服务规划 适用于工作当中正式环境搭建 安装步骤 第一步:安装包解压 停止之前的Hadoop集群的所有服务,并删除所有机器的Hadoop安装包,然后重新解压Hadoop压缩包 三台机 ...

  5. HDFS 高可用分布式环境搭建

    HDFS 高可用分布式环境搭建 作者:Grey 原文地址: 博客园:HDFS 高可用分布式环境搭建 CSDN:HDFS 高可用分布式环境搭建 首先,一定要先完成分布式环境搭建 并验证成功 然后在 no ...

  6. Hadoop学习笔记(3)——分布式环境搭建

    Hadoop学习笔记(3) ——分布式环境搭建 前面,我们已经在单机上把Hadoop运行起来了,但我们知道Hadoop支持分布式的,而它的优点就是在分布上突出的,所以我们得搭个环境模拟一下. 在这里, ...

  7. Hadoop-2.4.1完全分布式环境搭建

      Hadoop-2.4.1完全分布式环境搭建   Hadoop-2.4.1完全分布式环境搭建 一.配置步骤如下: 主机环境搭建,这里是使用了5台虚拟机,在ubuntu 13系统上进行搭建hadoop ...

  8. Hadoop2.7.3+Spark2.1.0 完全分布式环境 搭建全过程

    一.修改hosts文件 在主节点,就是第一台主机的命令行下; vim /etc/hosts 我的是三台云主机: 在原文件的基础上加上; ip1 master worker0 namenode ip2 ...

  9. [ZooKeeper] 2 环境搭建

    上一篇中我们介绍了 ZooKeeper 的一些基本概念,这篇我们讲一下 ZooKeeper 的环境搭建. ZooKeeper 安装模式 单机模式:ZooKeeper 运行在一台服务器上,适合测试环境: ...

随机推荐

  1. Linq查询

    //Linq查询 List<A1> a1 = new List<A1>(); a1.Add(, Name = , Gender = true }); a1.Add(, Name ...

  2. 数据结构之AVL树

    AVL树是高度平衡的而二叉树.它的特点是:AVL树中任何节点的两个子树的高度最大差别为1. 旋转 如果在AVL树中进行插入或删除节点后,可能导致AVL树失去平衡.这种失去平衡的可以概括为4种姿态:LL ...

  3. 清空mysql的历史记录

    # vi ~/.mysql_history show tables; show databases; 清空里面的内容,并不用退出当前shell,就可以清除历史命令!!

  4. jQuery 操作复选框(checkbox) attr checked不起作用

    参考资料 http://www.paobuke.com/develop/javascript/pbk849.html   这天用到jQuery功能,想实现一个简单的复选框动态全选或全不选,结果测试发现 ...

  5. svn删除所有.svn文件

    svn 删除所有的 .svn文件 find . -name .svn -type d -exec rm -fr {} \;

  6. javascript 面向对象编程小记

    虽然平常用jquery用的很熟,但是基本都是面向过程的写法.一个事件一个function,很少有面向对象的写法.今天得写一个日期控件,不得不用上面向对象编程. 刚开始我的想法是: var datepi ...

  7. C# 使用Conditional特性而不是#if条件编译

    概述 #if/#endif 语句常用来基于同一份源码生成不同的编译结果,其中最常见的就是debug版和release版.但是这些工具在实际应用中并不是非常友好,因为它们容易被滥用,其代码页进而难以理解 ...

  8. Mysql常用命令详解

    Mysql安装目录 数据库目录 /var/lib/mysql/ 配置文件 /usr/share/mysql(mysql.server命令及配置文件) 相关命令 /usr/bin(mysqladmin ...

  9. 使用PHP获取时间今天 明天 昨天 时间戳的详解

    使用php获取时间今天明天昨天时间戳 2013-06-20 11:12 <?php echo "今天:".date("Y-m-d")."< ...

  10. WPF Navigation

    在开始学习WPF时,一开始对WPF的Window, Page, UserControl感到很迷惑.不知道什么时候该使用哪一个.下面简单介绍一下这三者的区别. Window:故名思意,桌面程序的窗体.在 ...