一、Zookeeper概念

Zookeeper 是 Apache Hadoop 项目下的一个子项目,是一个树形目录服务。

Zookeeper 翻译过来就是 动物园管理员,他是用来管 Hadoop(大象)、Hive(蜜蜂)、Pig(小 猪)的管理员。简称zk 。

Zookeeper 是一个分布式的、开源的分布式应用程序的协调服务
Zookeeper 提供的主要功能包括:
    配置管理
   分布式锁
   集群管理

Zookeeper学习-入门教程_版本号

 

 二、Zookeeper命令操作数据模型

ZooKeeper 是一个树形目录服务,其数据模型和Unix的文件系统目录树很类似,拥有一个层次化结构。
•这里面的每一个节点都被称为: ZNode,每个节点上都会保存自己的数据和节点信息。
• 节点可以拥有子节点,同时也允许少量(1MB)数据存储在该节点之下。
•节点可以分为四大类:
•PERSISTENT 持久化节点(默认)
•EPHEMERAL 临时节点 :-e
•PERSISTENT_SEQUENTIAL 持久化顺序节点 :-s
•EPHEMERAL_SEQUENTIAL 临时顺序节点 :-es

 

二、zookeeper的服务器和客户端的操作命令

1、服务端启动/停止/重启

cd /opt/zooKeeper/apache-zooKeeper-3.5.6-bin/bin/
#启动
./zkServer.sh start

#查看ZooKeeper状态
./zkServer.sh status


#重启
./zkServer.sh restart

#停止
./zkServer.sh stop

 

2、客户端连接

./zkCli.sh –server ip:port

不加ip:port表示连接本地的zookeeper。

断开连接

quit

查看命令帮助

help

 

3、对节点的操作

显示指定目录下节点

ls 目录

#根节点

ls /

#其他节点

ls /mynode1

 

•创建节点

create /节点path value

create /mynode1 muxuevaluessddd

create /mynode2 'this is my values.'

value可不写。若有空格,请用单引号。

 

•获取节点值

get /节点path

get /mynode1

 

•设置节点值

set /节点path value

若已设置过,则覆盖原有的值。

•删除单个节点

delete /节点path

若有子节点,则无法删除。

 

•删除带有子节点的节点

deleteall /节点path

 

•创建临时节点

create -e /节点path value

•创建顺序节点

create -s /节点path value

 

•查询节点详细信息

ls –s /节点path

 

•czxid:节点被创建的事务ID
•ctime: 创建时间
•mzxid: 最后一次被更新的事务ID
•mtime: 修改时间
•pzxid:子节点列表最后一次被更新的事务ID
•cversion:子节点的版本号
•dataversion:数据版本号
•aclversion:权限版本号
•ephemeralOwner:用于临时节点,代表临时节点的事务ID,如果为持久节点则为0
•dataLength:节点存储的数据的长度
•numChildren:当前节点的子节点个数

 

作者:沐雪