Zookeeper
Posted HOUHUILIN
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Zookeeper相关的知识,希望对你有一定的参考价值。
查看客户端命令帮助信息
查看Zookeeper的版本
查看使用过的历史命令
查看根目录下的znode
创建znode
查看客户端命令帮助信息
[zk:localhost:2181(CONNECTED) 0] help
查看Zookeeper的版本
[zk:localhost:2181(CONNECTED) 0] version
查看使用过的历史命令
[zk:localhost:2181(CONNECTED) 0] history
查看根目录下的znode
[zk:localhost:2181(CONNECTED) 0] ls /
创建znode
[zk:localhost:2181(CONNECTED) 0] create /zk_test 111
本文来自博客园,作者:HOUHUILIN,转载请注明原文链接:https://www.cnblogs.com/harleyblogs/p/17433439.html
Zookeeper -- 初识ZookeeperZookeeper的安装和配置Zookeeper命令操作(Zookeeper数据模型 Zookeeper服务端 / 客户端常用命令)
文章目录
1. Zookeeper – 初识Zookeeper、Zookeeper的安装和配置、Zookeeper命令操作(Zookeeper数据模型 Zookeeper服务端 / 客户端常用命令)
2. Zookeeper – Zookeeper JavaAPI相关操作(Curator介绍、Curator API 常用操作(节点的CRUD,Watch事件监听)、分布式锁、模拟12306售票案例)
3. Zookeeper – Zookeeper 集群搭建 集群角色说明
1. 初识Zookeeper
- Zookeeper 是 Apache Hadoop 项目下的一个子项目,是一个树形目录服务。
- Zookeeper 翻译过来就是 动物园管理员,他是用来管 Hadoop(大象)、Hive(蜜蜂)、Pig(小 猪)的管理员。简称zk
- Zookeeper 是一个分布式的、开源的分布式应用程序的协调服务(管理分布式应用程序)。
- Zookeeper 官方文档:https://zookeeper.apache.org/
Zookeeper 提供的主要功能包括:
-
配置管理 (配置中心)
-
分布式锁
-
集群管理 (注册中心)
2. Zookeeper的安装和配置
2.1 环境准备
ZooKeeper服务器是用Java创建的,它运行在JVM之上。需要安装JDK 7或更高版本。
2.2 上传并解压
Zookeeper下载地址:https://archive.apache.org/dist/zookeeper/
这是我下载好的。
将下载的ZooKeeper
放到/opt/ZooKeeper
目录下并解压。
# 创建 /opt/zooKeeper 目录
mkdir -p /opt/zooKeeper
# 进入 /opt/zooKeeper 目录
cd /opt/zooKeeper
# 解压安装包
tar -zxvf apache-zookeeper-3.5.6-bin.tar.gz
2.3 配置启动
进入到conf目录拷贝一个zoo_sample.cfg并完成配置
#进入到conf目录
cd /opt/zooKeeper/apache-zookeeper-3.5.6-bin/conf
#拷贝
cp zoo_sample.cfg zoo.cfg
修改zoo.cfg
#创建zooKeeper存储目录
mkdir -p /opt/zooKeeper/zkdata
#修改zoo.cfg
vim ./zoo.cfg
2.4 启动ZooKeeper
# 进入 /opt/zooKeeper/apache-zookeeper-3.5.6-bin/bin 目录
cd /opt/zooKeeper/apache-zookeeper-3.5.6-bin/bin
# 启动zookeeper
./zkServer.sh start
2.5 查看ZooKeeper状态
zookeeper启动成功。standalone代表zk没有搭建集群,现在是单节点。
zookeeper没有启动(可以使用 ./zkServer.sh stop
来停止zookeeper
)
3. Zookeeper命令操作
3.1 Zookeeper数据模型
- ZooKeeper 是一个树形目录服务,其数据模型和Unix的文件系统目录树很类似,拥有一个层次化结构。
- 这里面的每一个节点都被称为: ZNode,每个节点上都会保存自己的数据和节点信息。
- 节点可以拥有子节点,同时也允许少量(1MB)数据存储在该节点之下。
节点可以分为四大类:
- PERSISTENT 持久化节点 (当前会话关闭后不会丢失,默认)
- EPHEMERAL 临时节点 :-e (当前会话关闭后会丢失)
- PERSISTENT_SEQUENTIAL 持久化顺序节点 :-s
- EPHEMERAL_SEQUENTIAL 临时顺序节点 :-es
tips:顺序节点的意思就是创建节点后,会自动给节点生成一个全局唯一且递增的编号信息。
3.2 Zookeeper服务端常用命令
- 启动 ZooKeeper 服务:
./zkServer.sh start
- 查看 ZooKeeper 服务状态:
./zkServer.sh status
- 停止 ZooKeeper 服务:
./zkServer.sh stop
- 重启 ZooKeeper 服务:
./zkServer.sh restart
- 启动 ZooKeeper 服务并查看日志(可以帮助排错):
/zkServer.sh start-foreground
3.3 Zookeeper客户端常用命令
演示:
-
连接Zookeeper客户端。
-
断开连接
-
节点的操作
节点详细信息说明:
以上是关于Zookeeper的主要内容,如果未能解决你的问题,请参考以下文章
zookeeper概念 zookeeper常用客户端指令 Curator 事件监听 zookeeper分布式锁 ZooKeeper 集群搭建