您的位置:首页 > 其它

[译]【Storm入门指南】附录A 安装Storm客户端

2016-01-19 17:40 295 查看

Storm 客户端允许你使用指令来管理 topology 提交到集群中。遵循如下步骤来安装 Storm 客户端:

Storm 站点下载最新稳定版 Storm;

一旦下载了,将其解压到
/usr/local/bin/storm


接着,添加storm PATH,以便可以运行 storm 指令,无需输入全路径。如果你使用
/usr/local/bin/storm
目录,使用
export
PATH=$PATH:usr/local/bin/storm
来设置;

最后,需要创建 Storm 本地设置用来告诉 nimbus host 是哪台机器。创建
~./storm/storm.yaml
,输入
nimbus.host:"our
nimbus address"


现在,你可以在 Storm 集群中管理 topology 了。

Storm 客户端包含运行Storm集群的所有必需指令,但是还需要安装其他工具以及配置一些参数。请参见附录B

为了管理集群中的 toology,你拥有一组非常简单和实用的指令来提交、杀死、禁止、重新激活以及再平衡topology。

jar指令负责执行topology,并通过主函数中的
StormSubmitter
对象将它提交到集群中。

<span class="line-number" style="margin:0px; padding:0px">1</span>
storm jar path-to-topology-jar class-with-the-main arg1 arg2 argN

path-to-topology-jar
是包含了topology代码以及所有类库的编译jar
所在的完全路径。
class-with-the-main
StormSubmitter
被执行的主函数,其他参数是主函数方法参数。

Storm 具有 挂起或禁止正在运行的topology、冻结topology spout的能力。当冻结 topology时,已发射的tuple会被处理,但是 spout 的 nextTuple不会被再调用。

禁止一个topology,运行

<span class="line-number" style="margin:0px; padding:0px">1</span>
storm deactive topology-name

如果想重新激活一个被终止的topology,运行:

<span class="line-number" style="margin:0px; padding:0px">1</span>
storm active topology-name

如果想销毁一个topology,可以使用 kill 指令。它会以一种安全的方式销毁topology。首先终止topology,冻结持续的 topology 消息,允许topology处理完正在进行的工作。

杀死一个topology,运行:

<span class="line-number" style="margin:0px; padding:0px">1</span>
storm kill topology-name

可以通过在运行杀死指令时增加 -w [time-in-sec] 来改变销毁topology时的冻结持续时间。

再平衡允许你可以将任务再发布到整个集群的工作节点中。当你的任务不平衡时,这是个可派上用场的强大的指令。比如,如果你往正在运行的集群中增加了一些节点的时候。再平衡指令会冻结topology中的消息,将它们再发布到工作节点,然后Storm重新激活该topology。

为了再平衡一个topology,运行:

<span class="line-number" style="margin:0px; padding:0px">1</span>
storm rebalance topology-name

如果想配置冻结的持续时间,使用 -w 参数设置:

<span class="line-number" style="margin:0px; padding:0px">1</span>
storm rebalance topology-name -w toher-time

指令的详细解释,请参加:https://github.com/nathanmarz/storm/wiki/Command-line-client

原始地址: http://JavanLu.github.io/blog/2013/10/29/getting-started-with-storm-appendix-a/

written by JavanLu posted at http://JavanLu.github.io
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: