Storm叢集搭建

來源:互聯網
上載者:User

一、安裝前準備

jdk-6u32-linux-x64.bin (jdk-1.6.x即可)

zookeeper-3.4.5.tar.gz

zeromq-2.1.7.tar.gz

jzmq https://github.com/nathanmarz/jzmq

storm-0.8.2.zip

python 2.6

unzip

請盡量使用本文提供的軟體包版本,尤其是zeroMQ,因為其他版本可能導致storm運行失敗

一、安裝jdk

安裝jdk並配置JAVA_HOME環境變數

二、安裝ZooKeeper叢集

Zookeeper叢集的安裝文章有很多,在此不再贅述。建議叢集中節點數量為不小於2的奇數。

三、安裝zeroMQ

zeroMQ實際上是一個高效的底層通訊庫。按步驟來

tar -xvf zeromq-2.1.7.tar.gz

cd zeromq-2.1.7.tar.gz

./configure 一般情況下預設即可

make

sudo make install

註:1)確保make和make install 過程中沒有出現error 2)zeroMQ的更進階別版本可能導致storm通訊失敗

四、安裝jzmq

jzmq是zeroMQ的java綁定

cd jzmq

./autogen.sh

./configure

make

sudo make install

確保make和make install過程中沒有出現任何error

五、檢查zeroMQ和jzmq的安裝

查看zeromq和jzmq的庫是否已經安裝到位,一般在/usr/local/lib目錄:

ls -l /usr/local/lib

-rw-r--r--. 1 root root  434774 Jan 23 14:46 libjzmq.a
-rwxr-xr-x. 1 root root     926 Jan 23 14:46 libjzmq.la
lrwxrwxrwx. 1 root root      16 Jan 23 14:46 libjzmq.so -> libjzmq.so.0.0.0
lrwxrwxrwx. 1 root root      16 Jan 23 14:46 libjzmq.so.0 -> libjzmq.so.0.0.0
-rwxr-xr-x. 1 root root  196860 Jan 23 14:46 libjzmq.so.0.0.0
-rw-r--r--. 1 root root 4928202 Jan 23 14:33 libzmq.a
-rwxr-xr-x. 1 root root     958 Jan 23 14:33 libzmq.la
lrwxrwxrwx. 1 root root      15 Jan 23 14:33 libzmq.so -> libzmq.so.1.0.0
lrwxrwxrwx. 1 root root      15 Jan 23 14:33 libzmq.so.1 -> libzmq.so.1.0.0
-rwxr-xr-x. 1 root root 1995704 Jan 23 14:33 libzmq.so.1.0.0
drwxr-xr-x. 2 root root    4096 Jan 23 14:33 pkgconfig
-rw-r--r--. 1 root root   13642 Jan 23 14:33 zmq.jar

六、安裝storm

安裝完zeroMQ和jzMQ之後就可以安裝storm了

直接解壓至相應目錄即可

七、配置運行環境

1)配置hosts 

storm叢集中的機器必須具有不同的hostname,並且彼此能互相連通。舉例:

storm叢集節點的hosts都應做如下綁定

10.237.35.182   zookeeper
10.237.35.182   nimbus
10.237.35.108   drpc

2)配置storm.yaml

storm.zookeeper.servers

storm.local.dir storm本地目錄,多個執行個體不能互相覆蓋

java.library.path java庫路徑,如果在安裝zeroMQ和jzMQ過程中使用預設配置則不需要修改

nimbus.host 主節點

執行個體

########### These MUST be filled in for a storm configuration
storm.local.dir: "/usr/local/storm-0.8.2/storm-local"
storm.zookeeper.servers:
     - "zookeeper"
#     - "server2"

nimbus.host: "nimbus"
ui.port: 8090
#supervisor.slots.ports:
#    - 6700
#    - 6701
#    - 6702
#    - 6703
#topology.debug: true
supervisor.childopts: "-Xmx256m -Djava.net.preferIPv4Stack=true"


# ##### These may optionally be filled in:
#    
## List of custom serializations
# topology.kryo.register:
#     - org.mycompany.MyType
#     - org.mycompany.MyType2: org.mycompany.MyType2Serializer
#
## List of custom kryo decorators
# topology.kryo.decorators:
#     - org.mycompany.MyDecorator
#
## Locations of the drpc servers
drpc.servers:
     - "drpc"
     - "drpc2"   
drpc.worker.threads: 1024
drpc.queue.size: 10240
topology.max.spout.pending: 20480
topology.max.task.parallelism: 1024

八、啟動

1、在nimubs節點啟動nimbus服務 

nohup storm nimbus &

2、在nimbus節點啟動ui服務

nohup storm ui &

3、在supervisor節點啟動supervisor服務 

nohup storm supervisor &

4、在drpc節點啟動drpc服務 

nohup storm drpc &

九、其他

在安裝過程中可能需要安裝其他依賴包,根據實際情況安裝

其他可參考

https://github.com/nathanmarz/storm/wiki/Setting-up-a-Storm-cluster

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.