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

 

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客户端常用命令

演示:

  1. 连接Zookeeper客户端。

  2. 断开连接

  3. 节点的操作









节点详细信息说明:



以上是关于Zookeeper的主要内容,如果未能解决你的问题,请参考以下文章

ZooKeeper集群

ZooKeeper集群

Zookeeper集群部署

zookeeper概述和部署

zookeeper概述和部署

zookeeper概念 zookeeper常用客户端指令 Curator 事件监听 zookeeper分布式锁 ZooKeeper 集群搭建