Zookepper启动报错
- 启动Zookepper服务端命令:[root@zhaohj apache-zookeeper-3.5.8-bin]# ./bin/zkServer.sh start conf/zoo.cfg
- 报错提示:Error: JAVA_HOME is not set and java could not be found in PATH.
1. 了解Zookepper
2. Zookepper一系列命令
(1) 下载解压
(2) 重命名以及启动
重命名cfg文件 |
启动server |
cp zoo_sample.cfg zoo.cfg |
[root@zhaohj apache-zookeeper-3.5.8-bin]# ./bin/zkServer.sh start conf/zoo.cfg |
接下来就发生了报错:JAVA_HOME is not set and java could not be found in PATH.
3. 报错解决方案
(1) 配置linux环境下jdk环境变量
- 切换到 etc目录,然后vim profile ,添加环境变量
# set java env
export JAVA_HOME=/usr/local/jdk1.8.0_333
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
java -version
java version "1.8.0_333"
Java(TM) SE Runtime Environment (build 1.8.0_333-b02)
Java HotSpot(TM) 64-Bit Server VM (build 25.333-b02, mixed mode)
4.报错解决之后客户端启动
- 因为是装在本机,所以直接去链接
- [root@zhaohj apache-zookeeper-3.5.8-bin]# ./bin/zkCli.sh
- 若不在本机
- [root@zhaohj apache-zookeeper-3.5.8-bin]# ./bin/zkCli.sh ‐server ip:port
- 至此,Zookepper启动成功
5.Zookepper命令
[zk: localhost:2181(CONNECTED) 0] ls /zookeeper
[config, quota]
[zk: localhost:2181(CONNECTED) 3] ls -R /
/
/zookeeper
/zookeeper/config
/zookeeper/quota
#带[]的为可选参数,否则为必填参数
-s: 顺序节点 -e: 临时节点 -c: 容器节点 -t: 可以给节点添加过期时间,默认禁用,需要通过系统参数启用
若不加参数就会默认创建持久化节点 例如:create /test
create [-s] [-e] [-c] [-t ttl] path [data] [acl]
有顺序的节点,最大顺序为2的32次方
创建临时节点
[[zk: localhost:2181(CONNECTED) 1] create -e /zhaohj
[Created /zhaohj
获取临时节点
[zk: localhost:2181(CONNECTED) 3] get -s /zhaohj
null (创建时序号)
cZxid = 0xf (创建节点的事务请求id,依次递增)
ctime = Thu Jun 09 22:21:55 CST 2022 (创建时间)
mZxid = 0xf (修改节点的事务请求id,依次递增)
mtime = Thu Jun 09 22:21:55 CST 2022 (修改时间)
pZxid = 0xf (子节点事务id,子节点发生变化时与子节点绑定)
cversion = 0 (子节点版本id)
dataVersion = 0 (乐观锁)
aclVersion = 0 (权限控制)
ephemeralOwner = 0x1000002050c0003 (16进制的串,相当于sessionid,若过期该节点会被服务端销毁)
dataLength = 0 (数据长度)
numChildren = 0 (子节点个数)
创建临时顺序节点
[zk: localhost:2181(CONNECTED) 6] create -e -s /seq-ephemeral
创建ttl节点
创建ttl节点需要开启配置 -Dzookeeper.extendedTypesEnabled=true
[zk: localhost:2181(CONNECTED) 9] create -t 5000 /ttl-node zzz
6.事件监听机制