Storm集羣的安裝分爲如下幾步:java
一、首先保證Zookeeper集羣服務的正常運行以及必要組件的正確安裝web
二、釋放壓縮包apache
三、修改storm.yaml添加集羣配置信息vim
四、使用storm腳本啓動相應服務並查看服務狀態服務器
五、經過web查看storm集羣的狀態oop
安裝Storm以前首先保證以前安裝的Zookeeper服務正常運行,包括配置hosts映射,主機名修改,防火牆都已經設置無缺測試
Storm是由java編寫,所以必須依賴JDK運行,系統首先應正確安裝JDKui
部分須要依賴Python,紅帽系列Linux默認Python版本是2.6.6,能夠知足要求;Linux能夠安裝多個版本Python共存,生產過程當中建議Python版本爲2.7.xspa
這裏測試使用的三臺虛擬機主機名分別是:hadoopha,hadoop1,hadoop23d
首先去Apache Storm官網下載安裝包,網址是:http://storm.apache.org/,進入後點擊上方DOWNLOAD按鈕,進入下載列表
這裏下載的是storm 0.9.5的版本,下載以後上傳到服務器目錄下,釋放而且放到指定的目錄:
$ tar -xvzf apache-storm-0.9.5.tar.gz $ mv apache-storm-0.9.5 /usr/ $ cd /usr/apache-storm-0.9.5
接下來須要修改配置文件storm.yaml,執行vim conf/storm.yaml打開文件:
去掉storm.zookeeper.servers:前面的註釋,修改成集羣中全部部署zookeeper的主機,固然均可以本身手動添加,具體配置以下:
增長storm.local.dir選項,指定nimbus,supervisor進程用於存儲少許的狀態數據,好比jar包,配置文件等
待會寫好配置文件咱們須要手動創建這個目錄
下面指定supervisor工做節點,須要配置該節點能夠運行的worker數量,每一個worker佔用一個端口用於接收消息,最多分配5個;默認狀況下每一個節點能夠運行4個worker,分別在6700、670一、670二、6703端口,這裏定義3個端口,表明最多運行3個worker:
下面設置集羣主機,讓集羣中全部的節點能夠從主機下載拓撲以及配置文件,主機上運行的就是nimbus,而其餘節點就是supervisor進程,這裏hadoopha爲nimbus,而hadoop1和hadoop2爲supervisor,因此配置以下:
下面配置storm集羣的drpc地址,這裏就是hadoopha,實際中能夠本身定義:
最後配置storm進程的分配內存,默認狀況下Storm啓動worker進程時,JVM的最大內存是768M,因爲在使用過程當中,Bolt中加載大量數據,768M內存沒法知足要求,會致使內存溢出,應該根據實際狀況進行修改,這裏設置爲2G
以上設置沒問題,保存配置文件並退出
而後在3臺主機分別建立上面設置的數據目錄,必須都要建立:
mkdir -p /usr/data/storm
上面的配置是在hadoopha上配置的,接下來要把storm目錄發送到hadoop1和hadoop2:
$ scp -r apache-storm-0.9.5 hadoop1:/usr/ $ scp -r apache-storm-0.9.5 hadoop2:/usr/
發送以後,進入storm安裝目錄,開始啓動相應服務
首先啓動Nimbus服務,只在hadoopha上執行:
nohup bin/storm nimbus >> /dev/null &
上面命令的意思是丟棄輸出信息而且放到後臺執行,稍微等一下,執行jps查看nimbus進程是否啓動:
而後在hadoop1,hadoop2節點都啓動Supervisor服務:
nohup bin/storm supervisor >> /dev/null &
稍等一下,也能夠用jps查看到supervisor進程,
而後在配置drpc的主機hadoopha,drpc是一種後臺服務,用於執行和storm相同的計算,可是比較節省資源,通常和nimbus使用同一臺主機便可;執行如下命令啓動drpc服務:
nohup bin/storm drpc >> /dev/null &
稍等一下能夠分別經過jps命令查看到drpc進程,
最後在nimbus節點也就是hadoopha執行如下命令,啓動UI服務:
nohup bin/storm ui >> /dev/null &
經過jps能夠查看core進程是否啓動,啓動以後經過訪問hadoopha的ip便可進入web管理界面:http://192.168.1.42:8080
到這裏基本的storm集羣就配置完畢了