随笔分类 -  storm

摘要:错误1:发布topologies到远程集群时,出现Nimbus host is not set异常。异常内容如下所示: [root@xop-dev-a bin]# ./storm jar /home/clx/storm-starter.jar storm.starter.WordCountTopol 阅读全文
posted @ 2016-08-24 15:38 唐僧吃肉 阅读(782) 评论(0) 推荐(0) 编辑
摘要:源:http://daiwa.ninja/index.php/2015/07/18/storm-cpu-overload/ 2015-07-18AUTHORDAIWA STORM在线业务实践-集群空闲CPU飙高问题排查有2条评论 STORM在线业务实践-集群空闲CPU飙高问题排查 最近将公司的在线业 阅读全文
posted @ 2016-04-05 00:34 唐僧吃肉 阅读(1441) 评论(1) 推荐(0) 编辑
摘要:作者: 大圆那些事 | 文章可以转载,请以超链接形式标明文章原始出处和作者信息 网址: http://www.cnblogs.com/panfeng412/archive/2012/11/30/how-to-install-and-deploy-storm-cluster.html 本文以Twitt 阅读全文
posted @ 2016-04-04 23:51 唐僧吃肉 阅读(297) 评论(0) 推荐(0) 编辑
摘要:配置项 配置说明 storm.zookeeper.servers ZooKeeper服务器列表 storm.zookeeper.port ZooKeeper连接端口 storm.local.dir storm使用的本地文件系统目录(必须存在并且storm进程可读写) storm.cluster.mo 阅读全文
posted @ 2016-04-04 20:32 唐僧吃肉 阅读(3324) 评论(0) 推荐(0) 编辑
摘要:该文档包涵了storm实战中经常遇到一些问题,及对应解决方案。这个文档是群里一个朋友在学习storm,并实战storm中遇到的一些问题,及和群里其他朋友一起交流给出的对应解决方案,并由他整理好,委托我发布出来(也算是交流者之一),供大家参考,希望能对大家有所帮助。 感谢 某某(哈哈 鉴于部分原因,不 阅读全文
posted @ 2016-03-21 16:53 唐僧吃肉 阅读(1652) 评论(0) 推荐(0) 编辑
摘要:storm的并发机制 storm计算支持在多台机器上水平扩容,通过将计算切分为多个独立的tasks在集群上并发执行来实现。 一个task可以简单地理解:在集群某节点上运行的一个spout或者bolt实例。 topology的组成部分:Nodes(服务器):配置在一个storm集群中的服务器,会执行t 阅读全文
posted @ 2016-03-09 19:44 唐僧吃肉 阅读(350) 评论(0) 推荐(0) 编辑
摘要:ps:都是学习的别人的博客,只是做了个整理所有就写成了原创,其实都是人家的东西 当一个topology在storm cluster中运行时,它的并发主要跟3个逻辑对象相关:worker,executor 和task 1. Worker 是运行在工作节点上面,被Supervisor守护进程创建的用来干 阅读全文
posted @ 2016-03-09 00:40 唐僧吃肉 阅读(411) 评论(0) 推荐(0) 编辑
摘要:组成:一个运行中的拓扑是由什么构成的:工作进程(worker processes),执行器(executors)和任务(tasks)! 在一个 Storm 集群中,Storm 主要通过以下三个部件来运行拓扑: 工作进程(worker processes) 执行器(executors) 任务(task 阅读全文
posted @ 2016-03-08 17:15 唐僧吃肉 阅读(1160) 评论(0) 推荐(0) 编辑
摘要:1、Storm并行度相关的概念 Storm集群有很多节点,按照类型分为nimbus(主节点)、supervisor(从节点),在conf/storm.yaml中配置了一个supervisor,有多个槽(supervisor.slots.ports),每个槽就是一个JVM,就是一个worker(一个节 阅读全文
posted @ 2016-03-08 15:52 唐僧吃肉 阅读(6478) 评论(0) 推荐(0) 编辑
摘要:本文详细介绍了 Storm 集群的安装配置方法。如果需要在 AWS 上安装 Storm,你应该看一下 storm-deploy 项目。storm-deploy 可以自动完成 E2 上 Storm 集群的准备、配置、安装的全部过程,同时还设置好了 Ganglia,方便监控 CPU、磁盘以及网络的使用信 阅读全文
posted @ 2016-03-08 15:10 唐僧吃肉 阅读(281) 评论(0) 推荐(0) 编辑
摘要:说明:本文翻译自Storm在GitHub上的官方Wiki中提供的Storm代码结构描述一节Structure of the codebase,希望对正在基于Storm进行源码级学习和研究的朋友有所帮助。 原文出处:http://www.cnblogs.com/yufengof/p/storm-cod 阅读全文
posted @ 2016-03-08 14:00 唐僧吃肉 阅读(381) 评论(0) 推荐(0) 编辑
摘要:Storm在集群上运行一个Topology时,主要通过以下3个实体来完成Topology的执行工作:1. Worker(进程)2. Executor(线程)3. Task下图简要描述了这3者之间的关系: 注:supervisor.slots.ports:对于每个工作节点配置该节点可以运行多少个wor 阅读全文
posted @ 2016-03-08 13:57 唐僧吃肉 阅读(3839) 评论(0) 推荐(0) 编辑
摘要:nimbus-datastorm-core/backtype/storm/nimbus.clj (defn nimbus-data [conf inimbus] (let [forced-scheduler (.getForcedScheduler inimbus)] {:conf conf :in 阅读全文
posted @ 2016-03-08 00:00 唐僧吃肉 阅读(485) 评论(0) 推荐(0) 编辑
摘要:Nimbus server, 首先从启动命令开始, 同样是使用storm命令"storm nimbus”来启动看下源码, 此处和上面client不同, jvmtype="-server", 最终调用"backtype.storm.daemon.nimbus"的mainnimbus是用clojure实 阅读全文
posted @ 2016-03-07 23:50 唐僧吃肉 阅读(673) 评论(0) 推荐(0) 编辑
摘要:nimbus是storm集群的"控制器",是storm集群的重要组成部分。我们可以通用执行bin/storm nimbus >/dev/null 2>&1 &来启动nimbus。bin/storm是一个python脚本,在这个脚本中定义了一个nimbus函数: nimbus函数 def nimbus 阅读全文
posted @ 2016-03-07 17:05 唐僧吃肉 阅读(705) 评论(0) 推荐(0) 编辑
摘要:启动流程图 mk-assignments 功能:对当前集群中所有Topology进行新一轮的任务调度。 实现源码路径: \apache-storm-0.9.4\storm-core\src\clj\backtype\storm\daemon\ nimbus.clj 方法原型: 1 defnk mk- 阅读全文
posted @ 2016-03-07 16:51 唐僧吃肉 阅读(1043) 评论(0) 推荐(0) 编辑
摘要:storm集群里面工作机器分为两种一种是nimbus, 一种是supervisor, 他们通过zookeeper来进行交互,nimbus通过zookeeper来发布一些指令,supervisor去读zookeeper来执行这些指令! 具体nimbus和supervisor在zookeeper上交换了 阅读全文
posted @ 2016-03-07 16:45 唐僧吃肉 阅读(513) 评论(0) 推荐(0) 编辑
摘要:在进群生产环境下运行Topology和在本地模式下运行非常相似。下面是步骤: 1、定义Topology(如果使用Java开发语言,则使用TopologyBuilder来创建) 2、使用StormSubmitter向集群提交Topology。StormSubmitter有三个参数,Topology的名 阅读全文
posted @ 2016-03-06 23:58 唐僧吃肉 阅读(1167) 评论(0) 推荐(0) 编辑
摘要:本文将介绍如何设置Storm的开发环境。下面是大纲: 1.下载Storm发布包,解压,将解压的 bin目录放到你电脑的PATH中。 2.为了能够在远程集群中启动或者停止Topology,请将集群信息放到~/.storm/storm.yaml中 下面是步骤的详细说明。 什么是开发环境? Storm有两 阅读全文
posted @ 2016-03-06 23:57 唐僧吃肉 阅读(248) 评论(0) 推荐(0) 编辑
摘要:使用其他语言编写Bolt Bolt可以使用任意语言编写。用另外一种语言编写Bolt来作为子进程运行。Storm会在标准输入输出的基础上使用Json来与子进程通信。通信协议之需要一个100行的适配器库,Storm自带了Ruby,Python,和Fancy的适配器库。 下面是WordCountTopol 阅读全文
posted @ 2016-03-06 23:53 唐僧吃肉 阅读(512) 评论(0) 推荐(0) 编辑