zoukankan      html  css  js  c++  java
  • ZooKeeper伪分布式集群部署

     本文为Zookeeper伪分布式环境的部署,机器环境Wie

    •   1、Centos 6.8
    •   2、JDK为1.8.0_121
    •        3、zookeeper版本为3.4.9

    一、zookeeper伪分布式环境准备

    1.   官网下载zookeeper到/opt/zookeeper/zookeeper-3.4.9.tar.gz
    2.   执行解压命令
      1 tar zxvf zookeeper-3.4.9.tar.gz
    3. 修改环境变量(非必须)

          为了方便命令输入,这里将zookeeper配置到环境变量中

        1 vim /etc/profile

          在文件的末尾增加以下内容,保存退出

      1 export ZOOKEEPER=/opt/zookeeper/zookeeper-3.4.9
      2 export PATH=$PATH:$ZOOKEEPER/bin

          刷新环境变量

      1 source /etc/profile


    二、部署伪分布式集群环境

      说明,本次部署采用的是三个节点进行部署

      在部署之前,先对zookeeper的配置文件进行介绍,zookeeper配置文件位于安装目录下的conf/zoo_sample.cfg

      打开该文件如下

        

     1 Zookeeper伪分布式
     2 
     3 
     4 
     5 # The number of milliseconds of each tick
     6 # tickTime为每个心跳的时间间隔,单位为毫秒
     7 tickTime=2000


    8 # The number of ticks that the initial 9 # synchronization phase can take 10 #initLimit表示初始化连接时,最多能够忍受多少个心跳的时间间隔。举个例子,当超过10个心跳间隔时,还没有收到返回信息,表示这个客户端连接失败,10个时间间隔就是10*2000=20000毫秒即20秒 11 initLimit=10
    12 # The number of ticks that can pass between 13 # sending a request and getting an acknowledgement 14 #syncLimit表示follower和Leader通信时,请求和应答的时间长度,最长不能超过多少个心跳间隔,这里是5*2000=10000即10秒 15 syncLimit=5
    16 # the directory where the snapshot is stored. 17 # do not use /tmp for storage, /tmp here is just 18 # example sakes. 19 #dataDir快照的存放目录,这里配置为tmp仅仅是示例,不要使用/tmp目录 20 dataDir=/tmp/zookeeper
    21 # the port at which the clients will connect 22 #clientPort表示开放为客户端连接进入的端口 23 clientPort=2181

    24 # the maximum number of client connections. 25 # increase this if you need to handle more clients 26 #maxClientCnxns表示客户端可连接进入的最大连接数 27 #maxClientCnxns=60 28 29 # 30 # Be sure to read the maintenance section of the 31 # administrator guide before turning on autopurge. 32 # 33 # http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance 34 # 35 # The number of snapshots to retain in dataDir 36 #在zookeeper3.4.0以后提供了自动清理快照的功能,该配置表示保留快照的文件数目,默认是3个 37 #autopurge.snapRetainCount=3
    38 # Purge task interval in hours 39 # Set to "0" to disable auto purge feature 40 #自动清理的时间间隔,即清理的频率。单位为小时,设置为0表示不自动清理, 41 #autopurge.purgeInterval=1 42 43 44 45 46 ############################################# 47 #zookeeper其它配置介绍 48 1、dataLogDir:在默认的的配置文件示例中没有提供dataLogDir,如果没有提供的话,则使用的dataDir。zookeeper的持久化都存在dataDir和dataLogDir这两个目录下。由于dataLogDir里面存放的是顺序日志(WAL:Write-Ahead Logging预写日志系统,数据库中一种高效的日志算法,对于非内存数据库而言,磁盘I/O操作是数据库效率的一大瓶颈。在相同的数据量下,采用WAL日志的数据库系统在事务提交时,磁盘写操作只有传统的回滚日志的一半左右,大大提高了数据库磁盘I/O操作的效率,从而提高了数据库的性能),而dataDir里面存放的是内存数据结构的snapshot,便于恢复。所以一般的情况下是建议个这两个分到不同磁盘上,以便从发利用磁盘书序写的特性,以达到性能的最大化。 49 2、集群中的服务列表配置 50 server.A=B:C:D 51 A:表示集群中服务器的序号,需要唯一 52 B:表示服务器的IP 53 C:和集群中Leader交换数据的端口 54 D:进行Leader选举的端口 55 举例子 56 server.1=192.168.135.11:8881:8891 57 server.2=192.168.135.12:8881:8891 58 server.3=192.168.135.13:8881:8891 59 在这个集群中有三个服务器 60 序号分别为1、2361 IP分别为192.168.135.11,192.168.135.12,192.168.135.1362 和Leader通讯的端口均为8881,当然这里的通讯端口也可以不一样 63 进行Leader选举的端口均为8891,这里的选举端口也可以不一样 64

       

  • 相关阅读:
    【UVA
    Struts2框架学习笔记1
    如何面对这个残酷的世界?——Java模拟
    漫漫学习路——我的大一
    leetcode-36-有效的数独
    leetcode-887-三维形体投影面积
    leetcode-34-在排序数组中查找元素的第一个和最后一个位置
    leetcode-33-搜索旋转排序数组
    leetcode-31-下一个排列
    leetcode-17-电话号码的字母组合
  • 原文地址:https://www.cnblogs.com/zengguoyu/p/7675208.html
Copyright © 2011-2022 走看看