本文记录了storm 1.1.0 在zookeeper中保存的信息。
下面的图是在[4]的基础上进行修改的。
/-storm -- storm在zookeeper上的根目录
|
|-/assignments -- topology的任务分配信息
| |
| |-/{topology-id} -- 这个下面保存的是每个
| topology的assignments
| 信息包括: 对应的
| nimbus上的代码目录,所有
| task的启动时间,
| 每个task与机器、端口的映射
|
|-/backpressure -- 这个目录保存需要限流的topology-id
| | [1]
| |-/{topology-id}
| |
|-/blobstore -- 保存大型文件的key,
| | 以及topology的配置[2]
| |-/{key-id}
|
|-/blobstoremaxkeysequencenumber
| | -- 这个里面保存了大型文件的
| | key的最大[2],但是发现
| | 和blobstore的内容一样
| |
|-/storms -- 这个目录保存所有正在运行
| | 的topology的id
| |
| |-/{topology-id} -- 这个文件保存这个topology
| 的一些信息,包括topology的
| 名字,topology开始运行的时
| 间以及这个topology的状态
| (具体看StormBase类)
|
|-/supervisors -- 这个目录保存所有的supervisor
| | 的心跳信息
| |
| |-/{supervisor-id} -- 这个文件保存的是supervisor
| | 的心跳信息包括:心跳时间,主
| | 机名,这个supervisor上worker
| | 的端口号运行时间
| | (具体看SupervisorInfo类)
| |
| |
|-/logconfigs -- 这个目录保存修改了LOG LEVEL
| | 的topology的id
| |
| |-/{topology-id}
| |
| |
|-/nimbuses
| | -- 这个里面保存了numbuses对应的机器列表
| |
|-/leader-lock
| | -- 这个和HA有关[3]
| |
|-/workerbeats -- 所有worker的心跳
| |
| |-/{topology-id} -- 这个目录保存这个topology的所
| | 有的worker的心跳信息
| |
| |-/{worker-id} -- worker的心跳信息
|
|-/errors -- 所有component所产生的error信息
|
|-/{topology-id} -- 这个目录保存这个topology下面
| 所有component的出错信息(包括
| topology的所有component与系
| 统的“_acker”
|
|-/{component-id} -- 这个component的出错信息
[1] HOW TO TUNE APACHE STORM’S AUTOMATIC BACK PRESSURE
[2] Storm Distributed Cache API