天天看点

ZooKeeper【环境搭建 01】【apache-zookeeper-3.6.0 单机版】【附设置参数说明】

我使用的安装文件是 apache-zookeeper-3.6.0-bin.tar.gz ,以下内容均以此版本进行说明。

1.安装配置

  1. 在安装包所在文件夹下解压并移动到 /usr/local/ 文件夹下
tar -zxvf apache-zookeeper-3.6.0-bin.tar.gz
mv ./apache-zookeeper-3.6.0-bin/ /usr/local/zookeeper
           
  1. 配置环境变量

配置环境变量的方法比较多,这里统一将环境变量放在 /etc/profile.d/my_env.sh 内。

# 配置环境变量:
vim /etc/profile.d/my_env.sh
# 添加 ZOOKEEPER_HOME 和 PATH
export ZOOKEEPER_HOME=/usr/local/zookeeper
export PATH=$PATH:$ZOOKEEPER_HOME/bin
# 使得配置的环境变量立即生效:
	# 首先是要赋权限【只操作一次就行】
	chmod +x /etc/profile.d/my_env.sh
source /etc/profile.d/my_env.sh
           
  1. 修改配置

进入${ZOOKEEPER_HOME}/conf/ 目录下,拷贝配置样本并进行修改:

指定数据存储目录和日志文件目录(目录不用预先创建,程序会自动创建),修改后完整配置如下:

[email protected] conf]# vim zoo.cfg
# 无关注释不再贴出
# 主要是配置这两个文件夹【默认也是可以的 为了日后的卸载及查看日志 设置一下比较好】
dataDir=/usr/local/zookeeper/data
dataLogDir=/usr/local/zookeeper/log
# 以下是默认值
tickTime=2000
initLimit=10
syncLimit=5
clientPort=2181
           

配置参数说明:

  • tickTime:用于计算的基础时间单元。比如 session 超时:N*tickTime;
  • initLimit:用于集群,允许从节点连接并同步到 master 节点的初始化连接时间,以tickTime 的倍数来表示;
  • syncLimit:用于集群, master 主节点与从节点之间发送消息,请求和应答时间长度(心跳机制);
  • dataDir:数据存储位置;
  • dataLogDir:日志目录;
  • clientPort:用于客户端连接的端口,默认 2181

2.启动验证

由于已经配置过环境变量,直接使用下面命令启动即可:

[[email protected] /]# zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
           

使用 jps 验证进程是否已经启动,出现 QuorumPeerMain 则代表启动成功:

[[email protected] /]# jps
19458 NameNode
19863 SecondaryNameNode
16071 Jps
19609 DataNode
15934 QuorumPeerMain
           

也可以登录客户端进行测试:

[[email protected] /]# zkCli.sh
[zk: localhost:2181(CONNECTED) 0] version
ZooKeeper CLI version: 3.6.0--b4c89dc7f6083829e18fae6e446907ae0b1f22d7, built on 02/25/2020 14:38 GMT
           

至此,zookeeper单机版部署成功。