Zookeeper(二)

87 阅读3分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第15天,点击查看活动详情


4. 安装

4.1 linux系统安装

# 1.安装jdk并配置环境变量

因为zookeeper是由java写的,所以我们要先安装JDK环境

https://www.oracle.com/java/technologies/downloads/#java8
下载 JDK 在linux环境下的安装包 jdk-8u341-linux-x64.rpm
然后上传到Linux上
执行下面命令安装jdk

rpm -ivh jdk-8u341-linux-x64.rpm

然后就是配置环境变量
vim /etc/profile
最后两行

export JAVA_HOME=/usr/java/jdk1.8.0_341-amd64
export PATH=$PATH:$JAVA_HOME/bin

然后保存退出
执行下面命令使刚才配置生效(好处是无需重启Linux操作系统)
source /etc/profile
然后执行下面命令看java环境是否配置成功
java -version

# 下载zk安装包
- http://archive.apache.org/dist/zookeeper/zookeeper-3.4.12/zookeeper-3.4.12.tar.gz
下载安装包上传到linux服务器中

# 2.解压缩zookeeper安装包
-	tar -zxvf zookeeper-3.4.12.tar.gz

# 3.重命名安装目录(名字可改可不改,这里是为了后续用起来方便)
-	mv zookeeper-3.4.12 zk

# 4.配置zoo.cfg配置文件
-	1.重命名zk的conf目录下的zoo_simple.cfg为zoo.cfg,然后修改里面的内容
cd /root/zk/conf
mv zoo_sample.cfg zoo.cfg
vim zoo.cfg

  tickTime=2000
  initLimit=10
  syncLimit=5
  dataDir=/usr/zookeeper/zkdata									
  clientPort=2181																

解释一下上面配置文件的内容:
tickTime: 集群结点之间的心跳时间,单位毫秒
initLimit:初始化限制,同步阶段的心跳次数,我们在刚刚搭建好集群的时候,集群结点之间为了发现彼此,我们
					 需要等待集群结点之间信息一致性的同步,initLimit表示同步次数,同步时间为同步次数 * 每次时
					 间,表示初始化集群时集群结点同步超时时间为几个心跳时间
syncLimit:同步限制,表示次数, 表示集群在运行过程中同步数据的超时时间为几个心跳时间
dataDir: 表示zk运行的过程中产生的数据存放在哪里 
clientPort:表示zk服务监听的端口号

还有一些参数,不过默认已经注释掉了
#maxClientCnxns:表示客户端最大连接数,默认客户端最大连接数为60个
#autopurge.snapRetainCount:快照数量达到这个值就会对快照做一个合并,默认为3
#autopurge.purgeInterval:自动合并的时间,单位是小时,例如,两个小时快照达到3个以上做一次合并,默认为1

# 5.启动zk
-	在zk的目录下,运行bin目录下zkServer.sh
	 cd /root/zk
	 
	./bin/zkServer.sh start /root/zk/conf/zoo.cfg
	
# 6.使用jps查看启动是否成功
	jps											jps是jdk提供的查看java相关的进程,zookeeper是由java编写的,所以可以查看

	显示:
	3426 Jps
	3387 QuorumPeerMain			这个就是zk的进程

# 7.启动客户端连接到zk
	在zk的目录下,运行bin目录下zkCli.sh 
	cd /root/zk

  ./bin/zkCli.sh -server 192.168.204.132:2181						
  注:如果连接的是自己机器上的zookeeper,-server以及后面的ip和端口 可以不用加
	注意:可以通过  ./bin/zkCli.sh help 查看客户端所有可以执行的指令
	
	显示的内容最后一行显示大概如下说明安装成功:
	[zk: 192.168.204.132:2181(CONNECTED) 0]