dubbo学习笔记 第一章 zookeeper安装配置

       dubbo的实际使用中,基本都是使用zookeeper来管理它的服务,以及实现分布式调用。至于zookeeper是什么,具有什么用户,大家可以百度搜索了解一下。实际生产环境中,zookeeper的应用服务数目,基本都是奇数个,这是由于它的选举算法决定的:zookeeper有选举leader的概念,当某台服务得到半数以上的投票是它就可以成为这个集群的leader,举个例子,有5个zookeeper应用,超过半数就是3个;如果是6个zookeeper应用,超过半数也是3个,这样我们选择5个zookeeper应用就够支撑了。同样,如果zookeeper集群超过半数挂起,整个集群也会挂起,选择奇数个数也足够支撑。

一、安装过程

      从 http://zookeeper.apache.org/releases.html 这个地址下载zookeeper安装包,下载完成后我是放在/usr/loca/www目录下面,如图所示:

值得注意地是我这里还有一个data目录,后面配置zookeeper一些存储文件会用得到,我打算把它们指向这个目录下。

        zookeeper安装比较简单,它对主流的Linux系统兼容性都算比较好,接下来,我们就解压开这个tar.gz包,执行如下命令:

 tar -zxvf zookeeper-3.3.6.tar.gz,可以看到系统生成如下目录:



二、参数配置

进入这个生成的目录zookeeper-3.3.6目录,找到conf目录:



复制里面的zoo_sample.cfg文件到zoo.cfg,具体执行如下命令:

cp zoo_sample.cfg zoo.cfg

然后编辑zoo.cfg 文件,vi zoo.cfg,将里面的两行内容变更为:

dataDir=/usr/local/www/data    
dataLogDir=/usr/local/www/data

分别放置数据和日志。

三、zookeeper启动

bin/zkServer.sh start ,到此一个单机模式的zookeeper就配置完成,至于集群模式的zookeeper机器有限,这里不做介绍,集群配置过程也不复杂,可以自行百度了解。这里给大家一个zookeeper简易客户端,可以监控zookeeper状态。下图是我监控简图,所有zookeeper已经开始工作:



四,自己碰到的问题

在zookeeper启动后,data目录会有一个zookeeper_server.pid的文件,里面记录了zookeeper运行的pid号,这个pid号要跟真实运行的zookeeper的pid号保持一致,不然后续dubbo运行会出问题,可能消费者会调用不到提供者所提供的服务,怎么看会不会一致,这也是很简单,如下图:




上面两图就可以看出pid是一致,那什么情况会不一致,就是可能在zookeeper运行情况下,重复执行bin/zkServer.sh start会出现这个情况。

zookeeper简易客户端附件,大家可以自行下载。



你可能感兴趣的:(编程—java开发,系统—linux)