要使用storm首先要安装以下工具:JDK、Python、zookeeper、zeromq、jzmq、storm

(注:各个模块都是独立的,如果安装失败或者卡顿可以单独百度某个模块的安装,都是可以的。)

JDK1.7安装 参见上篇《Ubuntu下安装配置JDK1.7》http://www.cnblogs.com/stone_w/p/4469548.html

第一步,安装Python2.7.2(ubuntu)

  1. wget http://www.python.org/ftp/python/2.7.2/Python-2.7.2.tgz
  2. tar zxvf Python-2.7.2.tgz
  3. cd Python-2.7.2
  4. ./configure
  5. make
  6. make install
  7. vi /etc/ld.so.conf
  8. 追加/usr/local/lib/
  9. sudo ldconfig

第二步,安装zookeeper  

下载zookeeper 
解压,安装:http://pan.baidu.com/s/1jGjA90M

  1. tar -zxvf zookeeper-3.3.5.tar.gz
  2. cp -R zookeeper-3.3.5 /usr/local/
  3. ln -s /usr/local/zookeeper-3.3.5/ /usr/local/zookeeper
  4. gedit /etc/profile (设置ZOOKEEPER_HOMEZOOKEEPER_HOME/bin)
  5. export ZOOKEEPER_HOME="/path/to/zookeeper"
  6. export PATH=$PATH:$ZOOKEEPER_HOME/bin
  7. cp /usr/local/zookeeper/conf/zoo_sample.cfg /usr/local/zookeeper/conf/zoo.cfg (用zoo_sample.cfg制作$ZOOKEEPER_HOME/conf/zoo.cfg)
  8. mkdir /tmp/zookeeper
  9. mkdir /var/log/zookeeper

zookeeper的单机安装已经完成了。

第三步,安装zeromq以及jzmq
jzmq的安装貌似是依赖zeromq的,所以应该先装zeromq,再装jzmq。
1)安装zeromq:

  1. wget http://download.zeromq.org/zeromq-2.2.0.tar.gz
  2. tar zxf zeromq-2.2.0.tar.gz
  3. cd zeromq-2.2.0
  4. ./configure
  5. make
  6. make install
  7. sudo ldconfig (更新LD_LIBRARY_PATH)

zeromq安装完成。
注意:如有有依赖报错,需要安装:
jzmq dependencies 依赖包
sudo yum install uuid*
sudo yum install libtool
sudo yum install libuuid 
sudo yum install libuuid-devel
2)安装jzmq

  1. yum install git
  2. git clone git://github.com/nathanmarz/jzmq.git
  3. cd jzmq
  4. ./autogen.sh
  5. ./configure
  6. make
  7. make install

然后,jzmq就装好了.
注意:在./autogen.sh这步如果报错:autogen.sh:error:could not find libtool is required to run autogen.sh,这是因为缺少了libtool,可以用#yum install libtool*来解决。

第四步,安装Storm

我使用的Storm版本是最新的稳定版0.8.2,下载,解压,修改/conf/storm.yaml配置文件:

Storm 0.8.2 下载  http://pan.baidu.com/s/1sjODKPB

  1. unzip storm-0.8.2.zip
  2. mv storm-0.8.2 /usr/local/
  3. ln -s /usr/local/storm-0.8.2/ /usr/local/storm
  4. gedit /etc/profile
  5. export STORM_HOME=/usr/local/storm-0.8.2
  6. export PATH=$PATH:$STORM_HOME/bin

到此为止单机版的Storm就安装完毕了。

启动Storm

  1. /usr/local/zookeeper/bin/zkServer.sh start
  2. cd /usr/local/storm-0.8.2
  3. bin/storm nimbus &
  4. bin/storm supervisor &
  5. bin/storm ui &

