赞
踩
yum -y install wget
(1) 把此脚本复制保存为install_zookeeper.sh文件
#!/bin/bash # 使用shell脚本在centos上进行zookeeper自动化安装(单机版) # 安装版本,可以修改为自己要安装的版本 version="3.4.14" # 安装目录,可以修改为自己要安装的目录 installDir="/opt/module" # 下载地址 downloadUrl="https://archive.apache.org/dist/zookeeper/zookeeper-$version/zookeeper-$version.tar.gz" # 检查安装目录是否存在,不存在则创建 if [ ! -d "${installDir}" ]; then echo "创建安装目录..." sudo mkdir -p "${installDir}" fi # 下载并解压 ZooKeeper echo "开始下载ZooKeeper..." wget "$downloadUrl" -P /tmp echo "开始解压ZooKeeper..." tar -zxf "/tmp/zookeeper-$version.tar.gz" -C "${installDir}" # 更改安装目录权限为当前用户 # sudo chown -R "$(whoami)" "${installDir}" # 设置zookeeper用户环境变量 echo >> ~/.bashrc echo '#ZOOKEEPER_HOME' >> ~/.bashrc echo "export ZOOKEEPER_HOME=${installDir}/zookeeper-${version}" >> ~/.bashrc echo 'export PATH=$PATH:$ZOOKEEPER_HOME/bin' >> ~/.bashrc # 配置 ZooKeeper echo "配置 ZooKeeper..." cp "${installDir}/zookeeper-${version}/conf/zoo_sample.cfg" "${installDir}/zookeeper-${version}/conf/zoo.cfg" # 修改快照所在目录 # sed: 是一个流式文本编辑器。-i: 表示直接在原始文件上进行修改。s: 表示替换操作。 # |^dataDir=.*|: 是一个正则表达式模式,用于匹配以dataDir=开头的行。其中,^表示行的开头,.*表示任意字符的重复。 sed -i "s|^dataDir=.*|dataDir=${installDir}/zookeeper-${version}/zk_snapshot|" "${installDir}/zookeeper-${version}/conf/zoo.cfg" echo "修改快照所在目录为:${installDir}/zookeeper-${version}/zk_snapshot" rm -rf /tmp/zookeeper-$version.tar.gz echo "zookeeper安装包删除完成" echo "ZooKeeper 安装完成!"
(2) 增加执行权限
切换到install_zookeeper.sh所在的目录
chmod a+x install_zookeeper.sh
(3) 执行install_zookeeper.sh等待下载安装配置完成
./install_zookeeper.sh
(4) 加载用户环境变量
source ~/.bashrc
(5) 启动zookeeper
zkServer.sh start
(6) 查看启动状态
zkServer.sh status
如下图所示,单机模式启动成功
(7) 进入zookeeper客户端
zkCli.sh
成功如下图所示:
列出指定路径下的子节点。
ls /
获取指定节点的详细信息,包括版本号、创建时间等。
stat /zookeeper
创建一个新的路径节点,并设置数据内容和访问控制列表(ACL)。可以选择顺序创建(-s)和临时节点(-e)。
create /mynode "Hello Zookeeper!"
或
create /mynode "Hello Zookeeper!" world:anyone:cdrwa
设置指定节点的数据,会覆盖原有的数据。
set /mynode "Hello Zookeeper! new"
获取指定节点的数据。
get /mynode
删除指定节点。
delete /mynode
获取指定节点的访问控制列表(ACL)信息。
getAcl /mynode
设置指定节点的访问控制列表(ACL)信息。
setAcl /mynode world:anyone:r
“world” 表示权限的范围或域。
“anyone” 表示被授权的主体。在这里指所有用户都具有这些权限。
“cdrwa” 是一种权限控制表示方式,它代表了不同的权限。
c:表示具有读取(get)节点数据的权限。
d:表示具有删除(delete)节点的权限。
r:表示具有获取子节点(ls)的权限。
w:表示具有写入(set)节点数据的权限。
a:表示具有创建(create)子节点的权限。
设置指定路径节点的配额限制。可以设置节点数量限制(-n)或节点字节大小限制(-b)。
删除指定路径节点的配额限制。可以选择删除节点数量限制(-n)或节点字节大小限制(-b)。
更详细地列出指定路径节点的子节点,包括每个子节点的详细信息。
递归删除指定路径节点及其所有子节点。
显示最近执行的命令历史记录。
重新执行指定序号的历史命令。
打开或关闭监视模式,用于显示与会话相关的观察器。
等待指定路径节点的同步完成。
显示指定路径节点的配额限制信息。
使用指定的身份验证方案和凭据进行身份验证。
连接到指定的ZooKeeper服务器。
关闭与ZooKeeper服务器的连接。
退出ZooKeeper CLI。
获取帮助信息,列出可用的命令。
这期到此结束,下一期出zookeeper集群自动化下载安装配置。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。