唐山营销型网站建设,执法网站建设方案,曲靖网站建设,网站建设硬件要求ZooKeeper 的安装包括单机模式安装#xff0c;以及集群模式安装。
单机模式较简单#xff0c;是指只部署一个 zk 进程#xff0c;客户端直接与该 zk 进程进行通信。在开发测试环境下#xff0c;通常来说没有较多的物理资源#xff0c;因此我们常使用单机模式。
当然在单…ZooKeeper 的安装包括单机模式安装以及集群模式安装。
单机模式较简单是指只部署一个 zk 进程客户端直接与该 zk 进程进行通信。在开发测试环境下通常来说没有较多的物理资源因此我们常使用单机模式。
当然在单台物理机上也可以部署集群模式但这会增加单台物理机的资源消耗。故在开发环境中我们一般使用单机模式。
注意生产环境下不可用单机模式这是由于无论从系统可靠性还是读写性能单机模式都不能满足生产的需求。
1、单机安装
安装JDK
由于 zookeeper 依赖 java 环境所以我们需要安装 jdk官网建议最低安装 jdk 1.8 版本
# 安装JDK
tar -zxvf jdk-8u171-linux-x64.tar.gz -C /usr/local/
# 配置环境变量
vim /etc/profileJAVA_HOME/usr/local/jdk1.8.0_171PATH$JAVA_HOME/bin:$PATHCLASSPATH$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib/tools.jar export PATH JAVA_HOME CLASSPATH
source /etc/profile
安装ZooKeeper
# 下载软件ZooKeeper
wget https://dlcdn.apache.org/zookeeper/zookeeper-3.7.2/apache-zookeeper-3.7.2.tar.gz
--no-check-certificate
# 解压软件包
tar -zxvf apache-zookeeper-3.7.2.tar.gz -C /usr/local# 创建内存数据库快照存放目录
mkdir -p /data/zk/data
# 创建事务日志存放目录
mkdir -p /data/zk/datalog
注意如果不配置 datalog那么事务日志也会写在 data 目录中。这样会严重影响zk 的性能。因为在 zk 吞吐量很高的时候产生的事务日志和快照日志太多。
配置文件
# 复制一份配置文件
cd /usr/local/apache-zookeeper-3.7.2/conf
cp zoo_sample.cfg zoo.cfgvim zoo.cfg
#---------------------------------------配置文件-------------------------------
tickTime2000
initLimit10
syncLimit5
dataDir/data/zk/data
dataLogDir/data/zk/datalog
clientPort2181
#---------------------------------------配置文件------------------------------- tickTime 基本事件单元以毫秒为单位。它用来控制心跳和超时默认情况下最小的会话超时时间为两倍的 tickTime。 initLimit 这个配置项是用来配置 Zookeeper 接受客户端这里所说的客户端不是用户连接 Zookeeper 服务器的客户端而是 Zookeeper 服务器集群中连接到Leader 的 Follower 服务器初始化连接时最长能忍受多少个心跳时间间隔数。当已经超过 10 个心跳的时间也就是 tickTime长度后 Zookeeper 服务器还没有收到客户端的返回信息那么表明这个客户端连接失败。总的时间长度就是10*200020 秒 。 syncLimit 这个配置项标识 Leader 与 Follower 之间发送消息请求和应答时间长度最长不能超过多少个 tickTime 的时间长度总的时间长度就是 5*200010 秒。 dataDir 是存放内存数据库快照的位置存储数据的位置默认情况下Zookeeper将写数据的日志文件也保存在这个目录里。 dataLogDir 是事务日志目录 。用于配置服务器存储事务日志文件的目录默认值 dataDir,但是建议将两个目录分别配置防止磁盘的并发读写影响服务器性能。可将其配置在一个单独的磁盘上。 clientPort 是 client 连接的端口。不同的服务器可以设置不同的监听端口默认是 2181。
配置环境变量
这里必须是修改配置文件添加 path 环境变量不然启动报错
vim /etc/profile
#------------------------------------------------------------
export ZOOKEEPER_HOME/usr/local/apache-zookeeper-3.7.2
export PATH$PATH:$ZOOKEEPER_HOME/bin
#------------------------------------------------------------
source /etc/profile
启动服务
# 启动zooKeeper
zkServer.sh start# 查看java进程
jps -m # 查看 ZooKeeper 的状态
zkServer.sh status # 连接zookeeper客户端
zkCli.sh
# 或者
zkCli.sh -server localhost:2181 2、常用命令
查看节点
# 查看当前 ZooKeeper 中所包含的内容
ls /
创建节点
# 创建一个新的 znode
create /zkPro myData
# 再次查看内容
ls / 获取节点内容
# 获取的 znode 中的字符串
get /zkPro 修改节点内容
set /zkPro myData2
get /zkPro 删除节点
delete /zkPro
ls /