1.1 Zookeeper

1.1.1 Zookeeper介绍

ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的性能包含:配置保护、域名服务、分布式同步、组服务等。

ZooKeeper的指标就是封装好简单易出错的要害服务,将简略易用的接口和性能高效、性能稳固的零碎提供给用户。

ZooKeeper蕴含一个简略的原语集,提供Java和C的接口。

ZooKeeper代码版本中,提供了分布式独享锁、选举、队列的接口,代码在zookeeper-3.4.3srcrecipes。其中散布锁和队列有Java和C两个版本,选举只有Java版本。

总结:Zookeeper负责服务的协调调度.当客户端发动申请时,返回正确的服务器地址.

1.1.2 Zookeeper下载

网址: [http://zookeeper.apache.org/r...]

如图-2所示

图-2

下载门路,点击download.

如图-3所示

图-3

下载Zookeeper地址.

http://mirrors.hust.edu.cn/apache/zookeeper/

如图-4所示

图-4

1.2 Zookeeper装置

1.2.1 装置JDK

将JDK1.8文件上传到Linux操作系统中/src/usr/local/java/文件下.

如图-5所示

图-5

1.解压文件

tar -xvf jdk-8u51-linux-x64.tar.gz

2.配置环境变量

编辑环境变量配置文件

vim /etc/profile

如图-6所示

图-6

使JDK失效,之后查看jdk装置是否胜利

source /etc/profile

如图 -7所示

图-7

1.2.2 上传安装文件

阐明:上传zookeeper安装文件.之后解压.

如图-8所示

图-8

解压目录:

tar -xvf zookeeper-3.4.8.tar.gz

1.2.3 批改配置文件

在zk根目录下创立文件夹data/log

mkdir data log

如图-9所示

图-9

跳入conf目录中批改配置文件

复制配置文件并且批改名称

cp zoo_sample.cfg zoo.cfg

如图-10所示

图-10

1.2.4 启动zk

跳转到bin目录中 zk启动敞开命令如下.

sh zkServer.sh start 或者 ./zkServer.sh start

sh zkServer.sh stop

sh zkServer.sh status

如图-11所示

图-11

1.3 Zookeeper集群装置

1.3.1 筹备文件夹

在zookeeper根目录中创立新的文件夹zkCluster.

如图-12所示

图-12

如图-13所示

创立zk1/zk2/zk3文件夹.

图-13

在每个文件夹里创立data/log文件夹.

mkdir {zk1,zk2,zk3}/{data,log}

如图-14所示

图-14

1.3.2 增加myid文件

别离在zk1/zk2/zk3中的data文件夹中创立新的文件myid.其中的内容顺次为1/2/3,与zk节点号对应.

如图-15所示

图-15

编辑myid文件,定义编号.

如图-16所示

图-16

1.3.3 编辑配置文件

将zoo_sample.cfg 复制为zoo1.cfg之后批改配置文件.

如图-17所示

图-17

1.3.4 批改zoo1.cfg

如图-18所示

图-18

配置实现后将zoo1.cfg复制2份.之后须要批改对应的文件夹目录.和不同的端口即可.

1.3.5 ZK集群测试

通过上面的命令启动zk集群.

sh zkServer.sh start   zoo1.cfg

sh zkServer.sh stop zoo1.cfg

sh zkServer.sh status  zoo1.cfg

查看主从关系,从机状况阐明.

如图-19所示

图-19

查看主从关系,主机状况阐明.

如图-20所示

图-20

1.3.6 对于zookeeper集群阐明

Zookeeper集群中leader负责监控集群状态,follower次要负责客户端链接获取服务列表信息.同时参加投票.