Strom 安装&部署

本地执行:Storm Topology是可进行本地运行的, 必须在发布前进行本地测试, 以确保代码本身业务逻辑没有问题( Windows也可执行, 但是由于权限等原因, 执行时可能会报错, 但不影响执行结果).

本地集群执行: Storm的本地集群搭建只能在UNIX架构的系统上执行, 相对于本地测试来说, 本地集群测试可以暴露更多的问题(比如文件路径, 权限等), 像是真正的将Topology提交到生产集群一样.

Storm 相关网站: 并发编程网-Storm, 官网
Storm 相关书籍: Getting Started with Storm

1.安装本地集群

1.1 Mac参见:
http://blog.csdn.net/lazythinker/article/details/13002069

1.2 Linux参见官网:
http://storm.incubator.apache.org/documentation/Setting-up-a-Storm-cluster.html
http://my.oschina.net/BreathL/blog/84165

1.3 需要的Dependency有:
#
Linux
OSX
依赖及备注
1 JDK6 JDK6 Zookeeper
2 Python2.6.6 and above Python2.6.6 and above Nimbus
3 Zookeeper Zookeeper 务必重命名${Zookeeper}/conf下的zoo_sample.conf --> zoo.conf
4 无 autotools, autoconf, automake, pkg-config
ZeroMQ JZMQ
OSX详细安装介绍:
http://www.loveyqq.tk/?p=6
OSX pkg-conf问题解决:
http://stackoverflow.com/questions/3522248/how-do-i-compile-jzmq-for-zeromq-on-osx
5 ZeroMQ ZeroMQ
OSX详细安装介绍:
http://www.loveyqq.tk/?p=6
6 JZMQ JZMQ
OSX问题解决:
http://tjun.org/blog/2012/04/how-to-build-jzmq-in-mac-os-x-lion/
http://stackoverflow.com/questions/4478125/zeromq-java-installation-problem

1.4 测试
启动nimbus : ${storm_honme}/bin/storm nimbus
启动supervisor: ${storm_honme}/bin/storm supervisor
启动ui: ${storm_honme}/bin/storm ui
访问127.0.0.1:8080, storm 是否正常启动, 或者使用命令行查看storm 状态

2.开发Storm Topology 及 部署到集群

2.1 Storm Hello World Code
url: https://github.com/zhwbqd/examples-ch02-getting_started

2.2 执行
mvn clean package
对于这个例子,在拓扑工程目录下面运行:
storm jar target/Topologies-0.0.1-SNAPSHOT.jar TopologyMain ${project_path}/src/main/resources/words.txt
通过这些命令,你就把拓扑发布集群上了。
如果想停止或杀死它,运行:
storm kill Count-Word-Topology
NOTE:拓扑名称必须保证惟一性。

2.3 查看执行结果
访问127.0.0.1, 查看是否有对应的Topology
或 storm list 查看情况
也可查看 ${strom_home}/logs/work.log 查看工作进程执行结果

最新文章

  1. Python之路【第二篇】python基础 之基本数据类型
  2. C#使用StackTrace获取方法被谁调用
  3. linux软件包的安装和卸载
  4. Grand Theft Auto V 图形研究(2)
  5. Linux下程序对拍_C++
  6. hdu 1853 Cyclic Tour 最小费用最大流
  7. Java基础知识强化之集合框架笔记26:LinkedList的特有功能
  8. CLR via C# - CLR模型
  9. Mac os 进行Android开发笔记(2)
  10. SSH使用技巧
  11. StarUML中InteractionOperation的画法
  12. 支持“XXX”上下文的模型已在数据库创建后发生更改。请考虑使用 Code First 迁移更新数据库(http://go.microsoft.com/fwlink/?LinkId=238269)。
  13. 【RL-TCPnet网络教程】第4章 RL-TCPnet网络协议栈简介
  14. Python语言学习之C++调用python
  15. YUV的数据格式
  16. Spring整合MyBatis(简单登录Demo)
  17. springboot整合zookeeper
  18. redis实战笔记(10)-第10章 扩展Redis
  19. Linux监控和安全运维 2.0 zabbix配置邮件告警
  20. zfs mount

热门文章

  1. POJ 开关问题 1830【高斯消元求矩阵的秩】
  2. boost库shared_ptr实现桥接模式
  3. 【Excle数据透视表】如何显示/隐藏数据透视表字段列表
  4. Web Service之Soap请求响应内容中文编码解密
  5. VueJS循环语句:v-for
  6. 为备考二级C语言做的代码练习---辅导资料《C语言经典编程282例》--(1)
  7. [Android Studio 权威教程]最有用的快捷键
  8. Proving Equivalences (hdu 2767 强联通缩点)
  9. 【转载】【selenium+Python WebDriver】之元素定位
  10. EasyNVR RTSP转RTMP-HLS流媒体服务器前端构建之:通过接口获取实时信息