在Linux终端直接输入storm,不带任何参数信息,或者输入storm help,可以查看Storm命令行客户端(Command line client)提供的帮助信息。


 


Storm 0.9.0.1版本在Linux终端直接输入storm后的输出内容如下:


Commands:


activate


classpath


deactivate


dev-zookeeper


drpc


help


jar


kill


list


localconfvalue


logviewer


nimbus


rebalance


remoteconfvalue


repl


shell


supervisor


ui


version


 


Help: 


help 


help <command>


 


Documentation for the storm client can be found at https://github.com/nathanmarz/storm/wiki/Command-line-client


 


Configs can be overridden using one or more -c flags, e.g. "storm list -c nimbus.host=nimbus.mycompany.com"


 


由此可知,新版Storm的命令行客户端提供了19个命令。


 


1. activate


 


激活指定的拓扑Spout。语法如下:


 


storm activate topology-name


 


2. classpath


 


打印出Storm客户端运行命令时使用的类路径(classpath)。语法如下:


 


storm classpath


 


3. deactivate


 


禁用指定的拓扑Spout。语法如下:


 


storm deactivate topology-name


 


4. dev-zookeeper


 


以dev.zookeeper.path配置的值作为本地目录,以storm.zookeeper.port配置的值作为端口,启动一个新的ZooKeeper服务,仅用来开发/测试。语法如下:


 


storm dev-zookeeper


 


5. drpc


 


启动一个DRPC守护进程。语法如下:


 


storm drpc


 


该命令应该使用daemontools或者monit工具监控运行。


 


6. help


 


打印一条帮助消息或者可用命令的列表。语法如下:


 


storm help


 


storm help <command>


 


直接输入不带参数的storm,也可以启动storm help命令。


 


7. jar


 


运行类的指定参数的main方法。语法如下:


 


storm jar topology-jar-path class ...


 


把Storm的jar文件和“~/.storm”的配置放到类路径(classpath)中,以便当拓扑提交时,StormSubmitter会上传topology-jar-path的jar文件。


 


8. kill


 


杀死名为topology-name的拓扑。语法如下:


 


storm kill topology-name [-w wait-time-secs]


 


Storm首先会在拓扑的消息超时时间期间禁用Spout,以允许所有正在处理的消息完成处理。然后,Storm将会关闭Worker并清理它们的状态。可以使用-w标记覆盖Storm在禁用与关闭期间等待的时间长度。


 


9. list


 


列出正在运行的拓扑及其状态。语法如下:


 


storm list


 


10. localconfvalue


 


打印出本地Storm配置的conf-name的值。语法如下:


 


storm localconfvalue conf-name


 


本地Storm配置是~/.storm/storm.yaml与defaults.yaml合并的结果。


 


11. logviewer


 


启动Logviewer守护进程。语法如下:


 


storm logviewer


 


Logviewer提供一个Web接口查看Storm日志文件。该命令应该使用daemontools或者monit工具监控运行。


 


12. nimbus


 


启动Nimbus守护进程。语法如下:


 


storm nimbus


 


该命令应该使用daemontools或者monit工具监控运行。


 


13. rebalance


 


语法如下:


 


storm rebalance topology-name [-w wait-time-secs]


 


有时你可能希望扩散一些正在运行的拓扑的Worker。例如,假设你有一个10个节点的集群,每个节点运行4个Worker,然后假设需要添加另外10个节点到集群中。你可能希望有Spout扩散正在运行中的拓扑的Worker,这样每个节点运行两个Worker。解决的一种方法是杀死拓扑并重新提交拓扑,但Storm提供了一个rebalance的命令,我们可以用一种更简单的方法来做到这一点。


 


rebalance首先会在消息超时时间内禁用拓扑,使用-w可以覆盖超时时间,然后重新均衡分配集群的Worker,拓扑会返回到它原来的状态,即禁用的拓扑仍将禁用,激活的拓扑继续激活。


 


14. remoteconfvalue


 


打印出远程集群Storm配置的conf-name的值。语法如下:


 


storm remoteconfvalue conf-name


 


集群Storm配置是$STORM-PATH/conf/storm.yaml与defaults.yaml合并的结果。该命令必须在集群节点上运行。


 


15. repl


 


打开一个包含类路径(classpath)中的jar文件和配置的Clojure REPL,以便调试时使用。语法如下:


 


storm repl


 


Clojure可以作为一种脚本语言内嵌到Java中,但是Clojure的首选 ​​编程​​方式是使用REPL,REPL是一个简单的命令行接口。使用REPL,可以输入命令并执行,然后查看结果。


 


16. shell


 


执行Shell脚本。语法如下:


 


storm shell resourcesdir command args


 


17. supervisor


 


启动Supervisor守护进程。语法如下:


 


storm supervisor


 


该命令应该使用daemontools或者monit工具监控运行。


 


18. ui


 


启动UI守护进程。语法如下:


 


storm ui


 


UI为Storm集群提供了一个Web界面并显示运行拓扑的详细统计信息。该命令应该使用daemontools或者monit工具监控运行。


 


19. version


 


打印Storm发布的版本号。语法如下:


 


storm version


 


2.10     ​​Java​​doc文档


 


对于最新的Storm提供的在线 ​​Java​​doc文档信息,可以参考如下网址:


 


​ http://nathanmarz.github.io/storm/ ​


 


目前,Storm提供的在线Javadoc文档如表2.4所示。


 


表2.4  Storm提供的在线Javadoc文档


Javadoc文档的链接地址


http://nathanmarz.github.io/storm/doc-0.8.1/index. ​​html​


http://nathanmarz.github.io/storm/doc-0.8.0/index. ​​html​


​ http://nathanmarz.github.io/storm/doc-0.7.1/index.html ​


​ http://nathanmarz.github.io/storm/doc-0.7.0/index.html ​


​ http://nathanmarz.github.io/storm/doc-0.6.2/index.html ​