这几天在其他同事的帮助下,调研了twitter的开源流式计算框架storm的使用,下面分享一下storm集群的安装配置过程。以作备忘之用。
我的实验机器为:195和196
如果转载请注明出处:comaple的博客
首先:安装依赖包
1, ZeroMQ 2.1.7
2, JZMQ
3, Java
4, Python
5, Unzip
这里只需要安装1,2就可以了。下面是遇到的一些问题:
下载zeroMQ2.1.7 http://www.zeromq.org/area:download
解压:tar –xvf zeromq-2.1.7.tar.gz
Cd 到bin目录:
./autogen.sh 如果没有找到configure文件时要运行这一步。
./configure
configure: error: cannot link with -luuid, install uuid-dev. 运行时如果报这个错解决方案如下:
yum install uuid-dev 提示找不到该依赖包
yum install uuid* 直接用* ok
./configure 再次运行configure还是报错
configure: error: cannot link with -luuid, install uuid-dev.
上网搜索可能是还缺另外一个包
yum install e2fsprogs* ok
make install
a) 下载jzmq.zip https://github.com/nathanmarz/jzmq
b) Cd到bin目录./autogen.sh
c) ./configure
d) make install
配置说明:10.10.249.195:nimbus 10.10.249.196: supervisor
Storm集群需要zookeeper集群的支持所以应该先安装zookeeper集群。再配置storm集群,下面是storm集群的配置:
a) 下载storm-0.7.4.zip https://github.com/nathanmarz/storm/downloads
b) 解压后修改conf/storm.yaml文件,
storm.zookeeper.servers:
- "10.10.249.195"
- "10.10.249.196"
c) # nimbus.host:"nimbus" 这个不用改,nimbus负责提交任务,分配任务。相当于namenode节点。
配置好以后到bin目录下:
./storm nimbus 启动storm主节点服务
./storm ui 启动storm监控页面:监控地址:http://hostname:8080
1,修改storm.yaml 文件:
storm.zookeeper.servers:
-"10.10.249.195"
-"10.10.249.196"
nimbus.host: "10.10.249.195"
#这个是storm将要启动几个本地work,一个端口对应一个work。
supervisor.slots.ports:
- 6700
- 6701
- 6702
- 6703
2,启动supervisor
./storm supervisor
10.10.249.195上面:
./storm jar stormWork.jar SearchKeywordTopNTopology"word-count"
这里有用到的jar文件大家可以试一试:stormWork.jar
监控storm运行情况: