歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Twitter Storm安裝配置(集群)筆記

Twitter Storm安裝配置(集群)筆記

日期:2017/2/28 14:48:59   编辑:Linux教程

Twitter Storm的單機版安裝配置已經在上一篇筆記中寫的很清楚了:http://www.linuxidc.com/Linux/2013-05/84272.htm

本篇幅主要是講述在單機版本的基礎上擴展成為集群。

集群中所有的機器都需要安裝與單機版一樣的所需工具軟件:

python、zookeeper、zeromq、jzmq、storm

將上述工具安裝單機版教程中所描述的一一安裝即可。

區別就在於配置了,這裡配置三台服務器 hostA hostB hostC

首先修改zookeeper的配置文件:

vim /usr/local/zookeeper/conf/zoo.cfg :



# The number of milliseconds of each tick
tickTime=2000
# The number of ticks that the initial
# synchronization phase can take
initLimit=10
# The number of ticks that can pass between
# sending a request and getting an acknowledgement
syncLimit=5
# the directory where the snapshot is stored.
dataDir=/tmp/zookeeper
# the port at which the clients will connect
clientPort=2181

server.1=hostA:2888:3888
server.2=hostB:2888:3888
server.3=hostC:2888:3888

上面這個配置文件可以在幾台機一樣。

echo 1 > /tmp/zookeeper/myid

這一步是每台電腦上都不同的。

具體的對應關系參見zoo.cfg中的server.x=hostname:portNumber:portNumber。

也就是說在我的配置文件中,hostA的echo是1,hostB的echo是2,hostC的echo是3。



然後分別啟動三台機器:

bin/zkSever.sh start

這步是啟動三台機器上的zookeeper,每台機器都要做。

接下去有幾個命令是查看集群中zookeeper狀態的:
•# echo stat | nc HOSTMASTER 2181
•# echo con“ | nc HOSTMASTER 2181
•# echo dump | nc HOSTMASTER 2181
•# echo wchs | nc HOSTMASTER 2181
•# echo ruok | nc HOSTMASTER 2181
•# bin/zkCli.sh.stat /
•# bin/zkCli.sh ls /

好了,zookeeper的集群配置好了。接下來配置storm:

vim /usr/local/storm/conf/storm.yaml :

storm.zookeeper.servers:
- "hostA"
- "hostB"
- "hostC"

storm.zookeeper.port: 2181

nimbus.host: "hostA"

storm.local.dir: "/tmp/storm"
storm.local.mode.zmq: true

supervisor.slots.ports:
- 6700
- 6701
- 6702
- 6703



說明:

storm.local.dir表示storm需要用到的本地目錄。

nimbus.host表示那一台機器是master機器,即nimbus。

storm.zookeeper.servers表示哪幾台機器是zookeeper服務器。

storm.zookeeper.port表示zookeeper的端口號,這裡一定要與zookeeper配置的端口號一致,否則會出現通信錯誤,切記切記。當然你也可以配superevisor.slot.port,supervisor.slots.ports表示supervisor節點的槽數,就是最多能跑幾個worker進程(每個sprout或bolt默認只啟動一個worker,但是可以通過conf修改成多個)。

好了,storm集群就配置好了。

現在准備啟動strom集群:

在主節點hostA上啟動:

# bin/storm nimbus

# bin/storm supervisor

# bin/storm ui

在從節點上hostB hostC啟動:

# bin/storm supervisor



然後就可以在http://{NimbusHost}:8080界面上看到storm ui的運行情況了。



如提交運行任務:

storm jar sendCloud-dataAnalysis.jar com.sohu.sendCloud.controller.SimpleTopology analysis_v1

至此,整個strom集群搭建完成。

Copyright © Linux教程網 All Rights Reserved