要使用storm首先要安裝如下工具:JDK、Python、zookeeper、zeromq、jzmq、stormhtml
(注:各個模塊都是獨立的,若是安裝失敗或者卡頓能夠單獨百度某個模塊的安裝,都是能夠的。)java
JDK1.7安裝 參見上篇《Ubuntu下安裝配置JDK1.7》http://www.cnblogs.com/stone_w/p/4469548.htmlpython
第一步,安裝Python2.7.2(ubuntu)git
wget http://www.python.org/ftp/python/2.7.2/Python-2.7.2.tgz tar zxvf Python-2.7.2.tgz cd Python-2.7.2 ./configure make make install vi /etc/ld.so.conf 追加/usr/local/lib/ sudo ldconfig
第二步,安裝zookeeper github
下載zookeeper
解壓,安裝:http://pan.baidu.com/s/1jGjA90Mubuntu
tar -zxvf zookeeper-3.3.5.tar.gz cp -R zookeeper-3.3.5 /usr/local/ ln -s /usr/local/zookeeper-3.3.5/ /usr/local/zookeeper gedit /etc/profile (設置ZOOKEEPER_HOME和ZOOKEEPER_HOME/bin) export ZOOKEEPER_HOME="/path/to/zookeeper" export PATH=$PATH:$ZOOKEEPER_HOME/bin cp /usr/local/zookeeper/conf/zoo_sample.cfg /usr/local/zookeeper/conf/zoo.cfg (用zoo_sample.cfg製做$ZOOKEEPER_HOME/conf/zoo.cfg) mkdir /tmp/zookeeper mkdir /var/log/zookeeper
zookeeper的單機安裝已經完成了。瀏覽器
第三步,安裝zeromq以及jzmq
jzmq的安裝貌似是依賴zeromq的,因此應該先裝zeromq,再裝jzmq。
1)安裝zeromq:jvm
wget http://download.zeromq.org/zeromq-2.2.0.tar.gz tar zxf zeromq-2.2.0.tar.gz cd zeromq-2.2.0 ./configure make make install sudo ldconfig (更新LD_LIBRARY_PATH)
zeromq安裝完成。
注意:若有有依賴報錯,須要安裝:
jzmq dependencies 依賴包
sudo yum install uuid*
sudo yum install libtool
sudo yum install libuuid
sudo yum install libuuid-devel
2)安裝jzmq工具
yum install git git clone git://github.com/nathanmarz/jzmq.git cd jzmq ./autogen.sh ./configure make make install
而後,jzmq就裝好了.
注意:在./autogen.sh這步若是報錯:autogen.sh:error:could not find libtool is required to run autogen.sh,這是由於缺乏了libtool,能夠用#yum install libtool*來解決。學習
第四步,安裝Storm
我使用的Storm版本是最新的穩定版0.8.2,下載,解壓,修改/conf/storm.yaml配置文件:
Storm 0.8.2 下載 http://pan.baidu.com/s/1sjODKPB
unzip storm-0.8.2.zip mv storm-0.8.2 /usr/local/ ln -s /usr/local/storm-0.8.2/ /usr/local/storm gedit /etc/profile export STORM_HOME=/usr/local/storm-0.8.2 export PATH=$PATH:$STORM_HOME/bin
到此爲止單機版的Storm就安裝完畢了。
啓動Storm
/usr/local/zookeeper/bin/zkServer.sh start cd /usr/local/storm-0.8.2 bin/storm nimbus & bin/storm supervisor & bin/storm ui &
若是咱們沒有爲storm添加環境變量,那麼在啓動的時候,咱們就須要使用絕對路徑或相對路徑來定位/chenny/Storm/storm-0.8.2/bin/storm這個程序。啓動完成後,咱們可使用jps來查看進程狀態: >>jps 在沒有運行任務時,咱們必須應該要看到5個進程:QuorumPeerMain、nimbus、core、Jps、supervisor。不然 就須要檢查是否正確地啓動,若是啓動以後沒有過多久就中止了,咱們就須要查看~/storm-0.8.2/logs下面的對應的log文件,查看引發異常 的緣由是什麼,而後解決後再次啓動。 同時,咱們能夠在瀏覽器中輸入http://127.0.0.1:8080來進入Storm UI的界面,能夠查看Storm運行期間的相關信息。
第五步,測試一下本地模式的WordCount
網上別的資料介紹了許多方式來編譯可執行的Topology程序,咱們這裏提供一個簡單的辦法,只須要使用Eclipse和相關的Jar包即 可,Ubuntu或者Windows環境下都可。咱們須要從github上下載下來一個供初學者學習的storm-starter,同時,咱們還須要有 commons-collections-3.2.1-bin.tar.gz、twitter4j-2.2.6.zip和storm-0.8.2.zip 等軟件包,若是沒有的話,須要去下載。以Windows XP下的Eclipse爲例。首先咱們將全部須要的包解壓放到桌面,打開Eclipse,新建Java Project,名字任意取,我取名叫作MyFirstStormApp,而後點擊Finish。
在MyFirstStormApp上右鍵,選擇Import,而後選擇File System:
在From Directory中輸入相應的路徑或者點擊Browse,選擇路徑:
咱們依次展開storm-starter-master/src/jvm/storm,選中jvm文件夾,點擊肯定,而後勾選jvm,點擊finish:
這樣,咱們就在左側看到Project的結構:
拖動storm到src中,而後安裝一樣的方式將 storm-starter-master/storm-starter-master/multilang導入到項目中,而後咱們就在左側看到以下圖所示的結構:
能夠看到上面有不少紅叉,此時,咱們就須要導入項目所依賴的jar包,在項目上右鍵,選擇Properties,而後Java Build Path,切換到Libraries選項夾下,點擊Add External JARs:
將storm-0.8.2/lib目錄下的全部jar包都加入到項目中,將
commons-collections-3.2.1.jar添加到 項目中,將twitter4j-2.2.6/lib中的全部jar包加入到項目中,將storm-0.8.2/storm-0.8.2.jar加入到項目 中,而後點擊OK,這個時候,能夠看到項目中的全部錯誤都消失了。接下來,咱們將PrintSampleStream.java和 TwitterSampleSpout.java中的註釋取消,或者將這兩個文件刪除
在項目上選擇Export,而後選擇JAR file,在下一頁,咱們將項目導出,勾選以下圖所示:
點擊finish後,若是沒有錯誤,只有warning的話,就不用管了,不然咱們須要檢查錯誤,而後從新打包。打包後的jar包是MyFirstStormApp.jar,將它拷貝到部署有Storm的機器上(/usr/local/storm-0.8.2目錄下),而後在終端中輸入:
>>bin/storm jar MyFirstStormApp.jar storm.starter.WordCountTopology test2 若是沒有錯誤,就成功提交了,在瀏覽器中輸入http://127.0.0.1:8080,能夠看到這個Topology已經在運行了,點擊它的名字,能夠進入Topology summary:
若是看到這些數據,就說明咱們正確地完成了配置。