ZooKeeper
官网:http://zookeeper.apache.org/
介绍:Apache ZooKeeper致力于开发和维护开源服务器,实现高度可靠的分布式协调
ZooKeeper是一种集中式服务,用于维护配置信息,命名,提供分布式同步和提供组服务。所有这些类型的服务都以分布式应用程序的某种形式使用。每次实施它们都需要做很多工作来修复不可避免的错误和竞争条件。由于难以实现这些类型的服务,应用程序最初通常会吝啬它们,这使得它们在变化的情况下变得脆弱并且难以管理。即使正确完成,这些服务的不同实现也会在部署应用程序时导致管理复杂性
1、ZooKeeper工作原理
ZooKeeper功能:存储+监听
2、ZooKeeper角色
主从结构
1)Leader领导者-》主
2)Follower追随者-》从
3)ZooKeeper由一个领导者多个追随者组成
ZK集群中只要有半数以上的节点存活,zk集群就能正常工作。所以搭建ZK集群最好搭建
奇数台(3,5,11)
3、ZooKeeper功能
大数据中使用ZooKeeper业务
1)做统一的配置管理
2)做统一的命名服务
3)做统一的集群管理
4)做服务器的动态上下线感知(代码)
4、单节点安装部署
1)下载安装包
2)上传安装到linux
alt+p
3)解压
tar -zxvf zookeeper-3.4.10.tar.gz -C hd/
4)修改配置文件
重命名:mv zoo_sample.cfg zoo.cfg
5)创建文件夹zkData
添加到配置文件:zoo.cfg
dataDir=/root/hd/zookeeper-3.4.10/zkData
6)启动ZooKeeper
bin/zkServer.sh start
7)启动ZooKeeper客户端
bin/zkCli.sh
5、ZooKeeper集群安装部署
1)下载安装包
2)上传安装到linux
alt+p
3)解压
$ tar -zxvf zookeeper-3.4.10.tar.gz -C hd/
4)修改配置文件名
重命名:mv zoo_sample.cfg zoo.cfg
或者拷贝:cp zoo_sample.cfg zoo.cfg
5)修改配置
vi zookeeper-3.4.10/conf/zoo.cfg
dataDir=/root/hd/zookeeper-3.4.10/zkData
—————-zkconfig————
server.1=hsiehchou121:2888:3888
server.2=hsiehchou122:2888:3888
server.3=hsiehchou123:2888:3888
server.4=hsiehchou124:2888:3888
创建文件myid
添加服务器编号:1
[root@hsiehchou121 zookeeper-3.4.10]# cd zkData/
[root@hsiehchou121 zkData]# touch myid
6)拷贝ZooKeeper到其它机器
scp -r zookeeper-3.4.10/ hsiehchou122:$PWD
scp -r zookeeper-3.4.10/ hsiehchou123:$PWD
scp -r zookeeper-3.4.10/ hsiehchou124:$PWD
7)注意需要修改每台机器的myid文件
设置为当前的机器编号即可
8)启动ZooKeeper集群
bin/zkServer.sh start
9)查看ZooKeeper状态
bin/zkServer.sh status