zookeeper常用命令

本文详细介绍了Zookeeper的下载安装、配置参数、常用命令,包括server端操作、客户端连接、数据模型、权限设置以及临时与持久节点的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 下载安装

2. 配置说明

2.1 配置

  • 如下:
    # The number of milliseconds of each tick
    # zookeeper时间配置中的基本单位(毫秒)
    tickTime=2000
    
    # The number of ticks that the initial 
    # synchronization phase can take
    # 允许 follower 初始化连接到 leader 最大时长,它表示tickTime时间倍数,即:initLimit * tickTime
    initLimit=10
    
    # The number of ticks that can pass between 
    # sending a request and getting an acknowledgement
    # 允许 follower 与 leader 数据同步最大时长,它表示tickTime时间倍数
    syncLimit=5
    
    # the directory where the snapshot is stored.
    # do not use /tmp for storage, /tmp here is just 
    # example sakes.
    # zookeeper 数据存储目录及日志保存目录(如果没有指明dataLogDir,则日志也保存到这个文件夹中)
    # dataDir=/tmp/zookeeper
    dataDir=/home/susu/soft/softWare/zk/apache-zookeeper-3.5.9-bin/dataDir
    
    # the port at which the clients will connect
    # 对客户端提供的端口号
    clientPort=2181
    
    # the maximum number of client connections.
    # increase this if you need to handle more clients
    # 单个客户端与zookeeper最大并发连接数
    # maxClientCnxns=60
    
    # Be sure to read the maintenance section of the 
    # administrator guide before turning on autopurge.
    #
    # http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
    #
    # The number of snapshots to retain in dataDir
    # 保存数据快照数量,之外的将会被清除
    # autopurge.snapRetainCount=3
    
    # Purge task interval in hours
    # Set to "0" to disable auto purge feature
    # 自动触发清除时间间隔,单位为小时。默认为0,表示不自动清除
    # autopurge.purgeInterval=1
    

3. zookeeper的常见命令

3.1 server端启动停止等命令

  1. 启动

    • 不指定配置文件启动
      ./zkServer.sh start     #进入bin目录下,直接执行此命令
      
    • 指定配置文件启动
      ./zkServer.sh start ../conf/zoo.cfg
      
  2. 停止

    ./zkServer.sh stop   # 不指定文件
    ./zkServer.sh stop ../conf/zoo.cfg   # 指定文件
    
  3. 查看zk服务器的状态

    ./zkServer.sh status
    

    在这里插入图片描述

3.2 客户端连接等命令

  1. 启动server之后,连接客户端,连接客户端命令
    ./zkCli.sh
    
    ./zkCli.sh -server 127.0.0.1:2181
    
  2. 退出客户端命令:
    quit   # 注意:不加分号
    

3.3 客户端简单常用命令

3.3.1 查看目录(查看数据结构)

  • 如下:
    ls /
    
    在这里插入图片描述

3.3.2 删除目录

  • 删除目录
    delete /aa       # 下面没有子节点的,可以直接用 delete
    deleteall /手机   # 下面有子节点的,用 deleteall
    
    在这里插入图片描述

3.3.3 创建目录

  1. 直接创建目录
    create /狗狗
    create /狗狗/边牧
    create /狗狗/边牧/麦兜
    
    在这里插入图片描述

3.3.4 创建目录并写入值 + 查看节点值

  • 如下:
    create /骆驼 园区2号
    get /骆驼
    
    在这里插入图片描述

3.3.5 设置节点值

  • 如下:
    set /猩猩 园外区-1号
    
    在这里插入图片描述

3.3.6 查询节点

3.3.6.1 普通查询
3.3.6.1.1 普通简单查询
  • 如下:
    get /骆驼    # 查询节点值
    ls /狗狗/边牧   # 查询其下的子节点
    
3.3.6.1.2 普通递归查询
  • 如下:
    ls -R /
    
    在这里插入图片描述
