hbase

hadoop里面有:1)hdfs分布式存储 2)yarn资源调度框架;3)hive数据仓库技术,在线事物分析,延迟性很高,最终用的还是mr技术,但是不再使用mr技术了
4)hbase:建立在hadoop上面的数据库技术,随机定位+实时读写,业务是分布式的,但是最终还是存储在hasoop上面的
要实现自动容灾,就需要引进zookeeper

zookeeper

1.管理大量主机的协同服务,轻量级的
2.分布式应用,实现了分布式读写技术
3.zk提供的服务有哪些?1):名称服务Naming service,按照名称来区分集群中的主机2):配置管理Configuration management //针对新加入节点的最新化处理3):集群管理Cluster management   //实时感知集群中节点的增减4):Leader election      //leader follower5):Locking and synchronization service //修改时来 锁定数据,实现容灾6):Highly reliable data registry        //节点宕机数据也是可用的

zk的安装(单机版,装在s200上面)

1.jdk
2.下载zookeeper-3.4.10。tar.gz,下载地址:http://mirrors.hust.edu.cn/apache/zookeeper/zookeeper-3.4.10/
3.tar开
4.符号连接,环境变量$>ln -s zookeeper-3.4.10 zk
5.配置zk,复制zoo.cfg.sample-->zoo.cfg[zk/conf/zoo.conf]# The number of milliseconds of each ticktickTime=2000# The number of ticks that the initial# synchronization phase can takeinitLimit=10# The number of ticks that can pass between# sending a request and getting an acknowledgementsyncLimit=5# the directory where the snapshot is stored.# do not use /tmp for storage, /tmp here is just# example sakes.dataDir=/home/centos/zookeeper# the port at which the clients will connectclientPort=2181# the maximum number of client connections.# increase this if you need to handle more clients#maxClientCnxns=60## Be sure to read the maintenance section of the# administrator guide before turning on autopurge.## http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance## The number of snapshots to retain in dataDir#autopurge.snapRetainCount=3# Purge task interval in hours# Set to "0" to disable auto purge feature#autopurge.purgeInterval=1
6.启动zk服务器$>bin/zkServer.sh start
7.验证zk$>netstat -anop|grep 2181
8.启动客户端连接到服务器$>zkCli.sh -server s200:2181    //就直接进入到zk的命令行下面$zk]help        //查看帮助$zk]quit        //退出$zk]create /a tom   //创建过程,每次创建都要写数据$zk]ls /        //得到[a,zookeeper]$zk]get /a              //查看数据create /a/a1 jerry;get /a/a1       //查看数据set /a tomas ;//修改节点数据delete /a/a1;       //删除一个节点rmr /a         //递归输出节点

zk架构

1.Client
从server获取信息,周期性发送给server,表示自己还活着
当client连接时,server回传ack信息,如果客户端没有收到响应,就会重定向到另一个server
2.Server.zk集群的一员,向client提供所有service,向客户端发送确认信息表示服务器还活着
3.ensemble一组服务器,最小的节点数是3
4.leader.如果任何被连接的节点发生故障,自定恢复,zk服务启动时,完成leader的选举
5.Follower.遵循leader管理的的服务节点

znode

zk中的节点,维护了stat的状态。
由version number,Action Control List,Timestamp,Data length组成
version number:数据写入过程的变化ACL     //action control list,访问控制列表

节点类型

1.持久节点:永久性节点,client退出还存在
2.临时节点:在客户端活跃时有效,断开后自动删除。临时节点不能有子节点,在leader推选的时候扮演重要角色create -e /b/e1 tom0;//建立一个临时节点
3.序列节点:在节点名之后副驾10个数字,主要用于同步和锁

Session

Session中,会话的请求是按照先进先出的顺序执行的,一旦client连接到server,那么这个session就建立了,那么sessionId就分配给客户端了client以固定间隔向server发送心跳,表示session是valid的,
zk集群如果在超时的时候,没有收到心跳,就判定为client挂了
与此同时,临时节点就被删除了

Watch

观察者模式
Client能够通过watch机制在数据发生变化时收到通知
client能够在read节点的时候设置观察者。watch机制针对节点的变化会发送通知给注册的客户端程序
观察模式只触发一次。如果session过期,那么观察者就会被删除

zk工作流程
-----------------------、
zk集群启动后,客户端连接到其中的一个节点,这个节点可以是leader,也可以是follower
连通之后,node会分配一个id给client,发送ack信息给客户端,如果客户端没有收到ack确认,
如果客户端没有收到ack,连接到另外一个节点
客户端周期性发送心跳信息给节点保证连接不会丢失

 如果客户端读取数据,发送请求给节点node,node读取自己的数据库,返回节点数据给client如果client存储数据,将路径和数据发送给server,server转发给leader,leader将会补发所有的请求给follower,只有大多数的节点成功响应,则写操作就成功

单机版

文件系统层级结构存储
path:/home/centos/xxx=znode.节点上可以关联数据,数据可以是任何数据,但是数据大小不能超过1m
节点的类型1.永久节点2.临时节点3.序列节点数据状态:版本。

leader+flower.

读:
写:

leader推选过程(最小号选举法)

1.所有节点在同一目录下面创建临时序列节点
2.zk会添加10位的序列号到路径后面,并且znode会是xxx/xxx00000000001
3.对于给定的例子,在所有znode节点中,创建最小号的节点会成为leader,所有其他节点会成为follower
4.每个节点会观察小于自己节点的主机(注册观察者)
5.如果leader挂了,对应的znode就会被删除了
6.观察者就会收到通知

配置完全分布式zk集群

