apache-zookeeper-3.6.3-bin.tar.gz
zookeeper镜像地址:https://dlcdn.apache.org/zookeeper/zookeeper-3.6.3/
zookeeper官网:https://zookeeper.apache.org/
zookeeper下载:https://zookeeper.apache.org/releases.html
zookeeper3.6.3文档:http://zookeeper.apache.org/doc/r3.6.3/index.html
参数配置解释:http://zookeeper.apache.org/doc/r3.6.3/zookeeperAdmin.html#id_multi_address
zookeeper特点:
zookeeper集群:leader 代表主节点,follower 代表从节点。
集群只要有半数以上节点存活,zookeeper集群就能正常服务。
全局数据一致,每个server保存一份相同的数据副本,client无论链接到哪个server,数据都是一致。
更新请求顺序进行,来自同一个client的更新请求按发送顺序依次执行。
数据更新原子性,依次数据更新要么成功,要么失败。
实时性,在一定时间范围内,client读取到最新数据。
图例:
单机模式
1.jdk 之前hadoop1上的默认jdk
java version "1.8.0_181"
2.解压文件并重命名
tar -zxvf apache-zookeeper-3.6.3-bin.tar.gz
mv apache-zookeeper-3.6.3-bin apache-zookeeper-3.6.3
cd apache-zookeeper-3.6.3
3.复制配置文件
cd conf
cp zoo_sample.cfg zoo.cfg
cd apache-zookeeper-3.6.3
创建存储文件夹
mkdir zkdata
4.修改文件zoo.cfg
#存储内存数据库快照的位置,除非另有说明,否则存储数据库更新的事务日志。
dataDir=/apps/bigdata/apache-zookeeper-3.6.3/zkdata
#ZooKeeper 使用的基本时间单位,以毫秒为单位。它用于进行心跳,最小会话超时将是tickTime 的两倍。
tickTime=2000
#监听客户端连接的端口
clientPort=2181
5.启动zookeeper
bin/zkServer.sh start
查看进程
jps
显示如下QuorumPeerMain
查看状态
bin/zkServer.sh status
停止服务
bin/zkServer.sh stop
6.链接客户端
bin/zkCli.sh
或
bin/zkCli.sh -server 127.0.0.1:2181
查看/根目录
ls /
退出
quit
集群模式
hadoop1hadoop2hadoop3
1.jdk 之前hadoop1上的默认jdk
java version "1.8.0_181"
2.解压文件并重命名
tar -zxvf apache-zookeeper-3.6.3-bin.tar.gz
mv apache-zookeeper-3.6.3-bin apache-zookeeper-3.6.3
cd apache-zookeeper-3.6.3
3.复制配置文件
cd conf
cp zoo_sample.cfg zoo.cfg
cd apache-zookeeper-3.6.3
创建存储文件夹
mkdir zkdata
4.同步apache-zookeeper-3.6.3 文件
xsync apache-zookeeper-3.6.3
5.配置服务器编号
cd zkdata
touch myid
编辑myid文件hadoop1.hadoop2,hadoop3
vi myid
分别为1 ,2 ,3(跟后面的hadoop集群的server.1相关)
6.修改zoo.cfg文件
#hadoop集群配置
server.1=hadoop1:2888:3888
server.2=hadoop2:2888:3888
server.3=hadoop3:2888:3888
cd conf
同步分发配置文件
xsync zoo.cfg
7.启动服务
按照顺序分别在hadoop1,hadoop2,hadoop3上启动
cd /apps/bigdata/apache-zookeeper-3.6.3
bin/zkServer.sh start
8.查看服务
bin/zkServer.sh status
hadoop2被选举为leader:半数选举机制。