1. storm启动流程
             storm是一个流行的开源的,分布式实时处理框架,关于storm的基本介绍可以参加这篇官方文档。大致的拓扑结构如图所示:
     

         其中Nimbus是一个后台管理进程,运行在master node上。Supervisor也是后台进程,运行在work node上。依据上图,Nimbus和Supervisor不直接通信,通过zookeeper进行通信。在Master Node上,可以通过storm nimbus命令来启动nimbus进程,同时通过storm ui来启动ui进程,这样通过浏览器就能实时监控和管理storm集群,通过浏览器进入 masterNodeIp:8080能看到这样的画面可见现在的集群上已经有一个topology,有两个Supervisor进程。但是这并不意味着topology已经在正常运行了。

  2. topology启动流程
             一般情况下,当master node上nimbus已经启动,worker node上的Supervisor已经启动以后。我们可以在master node上通过storm jar yourApp.jar youAppClasName arg1 arg2 ..命令来提交topology并启动。这个是时候nimbus主要完成两件事:
            1. 找到集群中所有的worknode结点,分配任务。
            2. 把jar包分发到worknode上,通知Supervisor启动worknode上的worker process。
            在这个过程中,所有的日志都会打印到nimbus.log上。日志路径默认是是$STORM_HOME/log,如果需要更改日志路径和其他,需要配置$STORM_HOME/logback/cluster.xml。
           当worker node上的nimbus进程会去一个文件夹读取nimbus分发的jar包,并且启动worker process,目录的是$storm.local.dir/supervisor/stormdist/,其中$storm.local.dir在storm.yaml中配置,如图所示

                其中test901是我的topology的名称,后面的一串数据,相当于一个unique id。多数启动中的错误都是在这个过程中出现的,一定要观察log目录下的Supervisor.log文件。如果启动成功,会在log文件夹下出现worker-****.log类型的文件,恭喜你,你的topology顺利的跑起来了。

Storm启动流程简介的更多相关文章

  1. storm启动流程

    email:chenguibin2004@126.com storm: 是一个分布式的实时流式计算框架,具有低延迟.高可用.分布式.可扩展.数据不丢失的特点, storm包含四个核心组件: Nimbu ...

  2. 高通msm8994启动流程简介

    处理器信息 8994包含如下子系统: 子系统 处理器 含义 APSS 4*Cortex-A53 应用子系统 APSS 4*Cortex-A57 应用子系统 LPASS QDSP6 v5.5A(Hexa ...

  3. Spring启动过程分析】(1)启动流程简介

    1. spring简介 spring的最基本的功能就是创建对象及管理这些对象之间的依赖关系,实现低耦合.高内聚.还提供像通用日志记录.性能统计.安全控制.异常处理等面向切面的能力,还能帮我们管理最头疼 ...

  4. Storm启动流程分析

    1. 客户端运行storm nimbus时,会调用storm的python脚本,该脚本中为每个命令编写一个方法,每个方法都可以生成一条相应的java命令. 命令格式如下:java -server xx ...

  5. Storm集群启动流程分析

    Storm集群启动流程分析 程序员 1.客户端运行storm nimbus时,会调用storm的python脚本,该脚本中为每个命令编写了一个方法,每个方法都可以生成一条相应的Java命令. 命令格式 ...

  6. Linux内核启动流程(简介)

    1. vmlinux.lds 首先分析 Linux 内核的连接脚本文件 arch/arm/kernel/vmlinux.lds,通过链接脚本可以找到 Linux 内核的第一行程序是从哪里执行的: 第 ...

  7. Storm学习笔记——简介

    1. 简介 流式计算的历史 早在7.8年前诸如UC伯克利.斯坦福等大学就开始了对流式数据处理的研究,但是由于更多的关注于金融行业的业务场景或者互联网流量监控的业务场景,以及当时互联网数据场景的限制,造 ...

  8. [转】:HTTP请求流程(一)----流程简介

    http://www.cnblogs.com/stg609/archive/2008/07/06/1236966.html HTTP请求流程(一)----流程简介 最近一直在研究如何让asp.net实 ...

  9. Linux的启动流程以及GRUB详解

     一.Linux引导和启动流程       概述,计算机电源接通后通过BISO之后,没有问题,就会去硬盘上找到MBR(Main Boot Record 主引导记录区)位于整个硬盘的0磁道0柱面1扇区, ...

随机推荐

  1. loadrunner11遇到的问题汇总及相应的解决方案(持续更新)

    1.在此界面点击Run Load Tests提示: "Can not save the license information because access to the registry  ...

  2. WinCE6.0多国语言软键盘

    N久以前写过一篇<WinCE下自定义的大软键盘>,这个自定义软键盘就是为RM905a+项目来做的.RM905a+的系统分辨率是640*480,WinCE原生键盘小的太小,大的又太大.所以就 ...

  3. android开发--(SimpleAdapter)运用

    SimpleAdapter的参数说明  第一个参数 表示访问整个android应用程序接口,基本上所有的组件都需要  第二个参数表示生成一个Map(String ,Object)列表选项    第三个 ...

  4. MySQL的表的优化和列类型的选择

    列选择原则: 1:字段类型优先级 整型 > date,time  >  enum,char>varchar > blob 列的特点分析: 整型: 定长,没有国家/地区之分,没有 ...

  5. TRUNCATE 删除表,无法回退。默认选择为整个表的内容,所以不能加条件。

    TRUNCATE 删除表,无法回退.默认选择为整个表的内容,所以不能加条件.DELETE 删除表,可以回退.可以带where 条件.建议使用delete.但是TRUNCATE 删除表数据比delete ...

  6. asp.net TreeView控件绑定数据库显示信息

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...

  7. [Swift]基础

    [Swift]基础 一, 常用变量 var str = "Hello, playground" //变量 let str1="Hello xmj112288" ...

  8. WordPress建站指南

    WordPress建站指南(1)   写在前面: 3月份用10天零碎时间火速完成了建站,后台95%的工作都交给了WP(WordPress).如果想偷懒的话,WP是一个绝好的选择,估计有个小半天就建完收 ...

  9. okhttp-utils的封装之okhttp的使用

    HTTP是现代应用的网络.这就是我们如何交换数据和媒体.让你的东西做HTTP有效负载的速度和节省带宽. okhttp是HTTP客户端的有效默认: HTTP 2支持允许所有请求相同的主机共享一个插座. ...

  10. hdu 2202 最大三角形 (凸包)

    最大三角形 Time Limit: 5000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submi ...