1.挑选3台主机
s200-s202
2.每台机器都安装zk
3.配置zk配置文件s200-s202[/soft/zk/conf/zoo.cfg]autopurge.purgeInterval=1dataDir=/home/centos/zookeeper4.在每台主机的/home/centos/zookeeper中添加myid,内容分别是1,2,3
[s200]
$>echo 1 >/home/centos/zookeeper/myid
[s201]
$>echo 2 >/home/centos/zookeeper/myid
[s202]
$>echo 3 >/home/centos/zookeeper/myid5.启动服务器集群
在每台主机上执行:$>zkServer.sh start
6.查看每台服务器的状态$>zkServer.sh status
7.修改zk的log目录

转载于:https://www.cnblogs.com/stone-learning/p/9291039.html

zookeeper动物园管理员学习笔记相关推荐

  1. java动物园管理员_zookeeper动物园管理员学习笔记

    hbase hadoop里面有:1)hdfs分布式存储 2)yarn资源调度框架:3)hive数据仓库技术,在线事物分析,延迟性很高,最终用的还是mr技术,但是不再使用mr技术了 4)hbase:建立 ...

  2. 软考网络管理员学习笔记4之第四章局域网技术

    第四章.局域网技术 考点1.传输介质 [考法分析] 本考点的基本考法是关于双绞线.光纤的概念及使用场景 [要点分析] 1.双绞线的传输范围在100m内,一共有4对芯,其中1,2号芯用于发送数据,3,6 ...

  3. 软考网络管理员学习笔记8之第八章网络安全技术

    第8章.网络安全技术 考点1.计算机病毒 [考法分析] 本考点的基本考法是能通过病毒名前缀判断出是哪种病毒,了解不同类型病毒所产生的危害 [要点分析] 1.常见病毒前缀有trojan(木马病毒).Ha ...

  4. 软考网络管理员学习笔记7之第七章网络管理技术

    第七章网络管理技术 考点1.Windows的基本管理 [考法分析] 本考点的基本考法是能够识别Windows系统下,常见命令的含义与作用 [要点分析] 1.需要熟悉掌握常见命令,如ipconfig.pi ...

  5. 软考网络管理员学习笔记6之第六章互联网技术

    第六章.互联网技术 考点1.IP地址分类 [考法分析] 本考点的基本考法是考察A.B.C.D四类IP地址的区分,公网地址和私网地址的区分,以及哪些地址可以做源地址,哪些地址可以做目的地址 [要点分析] ...

  6. 软考网络管理员学习笔记5之第五章广域网与接入网技术

    第五章.广域网与接入网技术 考点1.广域网的交换方式 [考法分析] 本考点的基本考法是能分别各种交换方式的特点 [要点分析] 1.交换方式有电路交换和分组交换 2.分组交换里面有数据报交换.虚链路交换 ...

  7. 软考网络管理员学习笔记3之第三章网络体系结构

    第三章.网络体系结构 1.网络性能-时延的计算 [考法分析] 本考点的一般考法是让求一个数据帧从A站点发出到B站点接收所用到的总时间 [要点分析] 1. T总=T发送时延+T传播时延 2. T发送时延 ...

  8. 软考网络管理员学习笔记2之第二章数据通信基础

    第二章.数据通信基础 1.奈奎斯特定理与香农理论 [考法分析] 奈奎斯特定理是理想情况下,求数据速率 香农理论是在受到噪声干扰后,求数据速率 [要点分析] 看题目中是否提及到噪声或信噪比等关键词 如果 ...

  9. 软考网络管理员学习笔记1之第一章计算机硬件基础

    第一章.计算机硬件基础 1.进制间的转换 [考法分析] 本考点的基本考法是求二进制数.十进制数.八进制数及十六进制数之间的互转 [要点分析] 进制间互转一般是无符号的数 三位二进制的数可以转换成一个八 ...

最新文章

  1. 一个QQ多用户登陆的实例代码
  2. PHP高手如何修炼?
  3. 真正的编程高手-----激励计算机专业的大学生
  4. 华南师大计算机学院团委,不忘初心 牢记使命|软件学院团委举行团建活动
  5. 具名元祖--namedtuple
  6. C++中set和map的erase用法
  7. 1090. Highest Price in Supply Chain (25) dfs
  8. 【李宏毅2020 ML/DL】P77 Generative Adversarial Network | Theory behind GAN
  9. Python网络编程基础【底层网络】
  10. 4.看板方法---在五个季度内,从最差变为最好
  11. 如何解决layui下select组件大数据卡顿问题
  12. 第一款无代码应用平台搭建的设备管理系统
  13. python实时语音转写_使用实时语音转写_语音交互服务 SIS_SDK参考_Python SDK_华为云...
  14. 程序人生-Hello‘s P2P
  15. 咱用AppDesigner开发复现了一款我国古老的桌游 —【升官图】
  16. css+html 嵌套表格做简单网页
  17. 实录丨戴琼海:深度学习遭遇瓶颈,全脑观测启发下一代AI算法
  18. 只是一个文件节点类为了项目的数据处理
  19. 荒野白茶特点及口感如何
  20. 题海精华——算法题精选

热门文章

  1. Python 技术篇-通过进程名获取进程pid实例演示,使用psutil库获取进程id
  2. Fiddler 获取、安装与浏览器代理设置,Fiddler的第一次使用
  3. css知识点笔记-常见特性
  4. DOSbox汇编环境配置
  5. [BJDCTF2020]EasySearch
  6. 对整个矩阵元素进行计算:最大数、最小数、排序
  7. 【递推DP技巧 hdu 2050 折线分割平面】
  8. sdut 2134 数据结构实验之栈与队列四:括号匹配
  9. auto_ptr使用总结
  10. Visual Studio C++ 画图【极简版】