1. 程式人生 > >storm學習(二):搭建storm叢集環境

storm學習(二):搭建storm叢集環境

這次使用一臺伺服器來搭建storm的叢集環境,多臺伺服器的storm叢集搭建方法一樣。

搭建的步驟:

1.安裝zookeeper叢集環境

2.安裝storm的依賴軟體

3.下載storm

4.設定storm配置

5.啟動storm叢集

安裝zookeeper叢集環境:

由於寫這篇文章是直播。我自己想知道為啥要安裝zookeeper呢? 於是停下工作再找找資料看看怎麼說


先用官方的一張圖來說明storm叢集的結構。storm叢集中有兩種節點:主節點和 工作節點。 這個主節點執行著一個守護程序叫(nimbus)其功能是:傳送程式碼到整個叢集,分派任務,監控叢集錯誤。 工作節點執行守護程序叫(supervisor)其功能是:監聽著nimbus傳送過來的任務,並控制處理程序的開始和停止。

nimbus和supervisor程序間協調是通過zookeeper叢集來實現。

解壓到本地之後,修改zookeeper的配置檔案,在zookeeper目錄conf中,拷貝zoo_sample.cfg到zoo.cfg中並修改zoo.cfg

修改引數:dataDir存放zookeeper執行時儲存的檔案,預設是儲存在/tmp下面。新增叢集伺服器server.1=127.0.0.1:2888:3888由於是一臺伺服器就新增一個伺服器資訊,伺服器格式是server.id=[host]:port[:port] 第一個port用來連結leader,第二個埠用來選舉leader來用

修改後的配置檔案:

tickTime=2000
initLimit=10
syncLimit=5
dataDir=/home/storm/zookeeper-3.4.5/data
clientPort=2181
server.1=2888

配置完成之後啟動伺服器在zookeeper目錄中bin下執行zkServer.sh start

2.安裝storm的依賴軟體

storm的依賴的列表:

JZMQ

JAVA6

PYTHON2.6.6

Unzip

主要安裝的需要ZeroMQ2.1.7和JZMQ

在Storm安裝目錄下bin目錄下有install_zmq.sh執行後可以自動安裝,安裝的過程如果報錯一般由於伺服器沒有安裝依賴的庫。不過下載storm應該是第三步的事。

3.下載storm

最好將storm資料夾下bin加入環境變數PATH中。保證bin/storm可以執行。

4.設定storm配置

修改配置檔案storm目錄下 conf/storm.yaml  預設的配置在 https://github.com/nathanmarz/storm/blob/master/conf/defaults.yaml

有幾個配置需要設定一下:

storm.zookeeper.servers: 設定zookeeper的叢集,設定為叢集的伺服器ip列表 

*這個配置檔案:後面需要空格否則報錯 

*如果zookeeper的埠不是預設埠需要設定 storm.zookeeper.port

storm.local.dir:storm叢集需要的檔案儲存地址,設定為指定的一個目錄

nimbus.host:配置nimbus伺服器地址

########### These MUST be filled in for a storm configuration
 storm.zookeeper.servers:
     - "127.0.0.1"
#     - "server2"
#
 storm.local.dir: "/storm/storage" 
 nimbus.host: "127.0.0.1"

5.啟動storm叢集

在bin目錄下如果之前bin已經加入環境變數PATH中,可以在任何目錄下執行:

 $storm nimbus啟動主伺服器 

 $storm supervisor啟動工作伺服器 

 $storm ui 啟動監控伺服器

可以使用jps檢視程序是否已經啟動

ui啟動之後可以訪問 http://ip:8080檢視storm狀態