Zookeeper节点管理

本文涉及的产品
云原生网关 MSE Higress,422元/月
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
注册配置 MSE Nacos/ZooKeeper,118元/月
简介: Zookeeper节点管理

一、任务描述

本实验任务主要完成基于ubuntu环境的Zookeeper节点管理工作。通过完成本实验任务,要求学生熟练掌握Zookeeper节点管理的方法,为后续实验的开展奠定zookeeper平台基础,也为从事大数据平台运维工程师、大数据技术支持工程师等岗位工作奠定夯实的技能基础。


二、任务目标

1、掌握Zookeeper节点管理的相关命令


三、任务环境

Ubuntu、Zookeeper3.4.5


四、任务分析

Apache Zookeeper 由 Apache Hadoop 的 Zookeeper 子项目发展而来,现已经成为 Apache 的顶级项目,它是一个开放源码的分布式应用程序协调服务,是Google Chubby的一个开源实现。它是一个为分布式应用提供一致性服务的组件,提供的功能包括:配置管理,名字服务,提供分布式同步、队列管理、集群管理等。


学会Zookeeper节点管理的相关命令。

五、 任务实施

步骤1、启动Zookeeper

进入到zookeeper bin文件下,通过命令【./zkServer.sh start】来启动服务。如图1所示。


103b96d24cdd45d2a47cd24e0b02fffa.png


图1 启动Zookeeper

 利用【./zkServer.sh status】查看Zookeeper节点状态。如图2所示。

bcf4fc3486ef4f66bd2b304f9e4e4d68.png



图2 查看Zookeeper节点状态

步骤2、Zookeeper节点操作

 本地进入zookeeper bin文件下使用命令【./zkCli.sh】连接服务端。如图3所示。

bd5a86a453fe4695acc6bfc27b787385.png



图3 本地连接服务端

 连接本地服务端之后,使用命令【-help 】查看所有命令。如图4所示。

34401f91847b42acac198724fb65e77a.png



图4 查看所有命令

 连接本地服务端之后,使用命令【ls / 】查看当前节点([zookeeper]为默认节点)命令。如图5所示。

name Value
cZxid 创建节点时的事务id
pZxid 子节点列表最后一次被修改的事务id
cversion 节点版本号
dataCersion 数据版本号
aclVerson acl权限版本号


图5 查看当前节点

 连接本地服务端之后,使用命令【stat /zookeeper】查看当前节点状态([zookeeper]为默认节点)命令。


如图6所示。


a026fbc78c784104ad6858a4a345fadd.png


图6 查看当前节点状态

 连接本地服务端之后,使用命令【create -e /node_1 123 】创建临时节点node_1,并携带数据123,使用命令。【get /node_1】验证节点及其数据是否创建成功,临时节点不能拥有子节点(创建报错),临时节点会在客户端会话结束后被删除。如图7所示。


b8094ab17dad40b89f41af567f7a6c85.jpg


图7 创建临时节点

 连接本地服务端之后,使用命令【create /node_2 234】创建节点node_2,并携带数据234,使用命令。【stat /node_2】查看节点状态。如图8所示。


99570fa6715444528f38a6a4a35d101a.png


图8 创建节点

 连接本地服务端之后,使用命令【create -e /node_2/node_2_1 345】创建节点node_2_1,并携带数据345,使用命令。【stat /node_2/node_2_1】查看新建的临时节点状态。如图9所示。


31cc0b541b7143d0a4c3a120232c1bb9.png


图9 创建临时子节点

 连接本地服务端之后,使用命令【set /node_2 999】修改节点相关指定,并携带数据999,使用命令。【get /node_2】查看节点状态,如果我们多次修改,会发现 dataVersion ,也就是数据版本,在不停得发生变化(自增),如果我们在set的时候手动去指定了版本号,就必须和上一次查询出来的结果一致,否则 就会报错。如图10所示。


31afbd0420604cbd9ffddb52d5f1711f.png


图10 修改节点数据

 连接本地服务端之后,使用命令【delete /node_2/node_2_1】删除节点,可在后面指定版本号,delete只能删除不包含子节点的节点,如果要删除的节点包含子节点,使用rmr命令,使用命令,【ls /node_2】查看节点状态。如图11所示。