如果我们没有为storm添加环境变量,那么在启动的时候,我们就需要使用绝对路径或相对路径来定位/chenny/Storm/storm-0.8.2/bin/storm这个程序。启动完成后,我们可以使用jps来查看进程状态: >>jps    在没有运行任务时,我们必须应该要看到5个进程:QuorumPeerMain、nimbus、core、Jps、supervisor。否则 就需要检查是否正确地启动,如果启动之后没有过多久就停止了,我们就需要查看~/storm-0.8.2/logs下面的对应的log文件,查看引起异常 的原因是什么,然后解决后再次启动。    同时,我们可以在浏览器中输入http://127.0.0.1:8080来进入Storm UI的界面,可以查看Storm运行期间的相关信息。

第五步,测试一下本地模式的WordCount

网上别的资料介绍了许多方式来编译可执行的Topology程序,我们这里提供一个简单的办法,只需要使用Eclipse和相关的Jar包即 可,Ubuntu或者Windows环境下均可。我们需要从github上下载下来一个供初学者学习的storm-starter,同时,我们还需要有 commons-collections-3.2.1-bin.tar.gz、twitter4j-2.2.6.zip和storm-0.8.2.zip 等软件包,如果没有的话,需要去下载。以Windows XP下的Eclipse为例。首先我们将所有需要的包解压放到桌面,打开Eclipse,新建Java Project,名字任意取,我取名叫做MyFirstStormApp,然后点击Finish。

在MyFirstStormApp上右键,选择Import,然后选择File System:

在From Directory中输入相应的路径或者点击Browse,选择路径:

我们依次展开storm-starter-master/src/jvm/storm,选中jvm文件夹,点击确定,然后勾选jvm,点击finish:

这样,我们就在左侧看到Project的结构:

拖动storm到src中,然后安装同样的方式将 storm-starter-master/storm-starter-master/multilang导入到项目中,然后我们就在左侧看到如下图所示的结构:

可以看到上面有很多红叉,此时,我们就需要导入项目所依赖的jar包,在项目上右键,选择Properties,然后Java Build Path,切换到Libraries选项夹下,点击Add External JARs:

将storm-0.8.2/lib目录下的所有jar包都加入到项目中,将

commons-collections-3.2.1.jar添加到 项目中,将twitter4j-2.2.6/lib中的所有jar包加入到项目中,将storm-0.8.2/storm-0.8.2.jar加入到项目 中,然后点击OK,这个时候,可以看到项目中的所有错误都消失了。接下来,我们将PrintSampleStream.java和 TwitterSampleSpout.java中的注释取消,或者将这两个文件删除

在项目上选择Export,然后选择JAR file,在下一页,我们将项目导出,勾选如下图所示:

点击finish后,如果没有错误,只有warning的话,就不用管了,否则我们需要检查错误,然后重新打包。打包后的jar包是MyFirstStormApp.jar,将它拷贝到部署有Storm的机器上(/usr/local/storm-0.8.2目录下),然后在终端中输入:

>>bin/storm jar MyFirstStormApp.jar storm.starter.WordCountTopology test2   如果没有错误,就成功提交了,在浏览器中输入http://127.0.0.1:8080,可以看到这个Topology已经在运行了,点击它的名字,可以进入Topology summary:

如果看到这些数据,就说明我们正确地完成了配置。

