1.zookeepe介绍
ZooKeeper 是一个针对大型分布式系统的可靠协调系统;它提供的功能包括:配置维护、名字服务、分布式同步、组服务等; 它的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户; ZooKeeper 已经成为 Hadoop 生态系统中的基础组件。
主要版本有如下几个:
2.zookeeper完全分布式集群安装与配置
1. zookeeper下载
zookeeper主要有两个版本:一个是Apache版本,一个是Cloudera版本
1)下载Apache的版本的Zookeper
2)下载Cloudera版本的Zookeeper
我这里下载的是Cloudera版本的zookeeper-3.4.5-cdh5.9.3.tar.gz,将下载好的zookeeper上传到bigdata-pro01.com节点的/opt/softwares目录下。
2.zookeeper安装
- 解压Zookeeper
tar -xzf zookeeper-3.4.5-cdh5.9.3.tar.gz -C /opt/modules/
-修改配置
1)进入到配置文件所在目录:
cd /opt/modules/zookeeper-3.4.5-cdh5.9.3/conf
2)将模板复制成配置文件
cp zoo_sample.cfg zoo.cfg
3)配置zoo.cfg,修改配置项dataDir
介绍一下各个配置项的作用:
- 这个时间是作为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
使用vim修改配置文件:
vim zoo.cfg
如图,根据自己的主机名或者ip进行配置要配置的项主要是dataDir和server
- 分发各个节点
将配置文件发送到其余机器上:
cd /opt/modules
scp -r zookeeper-3.4.5-cdh5.9.3/ kfk@bigdata-pro03.kfk.com:/opt/modules/
scp -r zookeeper-3.4.5-cdh5.9.3/ kfk@bigdata-pro02.kfk.com:/opt/modules/
- 创建相关目录和文件(每台机器都要操作)
1)进入到目录/opt/modules/zookeeper-3.4.5-cdh5.9.3/下
cd /opt/modules/zookeeper-3.4.5-cdh5.9.3/zkData
2)创建datadir配置项指定的目录zkData
mkdir /opt/modules/zookeeper-3.4.5-cdh5.9.3/zkData
3)在zkData下创建myid文件并根据不同节点编辑内容(此文件用于识别主从节点,此处我们默认bigdataa-pro01为主,其余为从)
bigdata-pro01机器中填写:1
bigdata-pro02机器中填写:2
bigdata-pro03机器中填写:3
如下图所示:
- 启动zookeeper服务
进入到/opt/modules/zookeeper-3.4.5-cdh5.9.3下或者配置环境变量/etc/profile使命令可以在任何目录下直接运行
1)各个节点使用如下命令启动Zookeeper服务
bin/zkServer.sh start
2)查看各个节点服务状态
bin/zkServer.sh status
3)关闭各个节点服务
bin/zkServer.sh stop
4)查看Zookeeper目录树结构
bin/zkCli.sh