c9401a4449c14c189ce48f8efa96230e.png



图11 删除节点


♥ 知识链接

ZooKeeper是以Fast Paxos算法为基础的,Paxos 算法存在活锁的问题,即当有多个proposer交错提交时,有可能互相排斥导致没有一个proposer能提交成功,而Fast Paxos作了一些优化,通过选举产生一个leader (领导者),只有leader才能提交proposer,具体算法可见Fast Paxos。


♥ 温馨提示

在Zookeeper中,znode是一个跟Unix文件系统路径相似的节点,可以往这个节点存储或获取数据。

4c038d80ec2f4bfd839880e61887a951.png

相关实践学习
基于MSE实现微服务的全链路灰度
通过本场景的实验操作,您将了解并实现在线业务的微服务全链路灰度能力。
相关文章
|
6月前
|
存储 缓存 Java
【Zookeeper】Apach Curator 框架源码分析:后台构造器和节点操作相关源码分析(二)【Ver 4.3.0】
【Zookeeper】Apach Curator 框架源码分析:后台构造器和节点操作相关源码分析(二)【Ver 4.3.0】
100 0
|
6月前
|
存储 缓存 Java
【Zookeeper】Apach Curator 框架源码分析:后台构造器和节点操作相关源码分析(二)【Ver 4.3.0】(2)
【Zookeeper】Apach Curator 框架源码分析:后台构造器和节点操作相关源码分析(二)【Ver 4.3.0】
73 0
【Zookeeper】Apach Curator 框架源码分析:后台构造器和节点操作相关源码分析(二)【Ver 4.3.0】(2)
|
数据安全/隐私保护
Zookeeper快速入门(Zookeeper概述、安装、集群安装、选举机制、命令行操作、节点类型、监听器原理)(二)
Zookeeper快速入门(Zookeeper概述、安装、集群安装、选举机制、命令行操作、节点类型、监听器原理)(二)
|
4月前
|
存储 数据安全/隐私保护
zookeeper 节点介绍及节点常用命令总结
zookeeper 节点介绍及节点常用命令总结
106 4
|
22天前
|
分布式计算 Java Hadoop
Hadoop-30 ZooKeeper集群 JavaAPI 客户端 POM Java操作ZK 监听节点 监听数据变化 创建节点 删除节点
Hadoop-30 ZooKeeper集群 JavaAPI 客户端 POM Java操作ZK 监听节点 监听数据变化 创建节点 删除节点
50 1
|
22天前
|
分布式计算 Hadoop Unix
Hadoop-28 ZooKeeper集群 ZNode简介概念和测试 数据结构与监听机制 持久性节点 持久顺序节点 事务ID Watcher机制
Hadoop-28 ZooKeeper集群 ZNode简介概念和测试 数据结构与监听机制 持久性节点 持久顺序节点 事务ID Watcher机制
39 1
|
22天前
|
分布式计算 Hadoop
Hadoop-27 ZooKeeper集群 集群配置启动 3台云服务器 myid集群 zoo.cfg多节点配置 分布式协调框架 Leader Follower Observer
Hadoop-27 ZooKeeper集群 集群配置启动 3台云服务器 myid集群 zoo.cfg多节点配置 分布式协调框架 Leader Follower Observer
34 1
|
4月前
|
API
zookeeper 使用api 进行节点增删改查及实现简易的配置中心
zookeeper 使用api 进行节点增删改查及实现简易的配置中心
48 2
|
6月前
|
存储 Java 网络安全
ZooKeeper【搭建 03】apache-zookeeper-3.6.0 伪集群版(一台服务器实现三个节点的ZooKeeper集群)
【4月更文挑战第10天】ZooKeeper【搭建 03】apache-zookeeper-3.6.0 伪集群版(一台服务器实现三个节点的ZooKeeper集群)
77 1
|
6月前
|
Shell
ZooKeeper【基础 02】zookeeper-3.6.0 常用Shell命令(节点增删改查+监听器+四字指令)
【4月更文挑战第10天】ZooKeeper【基础 02】zookeeper-3.6.0 常用Shell命令(节点增删改查+监听器+四字指令)
75 0