storm目录结构及在zk中的目录结构

xiaoxiao2021-02-28  125

storm目录结构及在zk中的目录结构

@(STORM)[storm]

storm目录结构及在zk中的目录结构一storm在磁盘中的内容 一nimbus中的目录结构 1inbox目录2stormdist目录 二supervisor中的目录结构 1supervisor目录2worker-users目录3worker目录 二storm在zookeeper中的信息 1assignment2storms3supervisor4workerbeats5errors6credentials

一、storm在磁盘中的内容

(一)nimbus中的目录结构

/home/data/storm/nimbus目录有2个子目录 inbox stormdist

1、inbox目录

2个jar包

ls inbox/ stormjar-32a7ece3-30f6-46b0-a85a-f8a6d7bedd4b.jar stormjar-9d203ae1-55e3-46aa-a503-e0f64dc77850.jar

2、stormdist目录

与supervisro相同,见下面。

(二)supervisor中的目录结构

/home/data/storm目录下有3个目录

supervisor workers workers-users

1、supervisor目录

就是supervisor的一些信息,包括拓扑的jar包等

$ tree . |-- isupervisor | |-- 1448866045210 | `-- 1448866045210.version |-- localstate | |-- 1448867673421 | |-- 1448867673421.version | |-- 1448867676421 | |-- 1448867676421.version | |-- 1448867677289 | |-- 1448867677289.version | |-- 1448867677292 | `-- 1448867677292.version |-- stormdist | |-- ma321-13-1448866092 | | |-- stormcode.ser | | |-- stormconf.ser | | `-- stormjar.jar | `-- test-9-1448861412 | |-- stormcode.ser | |-- stormconf.ser | `-- stormjar.jar `-- tmp

stormdist目录是nimbus分发过来的代码、配置及jar包。 nimbus的stormdist目录下也有相同的目录,内容也一样。不同之处是nimbus有全部拓扑的内容,而supervisor只有分配到的拓扑的内容。

stormjar.jar是topo的代码jar包。 stormcode.ser是拓扑的序列化文件,包括拓扑的各个组件的详细信息与它们之间的关系。 stormconf.ser是topo的配置信息

2、worker-users目录

worker-users里面有一些空文件,这些文件的名字就是worker的id,如

ls -l workers-users/ total 0 -rw-r--r-- 1 hadoop hadoop 0 11月 30 14:48 917efffc-2ee6-4392-b365-06bc3a846a4c -rw-r--r-- 1 hadoop hadoop 0 11月 30 14:50 fee027e3-a737-4f49-9c85-da5bb4acc43c

3、worker目录

workers里面则是每个worker的一些信息,如心跳与pid的记录

total 8 drwxr-xr-x 4 hadoop hadoop 4096 11月 30 14:48 917efffc-2ee6-4392-b365-06bc3a846a4c drwxr-xr-x 4 hadoop hadoop 4096 11月 30 14:50 fee027e3-a737-4f49-9c85-da5bb4acc43c

注意这些是目录,这些目录下的内容如下:

ls 917efffc-2ee6-4392-b365-06bc3a846a4c/ heartbeats pids

因此,当在worker目录定位到一个worker,但想要启动这个worker,却在supervisor目录中找不到对应的内容,因此启动失败。

二、storm在zookeeper中的信息

有一些解释,但版本较老:http://xumingming.sinaapp.com/466/twitter-storm-code-analysis-zookeeper-dirs/

storm在zookeeper中有以下6个目录(默认在/storm下)

/assignments -> 任务分配信息 /storms -> 正在运行的topology的ID /supervisors -> 所有的Supervisors的心跳信息 /workerbeats -> 所有的Worker的心跳 /errors -> 产生的出错信息 /credentials ->认证信息

1、assignment

任务的分配信息,supervisor会不断的读取这里的信息,看有没有被分配的任务需要处理。

2、storms

正在运行的拓扑id

3、supervisor

所有的Supervisors的心跳信息

4、workerbeats

每个worker的心跳信息

5、errors

错误信息, UI即通过在这里读取信息来显示

6、credentials

认证信息

转载请注明原文地址: https://www.6miu.com/read-64544.html

最新回复(0)