分享

zookeeper思考与总结1:zookeeper在其它组件的作用

本帖最后由 pig2 于 2017-5-11 20:50 编辑
问题导读
1.为什么产生zookeeper?

2.你所了解的zookeeper有哪些应用?
3.如何查看zookeeper存储内容?




1.为什么会产生zookeeper
zookeeper是模仿的谷歌的Chubby来解决分布式一致性的问题。2006年的时候Google出了Chubby,2009年3年以后Yahoo在Apache上推出了类似的产品ZooKeeper.

ZooKeeper跟Chubby一样用来存放一些相互协作的信息(Coordination),这些信息比较小一般不会超过1M,在zookeeper中是以一种hierarchical tree的形式来存放,这些具体的Key/Value信息就store在tree node中。当有事件导致node数据,例如:变更,增加,删除时,Zookeeper就会调用 triggerWatch方法,判断当前的path来是否有对应的监听者(watcher),如果有watcher,会触发其process方法,执行process方法中的业务逻辑.

2.zookeeper的应用

zookeeper在kafka的作用
kafka将zookeeper做小型数据库这里我们进入zookeeper看下保存的kafka的相关信息
通过
[mw_shl_code=bash,true]zkCli.sh[/mw_shl_code]
上面命令,自动连接本地或则通过下面命令
[mw_shl_code=bash,true]zkCli.sh -server master:2181
[/mw_shl_code]
指定服务器连接master。
进入后,我们通过下面命令
[mw_shl_code=bash,true]ls /
[/mw_shl_code]
查看里面的存储内容
[mw_shl_code=bash,true][zk: localhost:2181(CONNECTED) 1] ls /
[controller_epoch, controller, brokers, zookeeper, admin, isr_change_notification, consumers, config]
[/mw_shl_code]
kafka.jpg

[mw_shl_code=bash,true][zk: localhost:2181(CONNECTED) 2] ls /brokers/ids
[/mw_shl_code]

命令为
[mw_shl_code=bash,true] ls /brokers/ids[/mw_shl_code]
ids.jpg


zookeeper在hbase中的作用:

1.选举
我们知道hbase通过zookeeper选举master,也就是说zookeeper提高了hbase集群的稳定性。换句话说,没有zookeeper,hbase稳定性大大降低,甚至不能启动。

2.存储

详解:


hbase.png
hbase在启动的时候,hmaster启动时候会将hbase 系统表-ROOT- 加载到 zookeeper cluster,通过zookeeper cluster可以获取当前系统表.META.的存储所对应的regionserver信息。
2.jpg

HBase中的znode

/hbase是集群的根znode,ZookeeperWatcher初始化时创建.
还有诸如/hbase/root-region-server,/hbase/master,大家可以在创建zookeeper后,进入zookeeper查看


Zookeeper在storm充当的作用
Storm的所有的状态信息都是保存在Zookeeper里面,nimbus通过在zookeeper上面写状态信息来分配任务,
supervisor,task通过从zookeeper中读状态来领取任务,同时supervisor, task也会定义发送心跳信息到zookeeper,
使得nimbus可以监控整个storm集群的状态,从而可以重启一些挂掉的task。
ZooKeeper 使得整个storm集群十分的健壮,任何一台工作机器挂掉都没有关系,只要重启然后从zookeeper上面重新获取状态信息就可以了。
下面一张图,说明了zookeeper的作用:保存了集群操作的状态

20150427084555_765.png

storm有哪些目录,这里简单列出来
Strom在Zookeeper中的目录结构

/assignments -> 任务分配信息
/storms -> 正在运行的topology的ID
/supervisors -> 所有的Supervisors的心跳信息
/workerbeats -> 所有的Worker的心跳
/errors -> 产生的出错信息
更多可以网上查询。

后续更新总结zookeeper的作用


本帖被以下淘专辑推荐:

已有(1)人评论

跳转到指定楼层
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条