1、Storm集群安装

1、下载

本次选择1.2.2版本进行安装
解压安装到/opt/app目录下

2、配置环境变量

export STORM_HOME=/opt/app/apache-storm-1.2.2
export PATH=$PATH:$STORM_HOME/bin

3、配置

Zookeeper安装见博客中关于Zookeeper内容

cd /opt/app/apache-storm-1.2.2
mkdir status
vi /opt/app/apache-storm-1.2.2/conf/storm.yaml
storm.zookeeper.servers:
     - "ip101"
     - "ip102"
     - "ip103"
nimbus.host: "ip101"
storm.local.dir: "/opt/app/apache-storm-1.2.2/status"
supervisor.slots.ports:
     - 6700
     - 6701
     - 6702
     - 6703

参数解释
1)storm.zookeeper.servers: Storm集群使用的Zookeeper集群地址。

2)storm.local.dir: Nimbus和Supervisor进程用于存储少量状态,如jars、confs等的本地磁盘目录,需要提前创建该目录并给以足够的访问权限。
然后在storm.yaml中配置该目录。

  1. nimbus.host: Storm集群Nimbus机器地址,各个Supervisor工作节点需要知道哪个机器是Nimbus,以便下载Topologies的jars、confs等文件。
  2. supervisor.slots.ports: 对于每个Supervisor工作节点,需要配置该工作节点可以运行的worker数量。
    每个worker占用一个单独的端口用于接收消息,该配置选项即用于定义哪些端口是可被worker使用的。
    默认情况下,每个节点上可运行4个workers,分别在6700、6701、6702和6703端口。


4、启动

启动storm
1)在Storm主控节点上运行:

#标准输出 /dev/null       2>&1 错误输出->标准输出 
#storm nimbus会有两个输出,一个标准输出,一个错误输出 
#2>&1的作用是将 2即错误输出 的内容重定向到&1即标准输出中,然后>/dev/null是将两者的结果输入到/dev/null中,相当于抛弃掉。
#至于最后一个&,因为storm会一直运行,不会自动停掉,页面上就会不停的有内容。
#&的作用就是将storm拿到后台执行。   
storm nimbus >/dev/null 2>&1 &

2)在Storm主控节点上运行:

storm ui >/dev/null 2>&1 &

3)在Storm工作节点上运行:

storm supervisor >/dev/null 2>&1 &

第三步执行后,可以通过http://{nimbus host}:8080观察集群的worker资源使用情况、Topologies的运行状态等信息。

5、Storm 拓扑命令行操作

1)列出Storm Topology:

storm list

  1. 停止Storm Topology:
storm kill {topologyname}
  1. 提交Storm Topology:
storm jar mycode.jar storm.MyTopology arg1 arg2 ...

mycode.jar:包含Topology实现代码的jar包
storm.MyTopology:main方法的入口,即main方法所在类名
arg1、arg2等为main方法参数

6、Storm UI


原文地址:https://www.cnblogs.com/xidianzxm/p/10744143.html