3.3.6.2 查询节点的详细信息
  • 查询含节点值的详细信息,如下:
    get -s /猩猩
    
    在这里插入图片描述
  • 解释:
    • 第一行显示:该节点的值
    • cZxid:创建节点的事务ID
    • ctime:创建节点的时间
    • mZxid:修改节点的事务ID
    • mtime:修改节点的时间(最近修改时间)
    • pZxid:添加和删除子节点的事务ID
    • cversion:cversion是指节点的子节点版本号,也就是说当一个节点的子节点发生变化时,cversion会自增。(即:每新增或删除一个子节点时,版本➕1)
    • dataVersion:dataVersion是指节点数据的版本号,当一个节点的数据发生变化时,dataVersion会自增。每更新一次数据(set一次即更新节点值),版本会➕1
    • aclVersion:此节点的权限版本
    • ephemeralOwner:如果当前节点是临时节点,该值是当前节点所有者的session id。如果节点不是临时节点,则值为零。
    • dataLength:节点内数据的长度(节点值)
    • numChildren:该节点的子节点个数
3.3.6.3 查询节点的详细信息2
  • 查询含子节点的,可以直接ls ,如下:
    ls -s /猩猩
    
    在这里插入图片描述

3.3.7 创建持久序号节点

  • 加选项 -s ,如下:
     create -s /bb/bb1
    
    在这里插入图片描述

3.3.8 创建临时节点

  • 什么是临时节点?
    临时节点是在会话结束后,自动被删除的,通过这个特性,zk可以实现服务注册与发现的效果。
  • 临时节点和普通节点的不同?临时节点如何维持心跳呢?
    • 在Zookeeper中,临时节点和持久节点是两种不同的节点类型。
    • 持久节点一旦创建,除非主动调用删除操作,否则会一直存储在Zookeeper上。
    • 而临时节点是与客户端会话绑定的,一旦客户端会话失效,这个客户端所创建的所有临时节点都会被移除。
    • 临时节点的特点是它们的生命周期与客户端会话相关,当客户端会话结束时,临时节点会被自动删除。而持久节点则会一直存在,直到被显式删除。
    • 看下面结构图理解临时节点和持久节点:
      在这里插入图片描述
      在这里插入图片描述
  • 创建临时节点的命令,如下:
    create -e /cc     # 临时节点
    create -e -s /dd   # 临时序号节点
    
    在这里插入图片描述
    在这里插入图片描述

3.4 权限设置——创建权限节点

3.4.1 步骤

  • 首先,使用 addauth digest 命令给当前会话添加一个认证用户,如下:
    addauth digest maidou    # 不带密码
    
    addauth digest beita:123456  # 带密码
    
    在这里插入图片描述
    在这里插入图片描述

3.4.2 解释

  • 在ZooKeeper中,创建节点权限的命令可以使用以下命令:
    create \[-s\] \[-e\] path data acl
    
    其中,path是要创建的节点路径,data是节点的数据,acl是节点的权限设置。权限设置可以使用以下格式:
    scheme:id:permission
    
    其中,scheme是权限方案,id是授权的对象,permission是授予的权限。常用的权限包括:
    • c:创建权限,可以在当前节点下创建子节点
    • r:读权限,可以读取节点的内容及子节点
    • w:写权限,可以向节点写入数据
    • d:删除权限,可以删除节点的子节点
    • a:管理权限,可以设置节点的权限
  • 所以,创建节点权限的命令可以使用类似以下格式:
    create /path data scheme:id:permission
    

4. zookeeper 内部的数据模型

4.1 数据结构模型图

  • 如下:
    在这里插入图片描述
  • 解释
    • zookeeper 中的数据是保存在节点上的,节点就是znode,多个znode之间构成一颗树的目录结构。zookeeper 的数据模型是什么样子的呢?它很像数据结构当中的树,也很像文件系统的目录。
    • 树是由节点组成,zookeeper 的数据存储也同样是基于节点,这种节点叫做znode。但是不同于树的节点,znode的引用方式是路径引用,类似于文件路径,如下:
    • 这样的层级结构,让每一个znode节点拥有唯一的路径,就像命名空间一样,对不同信息做出清晰的隔离。

