一:安装JDK.
下载地址:地址一 地址二
配置java环境变量 JAVA_HOME、Path、CLASSPATH三个值分别为(按照自己安装状况设置,此处供参考):
D:\java\jdk17
%JAVA_HOME%/bin;%JAVA_HOME%/jre/bin
.;%JAVA_HOME%/lib/dt.jar;%JAVA_HOME%/lib/tools.jar (要加.表示当前路径)
二:安装 Python
这是为了测试安装效果,我们将部署 storm-starter project案例中word coun程序,用的是python写的multi-lang bolt,使用python 2.7.6,安装路径在:
C:\Python27\
三:安装并运行ZooKeeper
Download Apache Zookeeper 3.3.6 ,解压配置:
> cd zookeeper-3.3.6 > copy conf\zoo_sample.cfg conf\zoo.cfg > .\bin\zkServer.cmd
四:安装Storm
Storm的windows官方版还没有释放,here.下载,源码here下载
配置Storm环境变量
Storm需要STORM_HOME和JAVA_HOME,比如
STORM_HOME为
C:\storm-0.9.1-incubating-SNAPSHOT-12182013\
在PATH中加入:
%STORM_HOME%\bin;C:\Python27\Lib\site-packages\;C:\Python27\Scripts\;
PATHEXT加入
.PY
此处与参考文章略有不同,下图是参考文章给出的配置
JAVA_HOME已经在安装JDK时手动配置了环境变量,而Python好像是默认自动就会配置好环境变量的,
我的Python目录下没有Scripts文件夹,暂时这样配置就可以了,不影响下面的使用。
五。启动Nimbus, Supervisor, and Storm UI Daemons
Nimbus
> cd %STORM_HOME% > storm nimbus
Supervisor
> cd %STORM_HOME% > storm supervisor
Storm UI
> cd %STORM_HOME% > storm ui
浏览器打开http://localhost:8080/ 可看到Storm运行。
六:部署Word count
部署这个jar在本地:
> storm jar storm-starter-0.0.1-SNAPSHOT-jar-with-dependencies.jar storm.starter.WordCountTopology WordCount -c nimbus.host=localhost
如果你刷新 Storm UI页面,会看到 “WordCount” topology显示列出,点按链接确认它处理数据。
遇到的问题
Storm JAVA_HOME is incorrectly set.
解决办法:
在环境变量中添加。
或者在storm中的bin文件下有一个storm-config.cmd,使用文本打开,查询JAVA_HOME
其中
if not defined JAVA_HOME (
set JAVA_HOME=D:\0915\jdk1.6.0_10
)
更改这里的set JAVA_HOME的路径,其路径是你存放java虚拟机的地址。
jdk路径不能有空格
http://blog.csdn.net/cauchy8389/article/details/39586763
公司要求搭建Storm平台,用于对Storm平台的实时流处理做评估。任务交给了我。虽然说只是本地模式,但是却花了我好几天的时间。各种网上发帖问,各种向大牛问。最终还是解决了。再此记录下过程吧。
下载Storm,地址为https://github.com/nathanmarz/storm,Storm用于将JAR包和Topology的主类提交给nimbus。本地模式我们只需记住一个命令:storm jar storm-starter-0.0.1-SNAPSHOT-jar-with-dependencies storm.starter.WordCountTopology
下载strom-starter,地址为https://github.com/nathanmarz/storm-starter,在本地模式跑通里面的WordCountTopology例子。
下载Maven,地址为http://maven.apache.org/download.html,用于对storm-starter中例子的所有代码以及所以来的JAR包进行打包。
1 下载好strom,将storm的bin目录放到PATH路径下。并将bin目录下的storm脚本设置成可执行模式。
2 开始安装maven. 下载好maven,将bin目录放到PATH路径即可。
3 进入storm-starter的文件夹,里面有一个m2-pom.xml的文件,这个文件里面记录着storm-starter所依赖的jar包,jar包由maven仓促管理。运行mvn -f m2-pom.xml package命令。将会执行几分钟,因为会下载一些依赖的Jar包。。如果出现有些jar包不能下载。那就需要自己手动下载然后发到~/.m2/repository文件夹下。~号,代表的是当前用户的目录。windows下是C:\Documents and Settings\your_host_name\.m2\repository下。linux运行一下cd ~ && pwd命令,然后在去找.m2文件夹即可。
4 执行完上步骤后,会在storm-starter文件夹下生成一个target目录,里面生成两个Jar包。一个是storm-starter-0.0.1-SNAPSHOT.jar,另一个是 storm-starter-0.0.1-SNAPSHOT-jar-with-dependencies.jar,然后在此目录运行storm jar storm-starter-0.0.1-SNAPSHOT-jar-with-dependencies.jar storm.starter.WordCountTopology这个命令就会在本机模式下,用线程模拟storm平台执行topology。执行结果显示无误的话,输出会有10000多行。
我在SUSE下完成了本地模式的运行。现在想想这个过程真的没什么,但是开始跑程序例子的时候就是出现了各种问题。命令不懂;怎样的输出才是正确的;为什么跑通的人说起来就是这么简单,但是自己就是出现各种问题;可见,自己还是个新手,实践的少,对于出现的问题不知道如何解决。总结起来四句话,外事问google,内事问baidu,有事问大牛,没事看大牛的blog。
接下来的工作就是部署一个storm集群,虽然是一个小集群,但是对于初次可以尝试配置几台服务器的我,也挺令人振奋的。
http://m.blog.csdn.net/blog/joeyon/41595527