Zookeeper安装使用

来源:互联网 发布:pc蛋蛋幸运28算法技巧 编辑:程序博客网 时间:2024/05/17 23:23

zookeeper要求Java运行环境,并且需要jdk版本1.6以上,同学们自行安装配置。

zookeeper的安装分为三种模式:单机模式、集群模式和伪集群模式。

单机模式

从Apache官网下载一个Zookeeper稳定版本,这里下载3.4.10。

wget http://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.10/zookeeper-3.4.10.tar.gz

    
解压zookeeper-3.4.10.tar.gz文件到安装目录下:

tar -xzvf zookeeper-3.4.10.tar.gz -C /usr/local/

    
配置环境变量

export ZOOKEEPER_HOME=/usr/local/zookeeper-3.4.10export PATH=$ZOOKEEPER_HOME/bin:$ZOOKEEPER_HOME/conf:$PATH

安装此服务需要用户自己创建一个配置文件。
默认配置文件路径为 Zookeeper-3.4.10/conf/目录下,文件名为zoo.cfg,可以参考zoo_sample.cfg文件。
在conf目录下创建zoo.cfg文件:

tickTime=2000dataDir=/usr/local/zookeeper-3.4.10/datadataLogDir=/usr/local/zookeeper-3.4.10/datalogclientPort=2181

在这个文件中,各个语句的含义:

tickTime : 服务器与客户端之间交互的基本时间单元(ms)
dataDir : 保存zookeeper数据路径
dataLogDir : 保存zookeeper日志路径,当此配置不存在时默认路径与dataDir一致
clientPort : 客户端访问zookeeper时经过服务器端时的端口号

使用单机模式时需要注意,在这种配置方式下,如果zookeeper服务器出现故障,zookeeper服务将会停止。

集群模式

准备三台服务器,分别按照单机模式安装好zookeeper

主机名称到IP地址映射配置
修改/etc/hosts

192.168.1.101  zoo1192.168.1.102  zoo2192.168.1.103  zoo3

在conf目录下创建zoo.cfg文件(三台服务器配置相同):

tickTime=2000   initLimit=10    syncLimit=5 dataDir=/usr/local/zookeeper-3.4.10/datadataLogDir=/usr/local/zookeeper-3.4.10/datalogclientPort=2181 server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888maxClientCnxns=60

在这个配置文件中,新出现的语句的含义:

initLimit : 此配置表示允许follower连接并同步到leader的初始化时间,它以tickTime的倍数来表示。当超过设置倍数的tickTime时间,则连接失败。

syncLimit : Leader服务器与follower服务器之间信息同步允许的最大时间间隔,如果超过次间隔,默认follower服务器与leader服务器之间断开链接。

maxClientCnxns : 限制连接到zookeeper服务器客户端的数量

server.id=host:port:port : 表示了不同的zookeeper服务器的自身标识,作为集群的一部分,每一台服务器应该知道其他服务器的信息。用户可以从“server.id=host:port:port” 中读取到相关信息。

其中server.id的id是对应在服务器的data(dataDir参数所指定的目录)下创建一个文件名为myid的文件,内容是自身的id值。比如,服务器“1”应该在myid文件中写入“1”。这个id必须在集群环境中服务器标识中是唯一的,且大小在1~255之间。

这一配置中,zoo1为hosts映射中服务器IP,第一个端口号(port)是从follower连接到leader机器的端口,第二个端口是用来进行leader选举时所用的端口。所以,在集群配置过程中有三个非常重要的端口:clientPort:2181、port:2888、port:3888。

启动zookeeper

sh ./bin/zkServer.sh start

使用客户端链接zookeeper

bin/zkCli.sh -server 192.168.1.101:2181,192.168.1.102:2181,192.168.1.103:2181
原创粉丝点击