5.

内容概要:本文档详细介绍了在三台CentOS 7服务器(IP地址分别为192.168.0.157、192.168.0.158和192.168.0.159)上安装和配置Hadoop、Flink及其他大数据组件(如Hive、MySQL、Sqoop、Kafka、Zookeeper、HBase、Spark、Scala)的具体步骤。首先,文档说明了环境准备,包括配置主机名映射、SSH免密登录、JDK安装等。接着,详细描述了Hadoop集群的安装配置,包括SSH免密登录、JDK配置、Hadoop环境变量设置、HDFS和YARN配置文件修改、集群启动与测试。随后,依次介绍了MySQL、Hive、Sqoop、Kafka、Zookeeper、HBase、Spark、Scala和Flink的安装配置过程,包括解压、环境变量配置、配置文件修改、服务启动等关键步骤。最后,文档提供了每个组件的基本测试方法,确保安装成功。 适合人群:具备一定Linux基础和大数据组件基础知识的运维人员、大数据开发工程师以及系统管理员。 使用场景及目标:①为大数据平台建提供详细的安装指南,确保各组件能够顺利安装和配置;②帮助技术人员快速掌握Hadoop、Flink等大数据组件的安装与配置,提升工作效率;③适用于企业级大数据平台的建与维护,确保集群稳定运行。 其他说明:本文档不仅提供了详细的安装步骤,还涵盖了常见的配置项解释和故障排查建议。建议读者在安装过程中仔细阅读每一步骤,并根据实际情况调整配置参数。此外,文档中的命令和配置文件路径均为示例,实际操作时需根据具体环境进行适当修改。
在无线通信领域,天线阵列设计对于信号传播方向和覆盖范围的优化至关重要。本题要求设计一个广播电台的天线布局,形成特定的水平面波瓣图,即在东北方向实现最大辐射强度,在正东到正北的90°范围内辐射衰减最小且无零点;而在其余270°范围内允许出现零点,且正西和西南方向必须为零。为此,设计了一个由4个铅垂铁塔组成的阵列,各铁塔上的电流幅度相等,相位关系可自由调整,几何布置和间距不受限制。设计过程如下: 第一步:构建初级波瓣图 选取南北方向上的两个点源,间距为0.2λ(λ为电磁波波长),形成一个端射阵。通过调整相位差,使正南方向的辐射为零,计算得到初始相位差δ=252°。为了满足西南方向零辐射的要求,整体相位再偏移45°,得到初级波瓣图的表达式为E1=cos(36°cos(φ+45°)+126°)。 第二步:构建次级波瓣图 再选取一个点源位于正北方向,另一个点源位于西南方向,间距为0.4λ。调整相位差使西南方向的辐射为零,计算得到相位差δ=280°。同样整体偏移45°,得到次级波瓣图的表达式为E2=cos(72°cos(φ+45°)+140°)。 最终组合: 将初级波瓣图E1和次级波瓣图E2相乘,得到总阵的波瓣图E=E1×E2=cos(36°cos(φ+45°)+126°)×cos(72°cos(φ+45°)+140°)。通过编程实现计算并绘制波瓣图,可以看到三个阶段的波瓣图分别对应初级波瓣、次级波瓣和总波瓣,最终得到满足广播电台需求的总波瓣图。实验代码使用MATLAB编写,利用polar函数在极坐标下绘制波瓣图,并通过subplot分块显示不同阶段的波瓣图。这种设计方法体现了天线阵列设计的基本原理,即通过调整天线间的相对位置和相位关系,控制电磁波的辐射方向和强度,以满足特定的覆盖需求。这种设计在雷达、卫星通信和移动通信基站等无线通信系统中得到了广泛应用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

@素素~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值