参考《CentOS6.4下Storm0.9.2单机版安装》的步骤在ubuntu上安装storm,中间遇到一些问题记录一下。
参考文章链接:http://blog.csdn.net/qiyating0808/article/details/36041299
我的linux环境:ubuntu-10.04.4-desktop-i386
一,安装zeromq、jzmq及zookeeper时比较顺利,略过。
zeromq-4.0.4.tar.gz
zookeeper-3.4.6.tar.gz
安装过程可能需要安装的工具:
$ sudo apt-get install libtool autoconf automake
$ sudo apt-get install uuid-dev g++
或者
yum install uuid*
yum install libtool
yum install libuuid
yum install libuuid-devel
二,安装maven
使用apt-get install maven2取得的maven版本太旧(2.X),在编译storm-starter时遇到很多问题,所以在网上下载了apache-maven-3.2.3-bin.tar.gz后重新安装。
配置参考网上的方式如下:
为了使用方便,我们需要把maven加入系统的环境变量配置里
vim /etc/profile
在文件的末尾加入以下内容
export M2_HOME=/usr/local/apache-maven-3.0 export M2=$M2_HOME/bin export MAVEN_OPTS="-Xms256m -Xmx512m"(可选) export PATH=$M2:$PATH(这里一定要注意$PATH前面是:冒号,跟windows的;分号不同哦)
检查下内容,然后保存退出
现在注销系统重新登录,打开shell终端,输入mvn -v是否出现版本信息呢?恭喜你,配置成功!
三,安装storm
下载apache-storm-0.9.2-incubating.tar.gz并安装
基本同《CentOS6.4下Storm0.9.2单机版安装》一文,需要注意修改storm.yaml时 (注意yaml格式的要求,空格tab,:和-前后都有空格),要严格遵守格式要求,部署过程中确实遇到了格式错误。
四,安装storm-starter
《CentOS6.4下Storm0.9.2单机版安装》一文中提到的获取storm-starter的命令
git clone https://github.com/nathanmarz/storm-starter.git
获取得到的storm-starter为默认支持storm0.9.0.1的版本,不知为何用mvn编译始终不通过,最后没有办法改用了在网上搜到的获取最新版本的方法:
git clone git://github.com/apache/incubator-storm.git && cd incubator-storm/examples/storm-starter
不过此方法获得的storm-starter配置文件默认的父项目storm版本为0.9.3,而我能下载到最新的是0.9.2,修改配置文件父项目为0.9.2版本,如下:
<parent> <artifactId>storm</artifactId> <groupId>org.apache.storm</groupId> <version>0.9.2-incubating</version> <relativePath>../../pom.xml</relativePath> </parent>
终于编译通过。
五,启动storm
(启动主节点,后台运行模式) bin/storm nimbus >/dev/null 2>&1 & (启动从节点,后台运行模式) bin/storm supervisor >/dev/null 2>&1 & (启动UI程序,后台运行模式) bin/storm ui >/dev/null 2>&1 &
六,提交storm-starter的Topology Demo:
《CentOS6.4下Storm0.9.2单机版安装》一文中提交的是storm-starter-0.X.X-SNAPSHOT-jar-with-dependencies.jar,但我在实际操作时发现提交依赖包报错,改为提交storm-starter-0.X.X-incubating.jar,因为storm.starter.WordCountTopology.class在该jar包下,修改后提交成功,提交命令如下:
storm jar storm-starter-0.9.2-incubating.jar storm.starter.WordCountTopology wordcountTop
七,查看运行情况
此时就可以通过Web界面查看了:http://localhost:8080/
storm list 查看当前运行的Topology
可在storm目录下的logs下查看日志文件,包含nimbus.log,supervisor.log,各个worker.log.
最后,不太熟悉maven,使用起来始终不太习惯,在现在这个参考前辈们的部署示例成功后,下一步计划在eclipse上再进行下部署。