自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Twitter Storm 系統(tǒng)集群搭建

運(yùn)維 系統(tǒng)運(yùn)維
Storm是Twitter開(kāi)源的一個(gè)分布式的實(shí)時(shí)計(jì)算系統(tǒng),Storm可以用來(lái)處理源源不斷流進(jìn)來(lái)的消息,處理之后將結(jié)果寫入到某個(gè)存儲(chǔ)中去。本文分享了Twitter Storm 集群的搭建方法,希望給您帶來(lái)一些幫助。

Storm是什么?

Storm是Twitter開(kāi)源的一個(gè)分布式的實(shí)時(shí)計(jì)算系統(tǒng)

使用場(chǎng)景:

數(shù)據(jù)的實(shí)時(shí)分析、持續(xù)計(jì)算、分布式RPC等等。

Storm特點(diǎn)(Storm類似手扶電梯,不出故障就會(huì)一直運(yùn)行,hadoop類似升降電梯,到達(dá)一定程度會(huì)停止。):

  • 分布式
  • 可擴(kuò)展
  • 高可靠性
  • 編程模型簡(jiǎn)單
  • 高效實(shí)時(shí)

常用的類:

  • BaseRichSpout(消息生產(chǎn)者)
  • BaseBasicBolt(消息處理者)
  • TopologyBuilder(拓?fù)涞臉?gòu)建器)
  • Config(配置)
  • StormSubmitter/LocalCluster(拓?fù)涮峤黄?

Storm集群部署

Storm集群架構(gòu):

如圖: 

在Storm的集群里面有兩種節(jié)點(diǎn):控制節(jié)點(diǎn)和工作節(jié)點(diǎn)。

控制節(jié)點(diǎn)上面運(yùn)行一個(gè)叫Nimbus進(jìn)程,Nimbus負(fù)責(zé)在集群里面

分發(fā)代碼,分配計(jì)算任務(wù),并且監(jiān)控狀態(tài)。

每一個(gè)工作節(jié)點(diǎn)上面運(yùn)行一個(gè)叫做Supervisor進(jìn)程。

Supervisor負(fù)責(zé)監(jiān)聽(tīng)從Nimbus分配給它執(zhí)行的任務(wù),據(jù)此啟動(dòng)或停止執(zhí)行任務(wù)的工作進(jìn)程。

Nimbus和Supervisor之間的所有協(xié)調(diào)工作都是通過(guò)Zookeeper集群完成。

集群規(guī)劃:(根據(jù)具體需求規(guī)劃)

linux主機(jī)名    Storm角色    Zookeeper
master         Nimubus      單節(jié)點(diǎn)zk
slave01        Supervisor
slave02        Supervisor

準(zhǔn)備工作:

環(huán)境:centos6.4

軟件:

jzmq-master
storm-0.8.2
zeromq-2.1.7
zookeeper-3.4.5

環(huán)境配置:(參見(jiàn)前幾篇博客)

Linux基本配置:

  • 修改主機(jī)名
  • 修改IP
  • 修改主機(jī)和IP的映射關(guān)系
  • 關(guān)閉防火墻

安裝步驟:

1.安裝jdk

2.搭建Zookeeper集群(這里我們只安裝一個(gè)zk在主節(jié)點(diǎn)上)

  • 解壓

進(jìn)入zk的conf目錄下,cp zoo_sample.cfg zoo.cfg(修改一下名字),其它的暫時(shí)都不變

3.安裝Storm依賴(zeromq、jzmq、python)

3.1安裝zeromq,然后進(jìn)入到zeromq-2.1.7/目錄下

檢測(cè)環(huán)境:./configure
cd zeromq-2.1.7
./configure

#編譯可能會(huì)出錯(cuò):

configure: error: Unable to find a working C++ compiler

#安裝一下依賴的rpm包:

libstdc++-devel gcc-c++

虛擬機(jī)可以上網(wǎng)的情況下:(建議使用此方法)

yum install gcc-c++

虛擬機(jī)不能上網(wǎng)情況:

首先到http://mirrors.163.com/centos/6.4/os/x86_64/Packages/(下載的版本一定要和系統(tǒng)對(duì)應(yīng))

rpm -i libstdc++-devel-4.4.7-3.el6.x86_64.rpm
rpm -i gcc-c++-4.4.7-3.el6.x86_64.rpm
rpm -i libuuid-devel-2.17.2-12.9.el6.x86_64.rpm

然后運(yùn)行./configure

make(編譯)

make install(這個(gè)才徹底安裝)

3.2.編譯安裝JZMQ:

