準(zhǔn)備工作:
- 將開(kāi)發(fā)好的jar包上傳到服務(wù)器package目錄下
- Storm集群已經(jīng)啟動(dòng)
我們提交一個(gè)WordCount任務(wù):
為了方便么库,我們?nèi)砸?a target="_blank" rel="nofollow">
blogchong
老師的代碼為例 GitHub項(xiàng)目鏈接,請(qǐng)讀者自行打包并上傳到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
解釋下這條命令中的各個(gè)參數(shù):
- jar:運(yùn)行你的storm job,topology是類(lèi)中的主函數(shù)
- ./storm-example-0.0.1-SNAPSHOT.jar:這個(gè)就不用說(shuō)了,你要提交的jar包
- com.blogchong.storm.helloworld.WordCountTopology:執(zhí)行的主類(lèi)
- task:Topology任務(wù)名稱(chēng),注意這個(gè)是不能重復(fù)的
執(zhí)行結(jié)果如圖所示
提交拓?fù)淙蝿?wù)
稍等下就會(huì)顯示拓?fù)淙蝿?wù)提交成功苍苞。
- 命令行查看storm任務(wù)
storm list
執(zhí)行后會(huì)顯示storm當(dāng)前任務(wù)列表,證明任務(wù)確實(shí)提交成功了
拓?fù)淙蝿?wù)列表
- 在storm監(jiān)控UI上查看
打開(kāi)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目錄
我們可以看到冈欢,這里有個(gè)worker-6703.log文件,這個(gè)文件就是6703端口的worker的工作日志盈简。查看該日志
tail -f worker-6703.log
我們可以看到凑耻,終端中已經(jīng)出現(xiàn)了不斷變化的詞頻統(tǒng)計(jì)
日志
到此為止犯戏,我們的wordcount任務(wù)提交完成,當(dāng)然這只是提交一個(gè)最基本的拓?fù)淙蝿?wù)拳话,更復(fù)雜的以后我們?cè)僬f(shuō)。
storm相關(guān)命令
- activate :激活指定任務(wù)种吸;
- classpath:打印storm的classpath 弃衍;
- deactivate :暫停storm的任務(wù);
- dev-zookeeper :?jiǎn)?dòng)一個(gè)新的Zookeeper坚俗,這種情況只用于dev/test 镜盯;
- drpc:?jiǎn)?dòng)一個(gè)DRPC進(jìn)程;
- help :命令解釋及操作提示猖败;
- jar :運(yùn)行你的storm job速缆,topology是類(lèi)中的主函數(shù);
- kill:通過(guò)任務(wù)名稱(chēng)kill一個(gè)任務(wù)恩闻;
- list:列出正在運(yùn)行的topolofies和狀態(tài)艺糜;
- localconfvalue:打印出具體配置參數(shù)在本地storm配置文件中的值;
- nimbus:?jiǎn)?dòng)一個(gè)nimubs進(jìn)程幢尚;
- supervisor:?jiǎn)?dòng)一個(gè)supervisor進(jìn)程破停;
- ui:?jiǎn)?dòng)監(jiān)控頁(yè)面UI的后臺(tái)進(jìn)程;
- rebalance:節(jié)點(diǎn)擴(kuò)展之后進(jìn)行負(fù)載均衡尉剩;
- remoteconfvalue:打印出具體配置參數(shù)在storm cluster中的值真慢;
- version :獲取版本Storm號(hào);