Storm总体交互关系

Storm总体交互图


图来自:<storm源码分析>

1. Nimbus启动,向zookeeper发送请求,创建并监听以下路径

a. /storm/workerbeats<topo-id>/<node-port> 用以保存Worker的运行状态信息.通过node和port来标定一个worker.  初创建时此节点内容为空

b. /storm/storms/<topo-id> 用以保存topology本身的信息. 包括他的名字, 启动时间,并行度等

c. /storm/assignments/<topology-id> 保存nimbus为每个topology分配的任务信息. 包括topology在nimbus本地保存的目录, 被分配到supervisor节点的主机名的映射关系, 每个Executor运行在哪个Worker上等

d. /storm/supervisors/<supervisor-id> 保存supervisors进程相关的信息

e. /storm/errors/<topo-id>/<component-id>/e<sequential-id> 保存组件错误信息

注意:以上<>标记的路径节点实际上并未创建,只是为了表示格式完整性做的标注

2.  Supervisor启动

a. 在zookeeper上创建一个临时节点 /storm/supervisor/supervisor-id. 当此supervisor存活时临时节点始终存在,断开后节点消失

b. 监听/zookeeper/assignments 获取任务信息

c. 同时, supervisor会通过一个本地的LocalState来监控它所启动的所有worker的心跳信息.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值