閱讀863 返回首頁    go 技術社區[雲棲]


Apache Storm 官方文檔 —— 命令行操作

本文介紹了 Storm 命令行客戶端中的所有命令操作。如果想要了解怎樣設置你的 Strom 客戶端和遠程集群的交互,請按照配置開發環境一文中的步驟操作。

Storm 中支持的命令包括:

  1. jar
  2. kill
  3. activate
  4. deactivate
  5. rebalance
  6. repl
  7. classpath
  8. localconfvalue
  9. remoteconfvalue
  10. nimbus
  11. supervisor
  12. ui
  13. drpc

jar

語法:storm jar topology-jar-path class ...

使用指定的參數運行 main 方法(也就是打包好的拓撲 jar 包中的 main 方法)。Storm 所需要的 jar 包和配置信息都在類路徑(classpath)中。這個運行過程已經配置好了,這樣 StormSubmitter 就可以在提交拓撲的時候將 topology-jar-path中的 jar 包上傳到集群中。

kill

語法:storm kill topology-name [-w wait-time-secs]

殺死集群中正在運行的名為 topology-name 的拓撲。執行該操作後,Storm 首先會注銷拓撲中的 spout,使得拓撲中的消息超時,這樣當前的所有消息就會結束執行。隨後,Storm 會將所有的 worker 關閉,並清除他們的狀態。你可以使用 -w參數來調整 Storm 在注銷與關閉拓撲之間的間隔時間。

activate

語法:storm activate topology-name

激活運行指定拓撲的所有 spout。

deactivate

語法:storm deactivate topology-name

停止指定拓撲的所有 spout 的運行。

rebalance

語法:storm rebalance topology-name [-w wait-time-secs]

有些場景下需要對正在運行的拓撲的工作進程(worker)進行彈性擴展。例如,加入你有 10 個節點,每個節點上運行有 4 個 worker,現在由於各種原因你需要為集群添加 10 個新節點。這時你就會希望通過擴展正在運行的拓撲的 worker 來使得每個節點隻運行兩個 worker,降低集群的負載。實現這個目的的一種直接的辦法是 kill 掉正在運行的拓撲,然後重新向集群提交。不過 Storm 提供了再平衡命令可以以一種更簡單的方法實現目的。

再平衡首先會在一個超時時間內(這個時間是可以通過 -w 參數配置的)注銷掉拓撲,然後在整個集群中重新分配 worker。接著拓撲就會自動回到之前的狀態(也就是說之前處於注銷狀態的拓撲仍然會保持注銷狀態,而處於激活狀態的拓撲則會返回激活狀態)。

repl

語法:storm repl

打開一個帶有類路徑上的 jar 包和配置信息的 Clojure 的交互式解釋器(REPL)。該命令主要用於調試。

classpath

語法:storm classpath

打印客戶端執行命令時使用的類路徑環境變量。

localconfvalue

語法:storm localconfvalue conf-name

打印出本地 Storm 配置中 conf-name 屬性的值。這裏的本地配置指的是 ~/.storm/storm.yaml 和 defaults.yaml 兩個配置文件綜合後的配置信息。

remoteconfvalue

語法:storm remoteconfvalue conf-name

打印出集群配置中 conf-name 屬性的值。這裏的集群配置指的是 $STORM-PATH/conf/storm.yaml 和 defaults.yaml 兩個配置文件綜合後的配置信息。該命令必須在一個集群機器上執行。

nimbus

語法:storm nimbus

啟動 nimbus 後台進程。該命令應該在 daemontools 或者 monit 這樣的工具監控下執行。詳細信息請參考配置 Storm 集群一文。

supervisor

語法:storm supervisor

啟動 supervisor 後台進程。該命令應該在 daemontools 或者 monit 這樣的工具監控下執行。詳細信息請參考配置 Storm 集群一文。

ui

語法:storm ui

啟動 UI 後台進程。UI 提供了一個訪問 Storm 集群的 Web 接口,其中包含有運行中的拓撲的詳細信息。該命令應該在daemontools 或者 monit 這樣的工具監控下執行。詳細信息請參考配置 Storm 集群一文。

drpc

語法:storm drpc

啟動 DRPC 後台進程。該命令應該在 daemontools 或者 monit 這樣的工具監控下執行。詳細信息請參考分布式 RPC一文。

最後更新:2017-05-22 15:02:21

  上一篇:go  在 RHEL 7.1 上設置 Mesos/Marathon 集群
  下一篇:go  NMAP 常用掃描簡介(二)