storm搭建

 

Storm安装

一、启动zookeeper集群apache

二、上传解压storm服务器

三、进入解压包配置conf目录下的storm.yaml文件并发

a) 这里配置zookeeper节点,能够用ip或者域名ui

 

b) 配置nimbus.host做为主节点名spa

 

一、将解压的storm包分发到各个节点线程

二、scp -r apache-storm-0.9.4 root@slave2:/opt/sxt/soft/orm

三、进去安装目录新建一个log目录server

四、启动blog

a) 启动nimbus,./bin/storm nimbus >> logs/nimbus.out 2>&1 &进程

b) 在各个从节点启动supervisor,./bin/storm supervisor >> logs/supervisor.out 2>&1 &

c) 启动storm ui ,./bin/storm ui >> logs/ui.out 2>&1 &

访问主节点的8080端口能看到界面

 

Storm的配置文件各个选项及释义

配置选项名称

配置选项做用

topology.max.task.parallelism

每一个Topology运行时最大的executor数目

topology.workers

每一个Topology运行时的worker的默认数目,若在代码中设置,则此选项值被覆盖

storm.zookeeper.servers

zookeeper集群的节点列表

storm.local.dir

Storm用于存储jar包和临时文件的本地存储目录

storm.zookeeper.root

Stormzookeeper集群中的根目录,默认是“/”

ui.port

Storm集群的UI地址端口号,默认是8080

nimbus.host:

Nimbus节点的host

supervisor.slots.ports

Supervisor节点的worker占位槽,集群中的全部Topology公用这些槽位数,即便提交时设置了较大数值的槽位数,系统也会按照当前集群中实际剩余的槽位数来进行分配,当全部的槽位数都分配完时,新提交的Topology只能等待,系统会一直监测是否有空余的槽位空出来,若是有,就再次给新提交的Topology分配

supervisor.worker.timeout.secs

Worker的超时时间,单位为秒,超时后,Storm认为当前worker进程死掉,会从新分配其运行着的task任务

drpc.servers

在使用drpc服务时,drpc server的服务器列表

drpc.port

在使用drpc服务时,drpc server的服务端口

Storm分组策略

(1)ShuffleGrouping:随机分组,随机分发Stream中的tuple,保证每一个Bolt的Task接收Tuple数量大体一致;
(2)FieldsGrouping:按照字段分组,保证相同字段的Tuple分配到同一个Task中;(3)AllGrouping:广播发送,每个Task都会受到全部的Tuple;(4)GlobalGrouping:全局分组,全部的Tuple都发送到同一个Task中,此时通常将当前Component的并发数目设置为1;(5)NonGrouping:不分组,和ShuffleGrouping相似,当前Task的执行会和它的被订阅者在同一个线程中执行;(6)DirectGrouping:直接分组,直接指定由某个Task来执行Tuple的处理,并且,此时必须有emitDirect方法来发送;(7)localOrShuffleGrouping:和ShuffleGrouping相似,若Bolt有多个Task在同一个进程中,Tuple会随机发给这些Task。

相关文章
相关标签/搜索