准备工作

1、下载ZooKeeper的安装包  https://archive.apache.org/dist/zookeeper/zookeeper-3.4.9/   我下载的版本是zookeeper-3.4.9。

2、将下载的zookeeper-3.4.9包放到/software目录下,并且解压到/usr/local

3、在/tmp目录下新建一个zookeeper目录

4、安装jdk8 (下载解压配置环境变量)

linux 安装zookeeper集群 linux部署zookeeper_linux 安装zookeeper集群

部署ZooKeeper集群环境

1、将/usr/local/zookeeper-3.4.9/conf目录下的zoo-sample.cfg文件名统一修改为zoo.cfg

2、然后vi zoo.cfg。修改配置信息如下:

linux 安装zookeeper集群 linux部署zookeeper_端口号_02

其中:
initLimit=10: 对于从节点最初连接到主节点时的超时时间,单位为tick值的倍数。
syncLimit=5:对于主节点与从节点进行同步操作时的超时时间,单位为tick值的倍数。
dataDir=/tmp/zookeeper: 用于配置内存数据库保存的模糊快照的目录。即刚刚创建的data文件夹就是在此目录中。文件信息都存放在data目录下。
clientPort=2181: 表示客户端所连接的服务器所监听的端口号,默认是2181。即zookeeper对外提供访问的端口号。

server.1=node01:2888:3888  
server.2=node02:2888:3888
server.3=node03:2888:3888

2888在zookeeper服务器之间及和leader连接时使用,
第二个端口号:3888是在进行leader选举时使用
2181 是服务连接zookeeper端口

 新建myid文件

在三个linux机器上刚刚创建的zookeeper目录下新建一个myid文件并打开,vi myid命令。

在node01机器上输入1,保存退出;在node02机器上输入2,保存退出;在node03机器上输入3,保存退出。

这里的1,2,3是与server1,2,3相对应的。


配置环境变量

linux 安装zookeeper集群 linux部署zookeeper_数据_03

启动zookeeper

zkServer.sh start来启动。

zkServer.sh restart  (重启)

zkServer.sh status  (查看状态)

zkServer.sh stop     (关闭)

zkServer.sh start-foreground  (以打印日志方式启动)

连接到ZooKeeper

在命令行中输入:zkCli.sh

几个zNode节点操作的api简单介绍

 create /parh data      创建一个名为/path的zNode节点,并包含数据data

 delete /path          删除名为/path的zNode节点

 exists /path           检查是否存在名为/path的zNode节点

 setData /path data        设置名为/path的zNode的数据为data

 getData  /path         返回名为/path的zNode节点的数据信息

 getChildren /path      返回所有/path节点的所有子节点列表

 zNode节点还有不同的类型,持久(persistent)节点和临时(ephemeral)节点。持久的zNode,如/path,只能通过调用delete来进行删除,而临时的zNode则与之相反,当创建该节点的客户端崩溃或者关闭了与ZooKeeper服务器的连接时候,这个临时zNode节点就会被删除了。其中临时节点可用于实现分布式锁。