一.安装依赖项
1.python2.7
2.zookeeper
如未安装请参考该文章进行安装:zookeeper集群搭建
Apache-Storm 0.9.0版本之后,默认使用netty进行数据传输,虽然还支持zeromq,但是强烈建议使用netty,这样免去了安装zeromq及相关兼容问题,并且经过测试使用netty比zeromq效率高1倍左右。
二.集群规划
1.hosts配置
三台服务器都需要进行配置
ip | 域名 |
192.168.205.207 | data-test-207 |
192.168.205.208 | data-test-208 |
192.168.205.210 | data-test-210 |
2.目录规划
目录 | 用途 |
/opt/modules/storm | storm目录符号链接 |
/data1/storm | storm本地数据目录 |
三.下载storm并写该相关配置
cd /opt/modules
wget http://apache.fayea.com/apache-mirror/incubator/storm/apache-storm-0.9.2-incubating/apache-storm-0.9.2-incubating.tar.gz
tar -zxf apache-storm-0.9.2-incubating.tar.gz
ln -s apache-storm-0.9.2-incubating storm
cd storm
vi bin/storm.yaml
配置如下图:
vi bin/storm
将USER_CONF_DIR变量值修改掉:
USER_CONF_DIR = "/opt/modules/storm/conf"
将代码分发至三台机器
四。启动
data-test-208启动nimbus与ui
storm nimbus > /dev/null 2>&1 &
storm ui >/dev/null 2>&1 &
storm supervisor > /dev/null 2>&1 &
五.编译Storm并使用storm-starter测试集群
提交topology至storm
storm jar storm-starter-0.9.2-incubating.jar storm.starter.WordCountTopology word_count
可以看到topology已经成功提交。