zookeeper的安装,搭建,zookeeper安装搭建


ZooKeeper的安装模式分为三种,分别为:单机模式(stand-alone)、集群模式(replicated mode)和集群伪分布模式。ZooKeeper 单机模式的安装相对比较简单,如果第一次接触ZooKeeper的话,建议安装ZooKeeper单机模式或者集群伪分布模式。

安装ZooKeeper的前提是必须安装JDK,版本6以上,具体安装见 http://blog.csdn.net/my_jobs/article/details/45070885

一、单机模式

此模式可以入门学习用,或者测试环境下使用。在工程环境中,不推荐使用此模式,因为单节点宕机,数据全无,不能充分利用zookeeper本身的优点。单机模式比较简单,如下:

1)到官网下载一个稳定版本:地址http://zookeeper.apache.org/releases.html 

2)解压到指定目录,比如简单起见,解压到/root下:tar -zxvf zookeeper-3.4.6.tar.gz

3)为了之后操作方面,可以把ZooKeeper的bin目录加载到PATH路径下,方便使用。跟加入JAVA_HOME同理

4)cd到刚才解压的目录下,到conf目录下,此时有三个文件,主要为zoo_sample.cfg,可以mv zoo_sample.cfg zoo.cfg。其中zoo.cfg为ZooKeeper的主配置文件。

# The number of milliseconds of each tick
    tickTime=2000
    # The number of ticks that the initial 
    # synchronization phase can take
    initLimit=10
    # The number of ticks that can pass between 
    # sending a request and getting an acknowledgement
    syncLimit=5
    # the directory where the snapshot is stored.
    dataDir=/tmp/zookeeper
    # the port at which the clients will connect
    clientPort=2181

  • tickTime:这个时间是作为ZooKeeper服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个 tickTime 时间就会发送一个心跳。
  • dataDir:顾名思义就是Zookeeper保存数据的目录,默认情况下,Zookeeper 将写数据的日志文件也保存在这个目录里。
  • clientPort:这个端口就是客户端连接 Zookeeper 服务器的端口,Zookeeper 会监听这个端口,接受客户端的访问请。

      现在就可以启动ZooKeeper了。如果加入PATH,运行zkServer.sh start即可,否则,到ZooKeeper的bin目录下运行此命令。可以运行zkCli.sh命令检测是否启动成功。

以上即为单机模式

二、集群模式

1)修改配置文件zoo.cfg

在单机的基础上,追加如下配置

server.1=192.168.0.11:2888:3888  
   server.2=192.168.0.12:2888:3888  
   server.3=192.168.0.13:2888:3888  

 server.A=B:C:D:其中 A 是一个数字,表示这个是第几号服务器;B 是这个服务器的 ip 地址;C 表示的是这个服务器与集群中的 Leader 服务器交换信息的端口;D 表示的是万一集群中的 Leader 服务器挂了,需要一个端口来重新进行选举,选出一个新的 Leader,而这个端口就是用来执行选举时服务器相互通信的端口。如果是伪集群的配置方式,由于 B 都是一样,所以不同的 Zookeeper 实例通信端口号不能一样,所以要给它们分配不同的端口号。

2)将其他机子做同样处理。拷贝安装文件,包括ZooKeeper的安装包和更改后的zoo.cfg配置文件。

3)设置myid,在自己配置的dataDir下,新建vim myid。里面为一个简单的数字,与第1)步中的A相对应。

4)启动ZooKeeper集群。在各个节点运行zkServer.sh start

5)检测是否安装成功。运行./bin/zkServer.sh status  或者 /opt/zookeeper-3.4.3/bin/zkCli.sh 或 echo stat|nc localhost 2181


相关内容

    暂无相关文章