Zookeeper特性与节点数据类型详解

文章目录

  • 1、Zookeeper介绍
  • [2、 Zookeeper快速开始](#2、 Zookeeper快速开始)
    • [2.1、 Zookeeper安装](#2.1、 Zookeeper安装)
    • [2.2、 客户端命令行操作](#2.2、 客户端命令行操作)
    • [2.3、 GUI工具](#2.3、 GUI工具)

1、Zookeeper介绍

ZooKeeper 是一个开源的分布式协调框架,是Apache Hadoop 的一个子项目,主要用来解决分布式集群中应用系统的一致性问题。Zookeeper 的设计目标是将那些复杂且容易出错的分布式一致性服务封装起来,构成一个高效可靠的原语集,并以一系列简单易用的接口提供给用户使用。

官方:https://zookeeper.apache.org/

ZooKeeper本质上是一个分布式的小文件存储系统(Zookeeper=文件系统+监听机制)。提供基于类似于文件系统的目录树方式的数据存储,并且可以对树中的节点进行有效管理,从而用来维护和监控存储的数据的状态变化。通过监控这些数据状态的变化,从而可以达到基于数据的集群管理、统一命名服务、分布式配置管理、分布式消息队列、分布式锁、分布式协调等功能。

Zookeeper从设计模式角度来理解:是一个基于观察者模式设计的分布式服务管理框架,它负责存储和管理大家都关心的数据,然后接受观察者的注册,一旦这些数据的状态发生变化,Zookeeper 就将负责通知已经在Zookeeper上注册的那些观察者做出相应的反应。

2、 Zookeeper快速开始

2.1、 Zookeeper安装

下载地址:https://zookeeper.apache.org/releases.html

运行环境:jdk8

1)修改配置文件

解压安装包后进入conf目录,复制zoo_sample.cfg,修改为zoo.cfg

复制代码
 cp zoo_sample.cfg  zoo.cfg 

修改 zoo.cfg 配置文件,将 dataDir=/tmp/zookeeper 修改为指定的data目录

2)启动zookeeper server

复制代码
# 可以通过 bin/zkServer.sh  来查看都支持哪些参数 
# 默认加载配置路径conf/zoo.cfg
bin/zkServer.sh start
bin/zkServer.sh start conf/my_zoo.cfg

# 查看zookeeper状态
bin/zkServer.sh status

3)启动zookeeper client连接Zookeeper server

复制代码
bin/zkCli.sh
# 连接远程的zookeeper server
bin/zkCli.sh -server ip:port

2.2、 客户端命令行操作


常见cli命令

https://zookeeper.apache.org/doc/r3.8.0/zookeeperCLI.html

命令基本语法 功能描述
help 显示所有操作命令
ls [-s] [-w] [-R] path 使用 ls 命令来查看当前 znode 的子节点 [可监听] -w: 监听子节点变化 -s: 节点状态信息(时间戳、版本号、数据大小等) -R: 表示递归的获取
create [-s] [-e] [-c] [-t ttl] path [data] [acl] 创建节点 -s : 创建有序节点。 -e : 创建临时节点。 -c : 创建一个容器节点。 t ttl] : 创建一个TTL节点, -t 时间(单位毫秒)。 data:节点的数据,可选,如果不使用时,节点数据就为null。 acl:访问控制
get [-s] [-w] path 获取节点数据信息 -s: 节点状态信息(时间戳、版本号、数据大小等) -w: 监听节点变化
set [-s] [-v version] path data 设置节点数据 -s:表示节点为顺序节点 -v: 指定版本号
getAcl [-s] path 获取节点的访问控制信息 -s: 节点状态信息(时间戳、版本号、数据大小等)
setAcl [-s] [-v version] [-R] path acl 设置节点的访问控制列表 -s:节点状态信息(时间戳、版本号、数据大小等) -v:指定版本号 -R:递归的设置
stat [-w] path 查看节点状态信息
delete [-v version] path 删除某一节点,只能删除无子节点的节点。 -v: 表示节点版本号
deleteall path 递归的删除某一节点及其子节点
setquota -n -b val path

2.3、 GUI工具

相关推荐
编织幻境的妖17 小时前
Zookeeper在大数据集群中的作用详解
大数据·分布式·zookeeper
yumgpkpm21 小时前
hadoop集群搭建 (超详细) 接入Impala、Hive,AI 大模型的数据底座
hive·hadoop·mysql·zookeeper·flink·kafka·hbase
可爱又迷人的反派角色“yang”21 小时前
zookeeper概念与部署
分布式·zookeeper·云原生
yumgpkpm6 天前
Hadoop 与AI大模型实战:从Hive、Impala(Cloudera CDH、CDP)海量数据到 AI 决策的落地方法
arm开发·人工智能·hive·zookeeper·flink·kafka·cloudera
koping_wu8 天前
【Zookeeper】数据结构、集群原理、选举机制
数据结构·zookeeper·java-zookeeper
晚霞的不甘9 天前
华为云 DevUI 微前端实战:基于 Module Federation 的多团队协作架构落地
javascript·zookeeper·云原生·华为云·firefox
yumgpkpm10 天前
接入Impala、Hive 的AI平台、开源大模型的国内厂商(星环、Doris、智谱AI、Qwen、DeepSeek、 腾讯混元、百川智能)
人工智能·hive·hadoop·zookeeper·spark·开源·hbase
Msshu12311 天前
Type-C PD快充协议 PD快充诱骗协议芯片 PD/QC/FCP/SCP/AFC电压诱骗芯片
mongodb·zookeeper·eureka·kafka·consul
富士康质检员张全蛋12 天前
zookeeper 什么是微服务注册中心?
zookeeper
yumgpkpm14 天前
腾讯TBDS和CMP(Cloud Data AI Platform,类Cloudera CDP,如华为鲲鹏 ARM 版)比较的缺陷在哪里?
hive·hadoop·elasticsearch·zookeeper·oracle·kafka·hbase