Zookeeper

1,安装配置(linux版)

1.1 下载安装包(按照所需下载)

    Index of /dist/zookeeper (apache.org)https://archive.apache.org/dist/zookeeper/

1.2 创建目录,上传到software目录

mkdir /opt/software  

1.3 解压到指定目录(opt/module/)

tar -zxvf apache-zookeeper-3.5.7-bin.tar.gz -C /opt/module/

1.4 创建dataDir目录

cd apache-zookeeper-3.5.7-bin/ #进入zookeeper目录下
mkdir data

1.5 添加配置文件(zoo.cfg)

cd conf #打开cong目录
cp zoo_sample.cfg zoo.cfg #复制原配置文件,并重新命名

1.6 修改配置文件

dataDir=/opt/module/apache-zookeeper-3.5.7-bin/data

1.7 环境配置

为了能够在任意目录启动zookeeper集群,我们需要配置环境变量,否则每次启动zookeeper需要到安装文件的 bin 目录下去启动。

vim /etc/profile   #打开文件

#写入文件
export ZK_HOME="/opt/module/apache-zookeeper-3.5.7-bin"
export PATH="$PATH:$ZK_HOME/bin"

source /etc/profile #保存使之生效

 echo $PATH  #查看是否生效

1.8 启动服务

​启动命令:zkServer.sh start

停止命令:zkServer.sh stop

重启命令:zkServer.sh restart

查看集群节点状态:zkServer.sh status
​

1.8 启动客户端

zkCli.sh -server (ip地址/或者主机名称)

2,集群配置

2.1 在设置的data目录下,创建文件 myid,并输入服务编号

cat >>myid
0
#回车输入服务编号,然后ctrl+Z退出

2.2 在conf/zoo.cfg文件中加入:

server.1=192.168.159.128:2888:3888
server.2=192.168.159.129:2888:3888
server.3=192.168.159.130:2888:3888

server.A=B:C:D

    A:其中 A 是一个数字,表示这个是服务器的编号,也就是myid中写的数字;

    B:是这个服务器的 ip 地址;

    C:Zookeeper服务器之间的通信端口;默认:2888

    D:Leader选举的端口。默认:3888

2.3  启动失败:

原因:

1)未关闭防火墙:

systemctl stop firewalld | systemctl disable firewalld #关闭禁用防火墙

 2)没有按照顺序启动(参考2.2,server的顺序)

    按照顺序依次启动,然后再依次查看状态

3,节点介绍

3.1 节点类型

根据zookeeper的节点类型,可分类如图表所示:

类型描述
PERSISTENT持久节点
PERSISTENT_SEQUENTIAL持久序号节点
EPHEMERAL临时节点(不可在拥有子节点,且会在客户端会话断开后自动删除)
EPHEMERAL_SEQUENTIAL临时序号节点(不可在拥有子节点,且会在客户端会话断开后自动删除)

3.2 节点属性

属性    含义
cZxid   创建节点时的事务ID

ctime  

 创建节点时的时间
mtime 最后修改节点的时间

mZxid  

 最后修改节点时的事务ID
pZxid    表示该节点的子节点列表最后一次修改的事务ID,添加子节点或删除子节点就会影响子节点列表,但是修改子节点的数据内容则不影响该ID(注意,只有子节点列表变更了才会变更pzxid,子节点内容变更不会影响pzxid)
cversion   子节点版本号,子节点每次修改版本号加1
dataVersion    数据版本号,数据每次修改该版本号加1
aclVersion   权限版本号,权限每次修改该版本号加1
ephemeralOwner   创建该临时节点的会话的sessionID。(如果该节点是持久节点,那么这个属性值为0)
dataLength    该节点的数据长度
numChildren   直接子节点的数量

3.3 节点监听

客户端使用时添加 -w 参数可实时监听节点与子节点的变化,并且实时收到通知。非常适用保障分布式情况下的数据一至性。其使用方式如下:

命令描述
ls -w path监听子节点的变化(增,删)
get -w path监听节点数据的变化
stat -w path监听节点属性的变化
printwatches on|off触发监听后,是否打印监听事件(默认on)

4,常用基本命令

1,创建节点

create 
  -s(有序号就写,无序号不写)
  -e(临时的写,不是就不写)
  / 路径(可以多层路径,也可以直接写节点名称)
  "节点的值" 可以不写,默认为null

例如:
create -s -e /kangyy "kangyy"  #创建了一个临时有序的节点,且值为kangyy

2,修改节点数据

set /路径 "节点值"

例如:
set /knagyy "kangyy"

3,查看节点数据

get -s /kangyy

4,删除节点

delete  /节点     #删除单个节点

deleteall  /节点    #删除整个路径下的所有节点

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值