分享

Twitter Storm: 配置开发环境

pig2 发表于 2014-8-27 21:38:59 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 0 7909
问题导读:
1.storm有几种操作模式?
2.storm如何搭建开发环境?
3.本地机器安装一个storm的作用是什么?





这篇文章介绍了如何配置一个storm的开发环境, 总的来看有下面几个步骤:
1. 下载storm的release版本, 解压,并且把bin/目录加到环境变量PATH里面去。
2. 为了让我们可以启动/停止远端storm集群上的topology, 把集群的信息配置在 ~/.storm/storm.yaml里面。
下面具体介绍。
storm开发环境到底是个什么样子storm有两种操作模式: 本地模式和远程模式。使用本地模式的时候,你可以在你的本地机器上开发测试你的topology, 一切都在你的本地机器上模拟出来; 用远端模式的时候你提交的topology会在一个集群的机器上执行。
一个storm开发环境安装了你使用本地模式开发测试topology; 把topology打包以部署到远端的集群; 提交,终止远端集群上的topology所需要的一切东西。
让我们快速看一下你的机器和远端storm集群之间的关系。storm集群是被一个称作Nimbus的控制节点所管理的。你的机器与nimbus通信以提交topology的代码,运行这个topology,而nimbus会自动在集群内部分发你的topology代码, 分配任务给各个机器。你的机器使用一个称为storm的客户端去和nimbus通信。storm只有在远程模式的时候才有用; 对于用本地模式开发,测试topology来说是没什么用的。
在本地机器安装一个storm如果你想从你的机器提交topology给远端的storm集群, 你应该在你的本地安装一个storm发行版。安装了storm发行版之后你会得到你和远端集群通信的工具: storm。为了在本地安装storm, 从这里下载代码,并且把它解压到你机器上的一个目录。然后把bin/目录添加到环境变量PATH里面去并且使bin/storm有可执行权限。
安装一个storm发行版只是用来和远端storm集群通信用的。而为了用本地模式开发测试topology, 我们推荐你使用maven来把storm作为你的项目的一个dev依赖。关于使用Maven开发storm项目可以看这篇文章:Maven
在一个远端集群里面启动/终止topology前面一个步骤在你的机器上安装了可以和远端集群通信用的storm客户端。现在你只需要告诉你的storm客户端和哪个集群进行通信。把你集群的控制节点的地址指定在~/.storm/strom.yaml里面就可以了:


  1. nimbus.host: "123.45.678.890"
复制代码


或者你也可以使用storm-deploy项目来操作AWS上面的storm集群, 它会自动设置好你的~/.storm/storm.yaml文件。你可以手动“添加”一个集群(或者在多个集群之间进行切换) — 使用”attach”命令:


  1. lein run :deploy --attach --name mystormcluster
复制代码




更多关于storm-deploy的信息看这里






载自:徐明明的博客
本文翻译自:https://github.com/nathanmarz/storm/wiki/Setting-up-development-environment

没找到任何评论,期待你打破沉寂

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条