1 strom集群规划
Nimbus:hadoop1
zookeeper:hadoop2,hadoop3,hadoop4
supervisor:hadoop5,hadoop6,hadoop7
安装文件:apache-storm-1.0.0.tar
2 配置文件
storm.zookeeper.servers:
- "hadoop2"
- "hadoop3"
- "hadoop4"
nimbus.seeds: ["hadoop1"]
supervisor.slots.ports:
- 6700
- 6701
- 6702
- 6703
storm.local.dir: "/home/hadoop/storm-dir/"
storm.zookeeper.servers:配置zookeeper地址
nimbus.seeds:配置nimbus地址,可以配置多个
supervisor.slots.ports:upervisor上能够运行workers的端口列表.每个worker占用一个端口,且每个端口只运行一个。
storm.local.dir:storm使用的本地文件系统目录。
3 分发安装包
使用scp命令将安装包分发至hadoop5,hadoop6,hadoop7
4 启动集群
4.1 在nimbus所属的机器上启动nimbus服务
nohup ./storm nimbus &
4.2 在nimbus所属的机器上启动ui服务
nohup ./storm ui &
4.3 在其他节点上启动supervisor服务
nohup ./storm supervisor &
在本集群规划中,在hadoop1上启动nimbus和ui服务,在hadoop5,hadoop6,hadoop7上启动supervisor。
访问http://hadoop1:8080可以看到storm的UI界面。
5 Storm常用的操作命令
5.1 提交任务命令
storm jar 【jar路径】【拓扑全类名】 【参数可选】
bin/storm jar examples/storm-starter/storm-starter-topologies0.9.6.jar storm.starter.WordCountTopology wordcount
5.2 杀死任务
storm kill 【拓扑名称】 -w 10(执行kill命令时可以通过-w [等待秒数]指定拓扑停用以后的等待时间)
storm kill topology-name -w 10
5.3 停用任务
storm deactivte 【拓扑名称】
storm deactivte topology-name
我们能够挂起或停用运行中的拓扑。当停用拓扑时,所有已分发的元组都会得到处理,但是spouts的nextTuple方法不会被调用。销毁一个拓扑,可以使用kill命令。它会以一种安全的方式销毁一个拓扑,首先停用拓扑,在等待拓扑消息的时间段内允许拓扑完成当前的数据流。
5.4 启用任务
storm activate【拓扑名称】
storm activate topology-name
5.5 重新部署任务命令格式
storm rebalance 【拓扑名称】
storm rebalance topology-name
再平衡使你重分配集群任务。这是个很强大的命令。比如,你向一个运行中的集群增加了节点。再平衡命令将会停用拓扑,然后在相应超时时间之后重分配工人,并重启拓扑。
来源:oschina
链接:https://my.oschina.net/u/4257474/blog/4215940