Storm启动流程简介
2024-08-25 04:46:37
- 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已经在正常运行了。
- 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顺利的跑起来了。
最新文章
- Life Is A Funny Proposition After All
- webpack中字体配置,可以引入bootstrap
- 《java JDK7学习笔记》之跨平台与路径设置
- 在Salesforce中通过编写C#程序调用dataloadercliq的bat文件取触发调用data loader来批量处理数据
- SqlServer Link 链接服务器的使用
- AppStore 沙箱环境的测试流程
- ArcGIS学习记录—ArcGIS ArcMap编辑状态中线打断的问题
- UItextField常用方法
- char和int的转换
- mongodb查询分页优化
- FTP上传文件时 System.Net.WebException: 基础连接已经关闭: 接收时发生错误。
- Cg(C for Graphic)标准函数库之数学函数与几何函数
- 夜神模拟器与HBuilder连接/cmd运行提示符/执行夜神模拟器命令/执行HBuilder命令
- PuTsangTo-单撸游戏开发02 测试场景与单轴移动
- 【NOIP2015提高组】跳石头
- myeclipse自动添加注释
- LeetCode 176. 第二高的薪水(MySQL版)
- Magicodes.NET框架之路——让代码再飞一会(ASP.NET Scaffolding)
- Java RMI与RPC的区别
- excel文字格式设置