1.下载storm 的安装文件
http://www.apache.org/dyn/closer.cgi/incubator/storm/apache-storm-0.9.2-incubating/apache-storm-0.9.2-incubating.tar.gz
1 tar -zxvf apache-storm-0.9.2-incubating.tar.gz
2.修改Storm的配置文件 conf/storm.yaml
1 storm.zookeeper.servers: 2 - "localhost" 3 # - "server2" 4 # 5 nimbus.host: "localhost" 6 # 7 # 8 9 # storm local dir 10 storm.local.dir: "/home/zhaofuxin/data/storm/work_dir" 11 12 # storm web manager ui port 13 ui.port: 8088 14 15 # 16 supervisor.slots.ports: 17 - 6700 18 - 6701 19 - 6702 20 - 6703
在配置时一定注意在每一项的开始时要加空格,冒号后也必须要加空格,否则storm就不认识这个配置文件了。
各个配置项说明:
storm.local.dir 表示storm需要用到的本地目录
nimbus.host 表示那一台机器是master机器
storm.zookeeper.servers 表示哪几台机器是zookeeper服务器
storm.zookeeper.port 表示zookeeper的端口号,这里一定要与zookeeper配置的端口号一致,否则会出现通信错误
supervisor.slots.ports 表示supervisor节点的槽数
nimbus服务器设置在node1上,各自创建对应的workdir文件夹。ui.port这里修改成了8088,默认是8080,为了避免和其他web服务冲突。supervisor.slots.ports: 对于每个Supervisor工作节点,需要配置该工作节点可以运行的worker数量.每个worker占用一个单独的端口用于接收消息,该配置选项即用于定义哪些端口是可被worker使用的。默认情况下,每个节点上可运行4个workers,分别在6700、6701、6702和6703端口
3. 启动storm.
Nimbus: 在Storm主控节点(node1)上运行,启动Nimbus后台程序,并放到后台执行(各自exception重定向到null了,呵呵);
[plain] view plaincopy
- bin/storm nimbus >/dev/null 2>&1 &
Supervisor: 在Storm各个工作节点(node1,node2)上运行,启动Supervisor后台程序,并放到后台执行;
[plain] view plaincopy
- bin/storm supervisor >/dev/null 2>&1 &
UI: 在Storm主控节点(node1)上运行,启动UI后台程序,并放到后台执行。
[plain] view plaincopy
- bin/storm ui >/dev/null 2>&1 &
UI启动后,可以通过 http://node1:8088 观察集群的worker资源使用情况、Topologies的运行状态等信息。