本文將介紹如何設置Storm的開發環境。下面是大綱:
html
1.下載Storm發佈包,解壓,將解壓的 bin目錄放到你電腦的PATH中。git
2.爲了可以在遠程集羣中啓動或者中止Topology,請將集羣信息放到~/.storm/storm.yaml中github
下面是步驟的詳細說明。apache
什麼是開發環境?maven
Storm有兩種運行模式:本地模式和遠程模式。在本地模式下,你徹底可使用本地機器來開發和測試Topology。在遠程模式下,提交Topology到遠程集羣執行。工具
Storm開發環境包含了全部工具,所以你能夠在本地模式開發和測試Topology,打包並在遠程集羣中運行,向集羣提交或者kill掉Topology。測試
咱們來快速瞭解下本地機器和遠程集羣的關係。一個Storm集羣由一個叫"Nimbus"的主節點管理。你的機器和Nimbus通訊同時向遠程集羣提交代碼(打包成jar)和Topology,Nimbus 會分發你的代碼而且分配worker運行你提交的Topology,你的機器使用storm客戶端來和Nimbus通訊。Storm客戶端只能在遠程模式下使用;它在本地模式下不起做用。spa
本地安裝Stormcode
若是你想從你的機器提交Topology到遠程集羣,你須要在本地安裝Storm。經過客戶端和遠程集羣交互。要在本地安裝Storm點擊此處下載Storm發佈包,而且將其解壓在你電腦的某個地方。而後將解壓的bin目錄添加到你PATH中,使bin/storm腳本可執行。orm
本地安裝Storm僅僅是爲了和遠程集羣交互。在本地模式下開發和測試Topology,建議你使用maven而且在項目中包含Storm的依賴。閱讀Maven一文來了解如何使用maven。
在遠程集羣啓動和中止Topology
前面安裝了Storm客戶端來和遠程集羣進行通訊。如今,你要作的是告訴Storm要和哪一個集羣對話。要和集羣對話,你必須作的工做是將主節點的主機地址放到~/.storm/storm.yaml文件中,以下所示:
nimbus.host: "123.45.678.890"
另外,若是你用storm-deploy項目在AWS上部署Storm集羣,它將自動設置~/.storm/storm.yaml文件,你可使用"attach"命令綁定Storm集羣(或者在多個集羣上切換),配置以下:
lein run :deploy --attach --name mystormcluster
storm-deploy的更多信息請關注wiki