Storm -- Distributed and fault-tolerant realtime computation

这是一个分布式的、容错的实时计算系统

把Storm依赖组件的版本贴出来供各位参考:

java(1.7.0_45)

python(2.6.6)

zookeeper (zookeeper-3.4.5)

zeromq(zeromq-2.1.7)

jzmq(github trunk)

storm(0.8.1)

java和Python的安装过程不赘述了,说下其他组件的安装过程

安装zookeeper

wget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.5/zookeeper-3.4.5.tar.gz
tar xvf zookeeper-3.4..tar.gz
cd zookeeper-3.4.5
cp conf/zoo_sample.cfg conf/zoo.cfg

设置下环境变量

export ZOOKEEPER_HOME=/root/zookeeper/zookeeper-3.4.
export JAVA_HOME=/usr/lib/jvm/java-1.7.-openjdk-1.7.0.45.x86_64
export PATH=$JAVA_HOME/bin:$ZOOKEEPER_HOME/bin:$PATH

然后就可以启动zookeeper了

zkServer.sh start

可以运行下zkCli.sh,测试下zookeeper是否可用

安装zeromq(安装好后/usr/local/lib下会有相应的库文件)

wget http://download.zeromq.org/zeromq-2.1.7.tar.gz
tar xvf zeromq-2.1..tar.gz
cd zeromq-2.1.
yum install -y gcc gcc-c++.x86_64 uuid-devel.x86_64 libuuid-devel.x86_64
./configure
make
make install

安装jzmq

git clone https://github.com/nathanmarz/jzmq.git
./autogen.sh
./configure
make
make install

开始安装storm

wget https://github.com/downloads/nathanmarz/storm/storm-0.8.1.zip
unzip storm-0.8..zip
cd storm-0.8.

修改conf/storm.yaml如下

 storm.zookeeper.servers:
- "127.0.0.1"
nimbus.host: "192.168.24.57"
storm.local.dir: "/root/storm/workdir"
java.library.path: "/usr/local/lib:/opt/local/lib:/usr/lib"
topology.debug: "true"

然后将storm/bin加入环境变量

export STORM_HOME=/root/storm/storm-0.8.
export PATH=$JAVA_HOME/bin:$ZOOKEEPER_HOME/bin:$STORM_HOME/bin:$PATH

启动storm

storm nimbus &
storm supervisor &
storm ui &

jps可以看到如下进程,而且日志也没有报错。基本上就ok了,可以提交任务在storm环境中跑了

 core
QuorumPeerMain
Jps
supervisor
nimbus

提交拓扑的代码

storm jar stormDemo.jar com.storm.example.SimpleTopology testhui3

杀死拓扑

storm kill testhui3

默认8080端口提供了一个ui dashboard

enjoy~

storm安装笔记以及提交拓扑任务的更多相关文章

  1. storm提交拓扑报错processing getcomponentpendingprofileactions

    storm提交新的拓扑,拓扑能提交成功,但是在UI界面查看时每个bolt报错Thrift.processing getComponentPendingProfileActions异常. 原因:stor ...

  2. storm复习笔记

    1.storm基本介绍 0.storm是免费.开源.分布式.跨语言.可伸缩.低延迟.容错实时流计算系统.每个节点每秒处理百万元组 1.流计算,动态数据.mr操作的数据都是静态数据,启动mr读取文件,o ...

  3. 通过 IDE 向 Storm 集群远程提交 topology

    转载: http://weyo.me/pages/techs/storm-topology-remote-submission/ http://www.javaworld.com/article/20 ...

  4. Storm学习笔记 - Storm初识

    Storm学习笔记 - Storm初识 1. Strom是什么? Storm是一个开源免费的分布式计算框架,可以实时处理大量的数据流. 2. Storm的特点 高性能,低延迟. 分布式:可解决数据量大 ...

  5. 简述C#中IO的应用 RabbitMQ安装笔记 一次线上问题引发的对于C#中相等判断的思考 ef和mysql使用(一) ASP.NET/MVC/Core的HTTP请求流程

    简述C#中IO的应用   在.NET Framework 中. System.IO 命名空间主要包含基于文件(和基于内存)的输入输出(I/O)服务的相关基础类库.和其他命名空间一样. System.I ...

  6. Storm学习笔记——简介

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

  7. Twitter Storm 安装实战

    实际上安装Twitter Storm是上周三的事情了,周三的时候安装了一个单机版的,用WordCount跑了一下,感觉还不错.周四试着在集群上安装,碰到了一些问题,一直折腾到周五,留了个尾巴(没有做测 ...

  8. Storm概念学习系列之Topology拓扑

    不多说,直接上干货!   Hadoop 上运行的是 MapReduce 作业,而在 Storm 上运行的是拓扑 Topology,这两者之间是非常不同的.一个关键的区别是:一个MapReduce 作业 ...

  9. cobbler+kickstart安装笔记

    cobbler+kickstart安装笔记 本文参考老男孩配置:https://blog.oldboyedu.com/autoinstall-cobbler/ centos7:开机如果不启动网卡,需要 ...

随机推荐

  1. 使用cocoapods导入第三方类库后 头文件没有代码提示?

    选择Target -> Build Settings 菜单,找到\”User Header Search Paths\”设置项 新增一个值"${SRCROOT}",并且选择\ ...

  2. Android Service 与 IntentService

    Service 中的耗时操作必须 在 Thread中进行: IntentService 则直接在 onHandleIntent()方法中进行

  3. 浅析 - Storyboard / Xib

    大家都知道纯代码写应用的成本是很高的,特别是涉及到UI界面的实现,相当耗费时间.之前自己写应用时有了解过Storyboard,也简单使用过,但随着最近深入了解它之后,发现自己低估了它的作用和影响力,因 ...

  4. 6个原因说服你选择PostgreSQL9.6

    PostgreSQL9.6在前些日子发布了, 社区为该版本的重大更新付诸良多, 发布日志一如既往的长,我挑选了6个重要的更新, 这些或许能够帮助你更好的使用PostgreSQL. 并行: 并行应该是这 ...

  5. hadoop2.x NameNode 的共享存储实现

    过去几年中 Hadoop 社区涌现过很多的 NameNode 共享存储方案, 比如 shared NAS+NFS.BookKeeper.BackupNode 和 QJM(Quorum Journal ...

  6. sql server 的cpu使用率过高的分析

    有哪些SQL语句会导致CPU过高? 1.编译和重编译 编译是 Sql Server 为指令生成执行计划的过程.Sql Server 要分析指令要做的事情,分析它所要访问的表格结构,也就是生成执行计划的 ...

  7. 解决IIS7、IIS7.5中时间格式显示的问题

    今天在用IIS7的时候发现一个关于时间格式的问题,当我在ASP中使用now()时间函数的时候,日期是以"/"来分隔,而不是以"-"来分隔的,使得我在运行程序的时 ...

  8. PHP 获取图像信息 getimagesize 函数

    getimagesize() 函数用于获取图像尺寸,类型等信息. imagesx() 函数用于获取图像的宽度. imagesy() 函数用于获取图像的高度. getimagesize() getima ...

  9. C# 中的Singleton模式

    一般写Singleton基本都是一下这个套路 class Singleton { public static Singleton instance; private Singleton() { } p ...

  10. Delphi的字符串、PChar和字符数组之间的转换

    参考:http://my.oschina.net/kavensu/blog/193719 以下的各种方法都是我在Delphi 6的环境下测试成功的,可能根据你的开发环境.不同的上下文语境……有一些可能 ...