系统环境 Centos7
外网ip 182.254.145.66
内网ip 10.105.23.114
安装位置  /usr/local/jstorm-2.1.1









安装zookeeper

参见

http://www.cnblogs.com/ilovexiao/p/3946547.html

不过这篇博客有个问题
/datatmp/zookeeper/logs
这个文件夹是需要手动新建的


安装python

Centos7本身已经自带了Python2.7.5
使用python -V即可查看python的版本


安装JStorm

wget http://42.121.19.155/jstorm/jstorm-2.1.1.zip
unzip jstorm-2.1.1.zip
cd jstorm-2.1.1
修改配置文件conf/storm.yaml
我的storm.yaml如下: (已经去掉注释)
########### These MUST be filled in for a storm configuration
 storm.zookeeper.servers:
     - "10.105.23.114"


 storm.zookeeper.root: "/jstorm"




 nimbus.host: "10.105.23.114"
 nimbus.host.start.supervisor: false
 
 nimbus.childopts: "-Xmx256m"
 supervisor.childopts: "-Xmx256m"
 worker.childopts: "-Xmx128m"




 storm.local.dir: "%JSTORM_HOME%/data"


 supervisor.slots.ports:
    - 6800
    - 6801
    - 6802
    - 6803

yaml文件的格式比较麻烦 在这里,我就说一点 
在缩排中空白字符的数目并不是非常重要,只要相同阶层的元素左侧对齐就可以了(不过不能使用TAB字符);
我的/etc/hosts
127.0.0.1    localhost
10.105.23.114   VM_23_114_centos

/

2016-6-30日修改

我在我的虚拟机上搭建的jstorm的时候

私网地址是10.150.0.94 在hosts里面对应的域名也是localhost

结果报错Caused by: java.lang.Exception: the hostname which  supervisor get is localhost  

所以我把localhost改成了localhost2

然后重启网卡就OK 设置完后须运行/etc/init.d/network restart,否则不起作用



/



在~/.bashrc末尾加入:
export JSTORM_HOME=/usr/local/jstorm-2.1.1
export PATH=$PATH:$JSTORM_HOME/bin
然后 使环境变量生效:
source ~/.bashrc
配置完上面内容后,需要创建~/.jstorm目录,并将配置好的storm.yaml文件拷贝到该目录下:
mkdir ~/.jstorm
cp -f /usr/local/jstorm-2.1.1/conf/storm.yaml ~/.jstorm


安装JStorm UI

jstorm的安装目录下就有 jstorm-ui-2.1.1.war
先安装tomcat
wget http://apache.fayea.com/tomcat/tomcat-7/v7.0.57/bin/apache-tomcat-7.0.57.zip
unzip apache-tomcat-7.0.57.zip
cd apache-tomcat-7.0.57
chmod +x bin/*.sh
把放到tomcat的webapps的ROOT里,如果jstorm-ui-2.1.1只当做一个普通的项目与ROOT并列,会发现运行的时候JStorm有些图片显示不出来
cp ~/jstorm-2.1.1/jstorm-ui-2.1.1.war webapps/
mv ROOT ROOT.old
ln -s jstorm-ui-0.9.6.2 ROOT

java测试代码

见http://blog.csdn.net/xeseo/article/details/17683049




启动JStorm

先启动zookeeper
zookeeper-3.4.6/bin/zkServer.sh start

在jstorm-2.1.1/bin下

先启动nimbus与supervisor
   nohup jstorm nimbus &
   nohup jstorm supervisor &
然后去
/usr/local/jstorm-2.1.1/logs
下看nimbus.log与supervisor.log
看是否有错误
然后启动
  ./jstorm jar storm-samples.jar mystorm.ExclaimBasicTopo test
storm-samples.jar是之前的测试代码打成的jar包
mystorm.ExclaimBasicTopo是启动类
最后的test就是Topologyname
另外 再说明一下,那个jar里面是没有storm的依赖包的,就只有我们写的那些类
jstorm-2.1.1/lib下有需要的外部jar


查看JStormUI

访问182.254.145.66:8080
如下:





参考资料

 JStorm-0.9.6.2安装配置
http://blog.csdn.net/shcyd/article/details/1354618 
Error contacting service. It is probably not running 错误
点击打开链接  Storm系列之最基本的例子
   Storm详解二、写第一个Storm应用
Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