ZooKeeper 是一个针对大型分布式系统的可靠协调系统;它提供的功能包括:配置维护、名字服务、分布式同步、组服务等; 它的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户; ZooKeeper 已经成为 Hadoop 生态系统中的基础组件。
Zookeeper可以选择Apache版本,也可以选择Cloudera版本。
- 下载Apache版本的Zookeeper。
- 下载Cloudera版本的Zookeeper。
1.下载Zookeeper
这里选择cdh版本的zookeeper-3.4.5-cdh5.10.0.tar.gz,将下载好的安装包上传至bigdata-pro01.kfk.com节点的/opt/softwares目录下。
[kfk@bigdata-pro01 ~]$ cd /opt/softwares/
[kfk@bigdata-pro01 softwares]$ rz
[kfk@bigdata-pro01 softwares]$ ls
hadoop-2.6.0.tar.gz jdk-8u60-linux-x64.tar.gz zookeeper-3.4.5-cdh5.10.0.tar.gz //选择cdh版本的原因是带源码并且兼容性更佳
2.解压Zookeeper
[kfk@bigdata-pro01 softwares]$ tar -zxf zookeeper-3.4.5-cdh5.10.0.tar.gz -C /opt/momdules/
[kfk@bigdata-pro01 softwares]$ cd ../momdules/
[kfk@bigdata-pro01 momdules]$ ls
hadoop-2.6.0 jdk1.8.0_60 zookeeper-3.4.5-cdh5.10.0
[kfk@bigdata-pro01 momdules]$ cd zookeeper-3.4.5-cdh5.10.0/
[kfk@bigdata-pro01 zookeeper-3.4.5-cdh5.10.0]$ ll
total 1580
drwxr-xr-x 2 kfk kfk 4096 Oct 17 07:57 bin
-rw-rw-r-- 1 kfk kfk 90 Jan 21 2017 build.properties
-rw-rw-r-- 1 kfk kfk 79318 Jan 21 2017 build.xml
-rw-rw-r-- 1 kfk kfk 75877 Jan 21 2017 CHANGES.txt
drwxr-xr-x 4 kfk kfk 4096 Oct 17 07:57 cloudera
-rw-rw-r-- 1 kfk kfk 6647 Jan 21 2017 cloudera-pom.xml
drwxr-xr-x 2 kfk kfk 4096 Oct 17 07:57 conf
drwxr-xr-x 10 kfk kfk 4096 Jan 21 2017 contrib
drwxr-xr-x 2 kfk kfk 4096 Oct 17 07:57 dist-maven
drwxr-xr-x 6 kfk kfk 4096 Oct 17 07:57 docs
-rw-rw-r-- 1 kfk kfk 1953 Jan 21 2017 ivysettings.xml
-rw-rw-r-- 1 kfk kfk 3234 Jan 21 2017 ivy.xml
drwxr-xr-x 4 kfk kfk 4096 Oct 17 07:57 lib
drwxr-xr-x 2 kfk kfk 4096 Oct 17 07:57 libexec
-rw-rw-r-- 1 kfk kfk 11358 Jan 21 2017 LICENSE.txt
-rw-rw-r-- 1 kfk kfk 170 Jan 21 2017 NOTICE.txt
-rw-rw-r-- 1 kfk kfk 1770 Jan 21 2017 README_packaging.txt
-rw-rw-r-- 1 kfk kfk 1585 Jan 21 2017 README.txt
drwxr-xr-x 5 kfk kfk 4096 Jan 21 2017 recipes
drwxr-xr-x 2 kfk kfk 4096 Oct 17 07:57 sbin
drwxr-xr-x 3 kfk kfk 4096 Jan 21 2017 share
drwxr-xr-x 8 kfk kfk 4096 Oct 17 07:57 src
-rw-rw-r-- 1 kfk kfk 1352380 Jan 21 2017 zookeeper-3.4.5-cdh5.10.0.jar
-rw-rw-r-- 1 kfk kfk 33 Jan 21 2017 zookeeper-3.4.5-cdh5.10.0.jar.md5
-rw-rw-r-- 1 kfk kfk 41 Jan 21 2017 zookeeper-3.4.5-cdh5.10.0.jar.sha1
3.修改配置
1)修改配置文件zoo.cfg
[kfk@bigdata-pro01 zookeeper-3.4.5-cdh5.10.0]$ cd conf/
[kfk@bigdata-pro01 conf]$ ls
configuration.xsl log4j.properties zoo_sample.cfg
然后用notepad++进行连接。
文件内容解析:
#这个时间是作为Zookeeper服务器之间或客户端与服务器之间维持心跳的时间间隔
tickTime=2000
#配置 Zookeeper 接受客户端初始化连接时最长能忍受多少个心跳时间间隔数。
initLimit=10
#Leader 与 Follower 之间发送消息,请求和应答时间长度
syncLimit=5
#数据目录需要提前创建
dataDir=/opt/modules/zookeeper-3.4.5-cdh5.10.0/zkData
#访问端口号
clientPort=2181
#server.每个节点服务编号=服务器ip地址:集群通信端口:选举端口
server.1=bigdata-pro01.kfk.com:2888:3888
server.2=bigdata-pro02.kfk.com:2888:3888
server.3=bigdata-pro03.kfk.com:2888:3888
新建一个数据目录:
[kfk@bigdata-pro01 zookeeper-3.4.5-cdh5.10.0]$ mkdir -p zkData
[kfk@bigdata-pro01 zookeeper-3.4.5-cdh5.10.0]$ cd zkData/
[kfk@bigdata-pro01 zkData]$ pwd
/opt/momdules/zookeeper-3.4.5-cdh5.10.0/zkData
然后修改文件中的目录:
创建myid文件(内容为节点编号1/2/3):
4.分发各个节点
将Zookeeper安装配置分发到其他两个节点,具体操作如下所示:
scp -r zookeeper-3.4.5-cdh5.10.0/ bigdata-pro02.kfk.com:/opt/momdules/
scp -r zookeeper-3.4.5-cdh5.10.0/ bigdata-pro03.kfk.com:/opt/momdules/
然后修改各个节点的数据存储目录下的myid文件内容为节点对应编号。
#bigdata-pro02.kfk.com节点
vi myid
2
#bigdata-pro03.kfk.com节点
vi myid
3
5.启动Zookeeper服务
1)各个节点使用如下命令启动Zookeeper服务
bin/zkServer.sh start
2)查看各个节点服务状态
bin/zkServer.sh status
3)查看Zookeeper目录树结构
bin/zkCli.sh
4)关闭各个节点服务
bin/zkServer.sh stop
以上就是博主为大家介绍的这一板块的主要内容,这都是博主自己的学习过程,希望能给大家带来一定的指导作用,有用的还望大家点个支持,如果对你没用也望包涵,有错误烦请指出。如有期待可关注博主以第一时间获取更新哦,谢谢!同时也欢迎转载,但必须在博文明显位置标注原文地址,解释权归博主所有!