準(zhǔn)備工作:
- 將開發(fā)好的jar包上傳到服務(wù)器package目錄下
- Storm集群已經(jīng)啟動
我們提交一個WordCount任務(wù):
為了方便,我們?nèi)砸?a target="_blank" rel="nofollow">
blogchong老師的代碼為例 GitHub項目鏈接,請讀者自行打包并上傳到nimbus節(jié)點(diǎn)上
- nimbus服務(wù)器進(jìn)入package目錄
cd /root/storm1/package
- 執(zhí)行命令
storm jar ./storm-example-0.0.1-SNAPSHOT.jar com.blogchong.storm.helloworld.WordCountTopology task
解釋下這條命令中的各個參數(shù):
- jar:運(yùn)行你的storm job,topology是類中的主函數(shù)
- ./storm-example-0.0.1-SNAPSHOT.jar:這個就不用說了,你要提交的jar包
- com.blogchong.storm.helloworld.WordCountTopology:執(zhí)行的主類
- task:Topology任務(wù)名稱,注意這個是不能重復(fù)的
執(zhí)行結(jié)果如圖所示

提交拓?fù)淙蝿?wù)
稍等下就會顯示拓?fù)淙蝿?wù)提交成功。
- 命令行查看storm任務(wù)
storm list
執(zhí)行后會顯示storm當(dāng)前任務(wù)列表,證明任務(wù)確實提交成功了

拓?fù)淙蝿?wù)列表
- 在storm監(jiān)控UI上查看
打開http://192.168.1.150:8080,查看storm監(jiān)控UI

監(jiān)控UI
在這里我們可以看到當(dāng)前有1條任務(wù),并且運(yùn)行在storm2的supervisor上。
- 查看worker日志
登錄storm2主機(jī),進(jìn)入logs目錄

logs目錄
我們可以看到,這里有個worker-6703.log文件,這個文件就是6703端口的worker的工作日志。查看該日志
tail -f worker-6703.log
我們可以看到,終端中已經(jīng)出現(xiàn)了不斷變化的詞頻統(tǒng)計

日志
到此為止,我們的wordcount任務(wù)提交完成,當(dāng)然這只是提交一個最基本的拓?fù)淙蝿?wù),更復(fù)雜的以后我們再說。
storm相關(guān)命令
- activate :激活指定任務(wù);
- classpath:打印storm的classpath ;
- deactivate :暫停storm的任務(wù);
- dev-zookeeper :啟動一個新的Zookeeper,這種情況只用于dev/test ;
- drpc:啟動一個DRPC進(jìn)程;
- help :命令解釋及操作提示;
- jar :運(yùn)行你的storm job,topology是類中的主函數(shù);
- kill:通過任務(wù)名稱kill一個任務(wù);
- list:列出正在運(yùn)行的topolofies和狀態(tài);
- localconfvalue:打印出具體配置參數(shù)在本地storm配置文件中的值;
- nimbus:啟動一個nimubs進(jìn)程;
- supervisor:啟動一個supervisor進(jìn)程;
- ui:啟動監(jiān)控頁面UI的后臺進(jìn)程;
- rebalance:節(jié)點(diǎn)擴(kuò)展之后進(jìn)行負(fù)載均衡;
- remoteconfvalue:打印出具體配置參數(shù)在storm cluster中的值;
- version :獲取版本Storm號;