zoukankan      html  css  js  c++  java
  • 九、zookeeper四字监控命令

      zooKeeper支持某些特定的四字命令与其的交互。它们大多是查询命令,用来获取 zooKeeper服务的当前状态及相关信息。用户在客户端可以通过 telnet 或 nc 向zooKeeper提交相应的命令。 zooKeeper常用四字命令见下表 所示:

    命令描述
    conf 输出相关服务配置的详细信息。比如端口、zk数据及日志配置路径、最大连接数,session超时时间、serverId等
    cons 列出所有连接到这台服务器的客户端连接/会话的详细信息。包括“接受/发送”的包数量、session id 、操作延迟、最后的操作执行等信息
    crst 重置当前这台服务器所有连接/会话的统计信息
    dump 列出未经处理的会话和临时节点
    envi 输出关于服务器的环境详细信息
    ruok 测试服务是否处于正确运行状态。如果正常返回"imok",否则返回空
    stat 输出服务器的详细信息:接收/发送包数量、连接数、模式(leader/follower)、节点总数、延迟。 所有客户端的列表
    srst 重置server状态
    wchs 列出服务器watches的简洁信息:连接总数、watching节点总数和watches总数
    wchc 通过session分组,列出watch的所有节点,它的输出是一个与 watch 相关的会话的节点列表
    mntr 列出集群的健康状态。包括“接受/发送”的包数量、操作延迟、当前服务模式(leader/follower)、节点总数、watch总数、临时节点总数

      nc命令工具安装:

    #root用户安装
    #下载安装包
    wget http://vault.centos.org/6.6/os/x86_64/Packages/nc-1.84-22.el6.x86_64.rpm
    #rpm安装
    rpm -iUv nc-1.84-22.el6.x86_64.rpm

      使用方式,在shell终端输入:echo mntr | nc localhost 2181

    1、conf命令

      conf:输出相关服务配置的详细信息

      shell终端输入:echo conf| nc localhost 2181

    [root@zk01 ~]# echo conf| nc localhost 2181
    clientPort=2181
    dataDir=/opt/zookeeper/data/version-2
    dataLogDir=/opt/zookeeper/logs/version-2
    tickTime=2000
    maxClientCnxns=60
    minSessionTimeout=4000
    maxSessionTimeout=40000
    serverId=1
    initLimit=10
    syncLimit=5
    electionAlg=3
    electionPort=3888
    quorumPort=2888
    peerType=0
    属性含义
    clientPort 客户端端口号
    dataDir 数据快照文件目录 默认情况下100000次事务操作生成一次快照
    dataLogDir 事物日志文件目录,生产环境中放在独立的磁盘上
    tickTime 服务器之间或客户端与服务器之间维持心跳的时间间隔(以毫秒为单位)
    maxClientCnxns 最大连接数
    minSessionTimeout 最小session超时 minSessionTimeout=tickTime* 2
    maxSessionTimeout maxSessionTimeout 最大session超时 maxSessionTimeout=tickTime * 20
    serverId 服务器编号
    initLimit 集群中的follower服务器(F)与leader服务器(L)之间初始连接时能容忍的最多心跳数
    syncLimit 集群中的follower服务器(F)与leader服务器(L)之间 请求和应答之间能容忍的最多心跳数
    electionAlg 0:基于UDP的LeaderElection 1:基于UDP的 FastLeaderElection 2:基于UDP和认证的FastLeaderElection 3:基于TCP的FastLeaderElection 在3.4.10版本中,默认值为3另外三种算法已经被弃用,并且有计划在之后的版本中将它们彻底删除而不再支持
    electionPort 选举端口
    quorumPort 数据通信端口
    peerType 是否为观察者 1为观察者

    2、cons命令

      cons:列出所有连接到这台服务器的客户端连接/会话的详细信息

      shell终端输入:echo cons| nc localhost 2181

    [root@zk01 ~]# echo cons| nc localhost 2181
     /0:0:0:0:0:0:0:1:33648[0](queued=0,recved=1,sent=0)
     /0:0:0:0:0:0:0:1:33644[1](queued=0,recved=697,sent=697,sid=0x179c0b2dee2000c,lop=PING,est=1622455608147,to=30000,lcxid=0x2b,lzxid=0xffffffffffffffff,lresp=1622462271027,llat=1,minlat=0,avglat=0,maxlat=48)
    属性含义
    ip ip地址
    port 端口号
    queued 等待被处理的请求数,请求缓存在队列中
    received 收到的包数
    sent 发送的包数
    sid 会话id
    lop 最后的操作 GETD-读取数据 DELE-删除数据 CREA-创建数据
    est 连接时间戳
    to 超时时间
    lcxid 当前会话的操作id
    lzxid 最大事务id
    lresp 最后响应时间戳
    llat 最后/最新 延时
    minlat 最小延时
    maxlat 最大延时
    avglat 平均延时

    3、crst命令

      crst:重置当前这台服务器所有连接/会话的统计信息

      shell终端输入:echo crst| nc localhost 2181

    4、dump命令

      dump:列出未经处理的会话和临时节点

      shell终端输入:echo dump| nc localhost 2181

    属性含义
    session id znode path(1对多 , 处于队列中排队的session和临时节点)

    5、envi命令

      envi:输出关于服务器的环境配置信息

      shell终端输入:echo envi| nc localhost 2181

    [root@zk03 ~]# echo envi| nc localhost 2181
    Environment:
    zookeeper.version=3.4.10-39d3a4f269333c922ed3db283be479f9deacaa0f, built on 03/23/2017 10:13 GMT
    host.name=zk03
    java.version=1.8.0_251
    java.vendor=Oracle Corporation
    java.home=/usr/local/jdk8/jre
    java.class.path=/usr/local/zookeeper/bin/../build/classes:/usr/local/zookeeper/bin/../build/lib/*.jar:/usr/local/zookeeper/bin/../lib/slf4j-log4j12-1.6.1.jar:/usr/local/zookeeper/bin/../lib/slf4j-api-1.6.1.jar:/usr/local/zookeeper/bin/../lib/netty-3.10.5.Final.jar:/usr/local/zookeeper/bin/../lib/log4j-1.2.16.jar:/usr/local/zookeeper/bin/../lib/jline-0.9.94.jar:/usr/local/zookeeper/bin/../zookeeper-3.4.10.jar:/usr/local/zookeeper/bin/../src/java/lib/*.jar:/usr/local/zookeeper/bin/../conf:
    java.library.path=/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
    java.io.tmpdir=/tmp
    java.compiler=<NA>
    os.name=Linux
    os.arch=amd64
    os.version=3.10.0-1160.11.1.el7.x86_64
    user.name=root
    user.home=/root
    user.dir=/
    属性含义
    zookeeper.version 版本
    host.name host信息
    java.version java版本
    java.vendor 供应商
    java.home 运行环境所在目录
    java.class.path classpath
    java.library.path 第三方库指定非java类包的位置(如:dll,so)
    java.io.tmpdir 默认的临时文件路径
    java.compiler JIT 编译器的名称
    os.name Linux
    os.arch amd64
    os.version 3.10.0-514.el7.x86_64
    user.name zookeeper
    user.home /home/zookeeper
    user.dir /home/zookeeper/zookeeper2181/bin

    6、ruok命令

    • ruok:测试服务是否处于正确运行状态

    • shell终端输入:echo ruok| nc localhost 2181

    7、stat命令

      stat:输出服务器的详细信息与srvr相似,但是多了每个连接的会话信息

      shell终端输入:echo stat| nc localhost 2181

      • Zookeeper version 版本

      • Latency min/avg/max 延时

      • Received 收包

      • Sent 发包

      • Connections 连接数

      • Outstanding 堆积数

      • Zxid 最大事物id

      • Mode 服务器角色

      • Node count 节点数

    8、srst命令

      srst:重置server状态

      shell终端输入:echo srst| nc localhost 2181

    9、wchs命令

      wchs:列出服务器watches的简洁信息

      shell终端输入:echo wchs| nc localhost 2181

      • connectsions 连接数

      • watch-paths watch节点数

      • watchers watcher数量

    10、wchc命令

      wchc:通过session分组,列出watch的所有节点,它的输出的是一个与 watch 相关的会话的节点列表

      问题:

    wchc is not executed because it is not in the whitelist.

      解决方法:

    # 修改启动指令 zkServer.sh
    # 注意找到这个信息
    else
        echo "JMX disabled by user request" >&2
        ZOOMAIN="org.apache.zookeeper.server.quorum.QuorumPeerMain"
    fi
    # 下面添加如下信息
    ZOOMAIN="-Dzookeeper.4lw.commands.whitelist=* ${ZOOMAIN}"

      shell终端输入:echo wchc| nc localhost 2181

    11、wchp命令

      wchp:通过路径分组,列出所有的 watch 的session id信息

      问题:

    wchp is not executed because it is not in the whitelist.

      解决方法:

    # 修改启动指令 zkServer.sh
    # 注意找到这个信息
    else
        echo "JMX disabled by user request" >&2
        ZOOMAIN="org.apache.zookeeper.server.quorum.QuorumPeerMain"
    fi
    # 下面添加如下信息
    ZOOMAIN="-Dzookeeper.4lw.commands.whitelist=* ${ZOOMAIN}"

      shell终端输入:echo wchp| nc localhost 2181

    12、mntr命令

      mntr:列出服务器的健康状态

      • zk_version 版本

      • zk_avg_latency 平均延时

      • zk_max_latency 最大延时

      • zk_min_latency 最小延时

      • zk_packets_received 收包数

      • zk_packets_sent 发包数

      • zk_num_alive_connections 连接数

      • zk_outstanding_requests 堆积请求数

      • zk_server_state leader/follower 状态

      • zk_znode_count znode数量

      • zk_watch_count watch数量

      • zk_ephemerals_count 临时节点(znode)

      • zk_approximate_data_size 数据大小

      • zk_open_file_descriptor_count 打开的文件描述符数量

      • zk_max_file_descriptor_count 最大文件描述符数量

      shell终端输入:echo mntr| nc localhost 2181

  • 相关阅读:
    Quicksum -SilverN
    uva 140 bandwidth (好题) ——yhx
    uva 129 krypton factors ——yhx
    uva 524 prime ring problem——yhx
    uva 10976 fractions again(水题)——yhx
    uva 11059 maximum product(水题)——yhx
    uva 725 division(水题)——yhx
    uva 11853 paintball(好题)——yhx
    uva 1599 ideal path(好题)——yhx
    uva 1572 self-assembly ——yhx
  • 原文地址:https://www.cnblogs.com/jdy1022/p/14830714.html
Copyright © 2011-2022 走看看