文档详情

zookeeper部署过程.docx

发布:2017-12-09约1.7万字共18页下载文档
文本预览下载声明
zookeeper是一个为分布式应用提供一致性服务的软件,它是开源的 Hadoop项目中的一个子项目,并且根据 google发表的 The Chubby lock service for loosely-coupled distributed systems论文来实现的。zookeeper安装和使用zookeeper的安装基本上可以按照 /zookeeper/docs/current/ zookeeperStarted.html 这个页面上的步骤完成安装,这里主要介绍下部署一个集群的步骤,因为这个官方页面似乎讲得并不是非常详细 (Running Replicated Zookeeper)。由于手头机器不足,所以在一台机器上部署了 3个 server,如果你手头也比较紧,也可以这么做。那么我建了 3个文件夹,如下server1?? server2?? server3然后每个文件夹里面解压一个 zookeeper的下载包,并且还建了几个文件夹,总体结构如下 ,最后那个是下载过来压缩包的解压文件data?dataLog?logs?zookeeper-3.3.2那么首先进入 data目录,创建一个 myid的文件,里面写入一个数字,比如我这个是 server1,那么就写一个 1, server2对应 myid文件就写入 2, server3对应myid文件就写个 3然后进入 zookeeper-3.3.2/conf 目录,那么如果是刚下过来,会有 3个文件, configuration.xml, perties,zoo_sample.cfg ,这 3个文件我们首先要做的就是在这个目录创建一个 zoo.cfg的配置文件,当然你可以把 zoo_sample.cfg文件改成 zoo.cfg,配置的内容如下所示: ?tickTime=2000initLimit=5syncLimit=2dataDir=xxxx/zookeeper/server1/datadataLogDir=xxx/zookeeper/server1/dataLogclientPort=2181server.1=:2888:3888server.2=:2889:3889server.3=:2890:3890标红的几个配置应该官网讲得很清楚了,只是需要注意的是 clientPort这个端口如果你是在 1台机器上部署多个 server,那么每台机器都要不同的 clientPort,比如我 server1是 2181,server2是 2182, server3是 2183, dataDir和 dataLogDir也需要区分下。 最后几行唯一需要注意的地方就是 server.X 这个数字就是对应 data/myid中的数字。你在 3个 server的 myid文件中分别写入了 1, 2, 3,那么每个 server中的 zoo.cfg都配 server.1,server.2,server.3就 OK了。因为在同一台机器上,后面连着的 2个端口 3个 server都不要一样,否则端口冲突,其中第一个端口用来集群成员的信息交换,第二个端口是在 leader挂掉时专门用来进行选举 leader所用。进入 zookeeper-3.3.2/bin 目录中,./ zkServer.sh start 启动一个 server,这时会报大量错误?其实没什么关系,因为现在集群只起了 1台 server, zookeeper服务器端起来会根据 zoo.cfg的服务器列表发起选举 leader的请求,因为连不上其他机器而报错,那么当我们起第二个 zookeeper实例后, leader将会被选出,从而一致性服务开始可以使用,这是因为 3台机器只要有 2台可用就可以选出 leader并且对外提供服务 (2n+1台机器,可以容 n台机器挂掉 )。接下来就可以使用了,我们可以先通过 zookeeper自带的客户端交互程序来简单感受下 zookeeper到底做一些什么事情。进入 zookeeper-3.3.2/bin( 3个 server中任意一个)下, ./zkCli.sh?–server?:2182 ,我连的是开着 2182端口的机器。服务端单机模式 zoo.cfg文件配置参数详解? # 这个时间是被用来做服务器之间或客户端与服务器心跳和最低会话超时时间的基数。 tickTime=2000?? # 存储在内存中数据快照的目录。 dataDir=d:/zookeeperdata/1? # 服务器端开启的监听端口,用来接受客户端访问请求的端口。 clientPort=2181服务端集群模式 配置参数详解?#Zookeeper服务器集群中连接到Leader与Follower 服务器少次心跳时间间隔数,以及最大通讯的
显示全部
相似文档