cd jzmq

執(zhí)行./autogen.sh(是為了讓它產(chǎn)生配置文件,默認(rèn)沒(méi)有配置文件的),

#報(bào)錯(cuò):autogen.sh: error: could not find libtool.
libtool is required to run autogen.sh.
缺少libtool

同樣,可上網(wǎng)情況下:

yum install libtool(readhat企業(yè)版不會(huì)出現(xiàn)這些報(bào)錯(cuò))

或者手動(dòng)安裝:

rpm -i autoconf-2.63-5.1.el6.noarch.rpm
rpm -i automake-1.11.1-4.el6.noarch.rpm
rpm -i libtool-2.2.6-15.5.el6.x86_64.rpm
./configure
make
make install

3.33.編譯安裝Python(先確定你系統(tǒng)自帶的版本,如果是2.6.6或者之上的不需要安裝)

tar –zxvf Python-2.6.6.tgz
cd Python-2.6.6
./configure
make
make install

3.4安裝storm

修改storm.yaml配置文件(子節(jié)點(diǎn)上也得修改)
修改zk對(duì)應(yīng)的主機(jī)名
修改主節(jié)點(diǎn)對(duì)應(yīng)的主機(jī)名

PS:

3.41 Storm發(fā)行版本解壓目錄下有一個(gè)

conf/storm.yaml文件:

用于配置Storm。默認(rèn)配置在這里可以查看conf/storm.yaml中的配置選項(xiàng)將覆蓋defaults.yaml中的默認(rèn)配置。

以下配置選項(xiàng)是必須在conf/storm.yaml中進(jìn)行配置的:

storm.zookeeper.servers:

Storm集群使用的Zookeeper集群地址,

其格式如下:

storm.zookeeper.servers:
- "111.222.333.444"
- "555.666.777.888"

如果Zookeeper集群使用的不是默認(rèn)端口,那么還需要storm.zookeeper.port選項(xiàng)。

3.42 storm.local.dir: Nimbus和Supervisor進(jìn)程

用于存儲(chǔ)少量狀態(tài),如jars、confs等的本地磁盤目錄,需要提前創(chuàng)建該目錄并給以足夠的訪問(wèn)權(quán)限。

然后在storm.yaml中配置該目錄,如:

storm.local.dir: "/usr/storm/workdir"

分別啟動(dòng)三臺(tái)機(jī)器,master:到storm的bin目錄下:

./storm nimbus > /dev/null 2>&1 &

slave01:到storm的bin目錄下:

./storm supervisor > ../logs/su.log 2>&1 &

slave02:到storm的bin目錄下:

./storm supervisor > ../logs/su.log 2>&1 &

(啟動(dòng)后臺(tái)進(jìn)程,并把正確和錯(cuò)誤的信息輸出到該文件中)

在master上啟動(dòng)UI管理界面

./storm ui > /dev/null 2>&1 &

通過(guò)瀏覽器觀察:(主節(jié)點(diǎn)的ip:8080),觀察集群的worker資源使用情況、Topologies的運(yùn)行狀態(tài)等信息。

至此,Storm集群已經(jīng)部署、配置完畢,可以向集群提交拓?fù)溥\(yùn)行了。

責(zé)任編輯:黃丹 來(lái)源: oschina
相關(guān)推薦

2013-09-05 09:47:35

TwitterSummingbird開(kāi)源

2012-12-06 10:59:51

大數(shù)據(jù)

2014-04-15 11:24:53

Twitter Sto

2016-10-27 09:37:10

Hadoop集群配置

2011-12-07 16:11:50

Hadoop集群搭建

2015-07-16 10:11:38

TwitterHadoop集群優(yōu)化

2014-01-13 09:36:37

Twitter開(kāi)源軟件

2015-05-06 13:34:14

MySQL集群搭建

2022-09-15 08:31:11

主從復(fù)制模式Docker

2020-12-14 12:48:51

Kafka集群節(jié)點(diǎn)

2014-02-14 15:49:03

storm安裝部署

2021-01-07 10:18:03

Redis數(shù)據(jù)庫(kù)環(huán)境搭建

2024-03-07 16:03:56

RedisDocker

2019-08-12 16:07:32

Web系統(tǒng)集群

2013-12-12 13:25:18

2014-03-17 10:05:45

Hadoop集群

2018-06-13 14:42:53

集群虛擬化搭建

2024-05-15 14:29:45

2021-04-19 08:52:58

Hadoop集群搭建Python

2010-06-03 19:02:31

Hadoop集群搭建
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)