storm安装小记

来源:互联网 发布:剑三万花捏脸数据 编辑:程序博客网 时间:2024/06/05 04:02

1 所需安装软件

0.8系列的底层通信用的是zeromq,所以在安装的时候,需要安装zeromq等软件,也是网络上可以找到的很多storm安装资料中都会提到的一些软件

  0.9系列底层开始支持jetty通信,但默认还是zeromq,所以要改成jetty的话,需要在storm.yaml中添加一些配置项
  我安装的时候下载的截止目前最新版本0.9.5,貌似默认就是jetty通信,在安装的时候,各节点只需要安装jdk和python即可,无需再安装zeromq等底层软件包
2 配置文件storm.yaml
 storm.zookeeper.servers:
     - "zookeeper节点"
     - "zookeeper节点"
     - "zookeeper节点"
#如果zookeeper不是使用默认端口启动的,需要再配置storm.zookeeper.port


 nimbus.host: "主节点名称"
 storm.local.dir: "本地磁盘路径,需保证有写权限"


 supervisor.slots.ports:
     - 6700
     - 6701
     - 6702
     - 6703
3 启动命令
  主节点nohup storm nimbus > /dev/null 2>&1 &
        nohup storm ui > /dev/null 2>&1 &  对应web端8080端口页面
        nohup storm logviewer > /dev/null 2>&1 &
  从节点nohup storm 
        nohup storm supervisor > /dev/null 2>&1 &
  nohup /dev/null 2>&1 & 是控制进程在后台执行,且抛弃屏幕输出

nohup 是指不挂断的执行命令 避免注销或者屏保后,命令自动中断 

&是在后台执行

默认情况下,nohup执行的日志在当前目录下的nohup.out中,除非重定向
此处重定向到了/dev/null,即空白设备,即丢弃了。
如果不适用nohup &启动,会在屏幕打印日志信息,且处于等待输入的状态,不会回到shell命令行。
如果用ctrl+z 切换到shell命令行,进程会终止,虽然jps还能显示进程号,但通过web页面可以看到进程已经关闭了
所以最好是通过后台启动,以免需要新开窗口做其它命令的执行,或者关闭当前窗口时启动进程终止。
碰到的问题:
用nohup命令在某节点启动进程,然后用jps查看进程,显示的是exit[127] 命令

发现是因为没有配置环境变量,却在nohup后面直接使用了storm命令

后来在网上查了下资料:

nohup命令返回下列出口值:
126 可以查找但不能调用 Command 参数指定的命令。
127 nohup 命令发生错误或不能查找由 Command 参数指定的命令。

0 0
原创粉丝点击