1、安装一个zookeeper集群
使用weekend05,weekend06,weekend07安装有zookeeper集群
2、上传storm的安装包,解压
需要3台机子,nimbus(协调管理)、supervisor-01(负责具体运算)、supervisor-01(负责具体运算)
3、修改配置文件storm.yaml
#所使用的zookeeper集群主机
storm.zookeeper.servers:
- "weekend05"
- "weekend06"
- "weekend07"
#nimbus所在的主机名
nimbus.host: "weekend05"
4、复制到其他主机上
scp -r storm-0.9.2/ weekend06:/home/admin/app/
scp -r storm-0.9.2/ weekend07:/home/admin/app/
5、配置supervisor的work网络端口号,可以不用配置
supervisor.slots.ports
-6701
-6702
-6703
-6704
-6705
6、启动storm
在nimbus主机上
bin下,./storm nimbus (内部,关闭secureCRT连接就没了)
bin下,./storm ui (外部访问的进程)
在supervisor主机上(不用配置,启动一台,动态加入集群管理中)
bin下,./storm supervisor
7、查看进程
netstat -nltp
8、浏览器查看
weekend05:8080
storm的深入学习:
分布式共享锁的实现
事务topology的实现机制及开发模式
在具体场景中的跟其他框架的整合(flume/activeMQ/kafka(分布式的消息队列系统) /redis/hbase/mysql cluster)
10、storm 的基本概念
Topologies : 拓扑,也俗称一个任务
Spouts : 拓扑的消息源
Bolts : 拓扑的处理逻辑单元
tuple:消息元组
Streams : 流
Stream groupings :流的分组策略
Tasks : 任务处理单元
Executor :工作线程
Workers :工作进程
Configuration : topology的配置
11、程序代码打包
(1)提交Topologies
jar 【jar路径】 【拓扑包名.拓扑类名】【stormIP地址】【storm端口】【拓扑名称】【参数】
eg:./storm jar /home/admin/storm-starter.jar storm.starter.WordCountTopology wordcountTop;
#提交storm-starter.jar到远程集群,并启动wordcountTop拓扑。
(2)停止Topologies
查看当前运行的topo: storm list
命令格式:storm kill 【拓扑名称】
样例:storm kill wordcountTop
#杀掉wordcountTop拓扑。