Twitter Storm安装配置(Ubuntu系统)单机版的更多相关文章

  1. Ubuntu安装及ubuntu系统使用菜岛教程

    Ubuntu是一款广受欢迎的开源Linux发行版,和其他Linux操作系统相比,Ubuntu非常易用,和Windows相容性很好,非常适合Windows用户的迁移,在其八年的成长过程中已经获得了两千多 ...

  2. centos tomcat/resin安装配置 卸载系统自带的java tomcat安装配置 安装JDK resin安装配置 第二十八节课

    centos  tomcat/resin安装配置  卸载系统自带的java  tomcat安装配置  安装JDK   resin安装配置    第二十八节课 tomcat和java都不需要编译 tom ...

  3. Twitter Storm 安装实战

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

  4. 光驱SSD安装Win7+ubuntu系统双系统

    准备条件: U盘,32GB,三星品牌 SSD,120GB,三星品牌 win7旗舰版,Ghost系统(安装简单嘛),Ylmf_Ghost_Win7_SP1_x64_2016_1011.iso ubunt ...

  5. hadoop伪分布式集群搭建与安装(ubuntu系统)

    1:Vmware虚拟软件里面安装好Ubuntu操作系统之后使用ifconfig命令查看一下ip; 2:使用Xsheel软件远程链接自己的虚拟机,方便操作.输入自己ubuntu操作系统的账号密码之后就链 ...

  6. 解决安装完Ubuntu系统后启动项中没有Ubuntu的问题

    问题出现的原因是你没有把grub安装到硬盘的起始扇区里,按理说Ubuntu在安装的时候应该能很好的处理这个问题,但有个别电脑还是会出问题.不过我们可以通用命令解决 问题. 使用U盘进入Ubuntu系统 ...

  7. openresty安装配置 Ubuntu下

    1.进入openresty-1.11.2.4的压缩包木木,我这里是在“/usr/local/”下: 2.进入后执行[tar -xzvf openresty-1.11.2.4.tar.gz]进行解压 3 ...

  8. Arch Linux安装配置-双系统(1)

    Arch Linux启动盘准备: 在Windows下安装Win32 Disk Imager,打开页面,点击Download即可! 安装配置 1.选择我同意 2.选择安装位置路径 3.打勾,在桌面显示图 ...

  9. 教你如何安装配置Windows7系统 IIS IIS7.5本地浏览测试网站 完整版介绍

    大家都知道网站建设前期测试于浏览网站都喜欢用iis本地浏览来操作 那么为了方便大家自己来安装和配置Internet信息服务 相信大家,对于Windows 7有了相应的了解,从操作上,使用上,内置功能上 ...

随机推荐

  1. [转]Liunx上安装svn客户端

    [转]Liunx上安装svn客户端 虽然说很简单的用yum install subversion就可以将svn安装到系统中,但是yum库中的版本实在是有点低——1.4.2.因此我选择以源码方式安装.安 ...

  2. svn忽略eclipse自动生成的文件

    工程目录下右键,选择“TortoiseSVN”——“Settings”菜单 选择“General”,在“Global ignore pattern”输入框的最前面添加 .settings .class ...

  3. angularjs http 请求拦截器

    /** * Created by oy on 2016/11/29. */ (function() { 'use strict'; // 创建angular模块 angular .module('ap ...

  4. JAVA RMI例子

    RMI 是java语言的一个RPC框架,本文给出基础例子如下: 1.实现接口: public interface ICalc extends Remote { public int add(int p ...

  5. STC12C5A60S2笔记2(存储)

    STC12C5A60S2单片机分为4个物理上独立的存储区域: 1. 程序flash存储器(60KB) 程序Flash存储器用以存储用户程序及数据.单片机复位后默认从0000H单元开始执行指令. 1) ...

  6. Nim语言的模块化编程

    前言 Nim支持把一大段程序分成若干个模块 一个模块就是一个源代码文件 每个模块都拥有它自己的名称空间 模块化可以起到封装(信息隐藏)和分步编译的作用 一个模块可以通过import语句获得另一个模块的 ...

  7. C#Light Everywhere

    C#语法嵌入式脚本,0.1Beta版本咯,可用于各种环境,欢迎测试. 可以解决各种热更新问题 比如Unity在AOT环境下,比如各种不能采用动态加载DLL的场合. 如果遇到bug,请给我留言,我会从速 ...

  8. 100天后 - 100-days-later

    赛斯·高汀(Seth Godin)的博客:  http://sethgodin.typepad.com/seths_blog/2013/04/100-days-later.html 面对着数以千计的图 ...

  9. [异常解决] android studio检测不到手机的解决办法——ADB驱动自己安装

    用android studio搭建安卓开发环境比eclipse简单的多,仅仅下载一个1个G左右的安装包安装即可. 安装好之后随便建一个hello world工程,想用实体手机调试要点: 选择USB设备 ...

  10. [蓝牙] 6、基于nRF51822的蓝牙心率计工程消息流Log分析(详细)

    开机初始化Log Log编号 函数名   所在文件名 000001: main ..\main.c 000002: timers_init ..\main.c 000003: gpiote_init ...