zookeeper安装与运行

之前有用过zookeeper,不过只限于配合其他中间件使用而已,最多就是简单的启动起来就完事,最近慢慢接触分布式计算的知识,发觉zookeeper作为一个分布式协调系统使用很广泛,很多中间件都会使用他,于是决定认真学习一下


首先是学习一下怎样运行zookeeper


1.到官网上下载zookeeper

http://zookeeper.apache.org/


2.解压zookeeper

等到下面的目录结构


3.以standalone模式启动zookeeper

3.1配置zookeeper

进入根目录下的conf文件夹,新建一个名为zoo.cfg的文件(直接从zoo_sample.cfg拷贝重命名)

zookeeper安装与运行_第1张图片

然后在任意位置新建一个文件夹,用来存放zookeeper运行过程中产生的日志等信息,这里就在zookeeper的根目录下新建一个叫dataDir的文件夹

zookeeper安装与运行_第2张图片

接下来编辑zoo.cfg配置文件,配置项基本不用改,就把其中的dataDir项的地址改为上面新建的文件夹的地址

配置就完成了


接下来启动zookeeper

进入根目录下的bin文件夹,执行命令 "./zkServer.sh start",就能启动zookeeper

然后利用zookeeper客户端来连接zookeeper服务

zookeeper安装与运行_第3张图片

连接成功


通过在zookeeper里新建一个zootest节点,然后再删除来做一下实验

zookeeper安装与运行_第4张图片


4 zookeeper集群部署

这里在同一台机器上运行3个zookeeper来模拟集群


4.1 zookeeper集群配置

首先对每每个zookeeper的配置做更改,拿zookeeper1为例,在配置文件中添加集群每台机的ip地址和端口

zookeeper安装与运行_第5张图片

然后给每个zookeeper分配一个id,这里的id指的是上面server.x的x,例如server.1,那与127.0.0.1:2888:3888的那个zookeeper的id就是1

拿zookeeper1为例,我们进入dataDir目录,在目录下新建一个叫myid的文件,文件内容是1,如下图

zookeeper安装与运行_第6张图片


其他zookeeper也做类似的配置


然后把集群运行起来

zookeeper安装与运行_第7张图片

可以看到,zookeeper1被选为了leader,其他为follower


下面做个小实验来试验一下他们之间的同步性,我们随便选取一个zookeeper来连接,新建一个节点,然后再看看其他zookeeper上有没有同步新建那个节点

添加节点前:

zookeeper安装与运行_第8张图片

在zookeeper2上添加一个节点:


可以看到,在zookeeper2上新建的节点,在zookeeper1和zookeeper3上都反映出来了

你可能感兴趣的:(中间件,zookeeper)