溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Storm-0.9.3的安裝部署步驟

發(fā)布時(shí)間:2021-09-15 18:09:44 來源:億速云 閱讀:142 作者:chen 欄目:云計(jì)算

本篇內(nèi)容主要講解“Storm-0.9.3的安裝部署步驟”,感興趣的朋友不妨來看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“Storm-0.9.3的安裝部署步驟”吧!

Storm-0.9.3安裝部署步驟

Storm集群中包含兩類節(jié)點(diǎn):主控節(jié)點(diǎn)(Master Node)和工作節(jié)點(diǎn)(Work Node)。其分別對(duì)應(yīng)的角色如下:

  • 主控節(jié)點(diǎn)(Master Node)上運(yùn)行一個(gè)被稱為Nimbus的后臺(tái)程序,它負(fù)責(zé)在Storm集群內(nèi)分發(fā)代碼,分配任務(wù)給工作機(jī)器,并且負(fù)責(zé)監(jiān)控集群運(yùn)行狀態(tài)。Nimbus的作用類似于Hadoop中JobTracker的角色。

  • 每個(gè)工作節(jié)點(diǎn)(Work Node)上運(yùn)行一個(gè)被稱為Supervisor的后臺(tái)程序。Supervisor負(fù)責(zé)監(jiān)聽從Nimbus分配給它執(zhí)行的任務(wù),據(jù)此啟動(dòng)或停止執(zhí)行任務(wù)的工作進(jìn)程。每一個(gè)工作進(jìn)程執(zhí)行一個(gè)Topology的子集;一個(gè)運(yùn)行中的Topology由分布在不同工作節(jié)點(diǎn)上的多個(gè)工作進(jìn)程組成。

Storm-0.9.3的安裝部署步驟

Storm集群組件

Nimbus和Supervisor節(jié)點(diǎn)之間所有的協(xié)調(diào)工作是通過Zookeeper集群來實(shí)現(xiàn)的。此外,Nimbus和Supervisor進(jìn)程都是快速失?。╢ail-fast)和無狀態(tài)(stateless)的;Storm集群所有的狀態(tài)要么在Zookeeper集群中,要么存儲(chǔ)在本地磁盤上。這意味著你可以用kill -9來殺死Nimbus和Supervisor進(jìn)程,它們?cè)谥貑⒑罂梢岳^續(xù)工作。這個(gè)設(shè)計(jì)使得Storm集群擁有不可思議的穩(wěn)定性。

——————————————————————————————————————————

搭建Zookeeper集群

Storm使用Zookeeper協(xié)調(diào)集群,由于Zookeeper并不用于消息傳遞,所以Storm給Zookeeper帶來的壓力相當(dāng)?shù)?。大多?shù)情況下,單個(gè)節(jié)點(diǎn)的Zookeeper集群足夠勝任,不過為了確保故障恢復(fù)或者部署大規(guī)模Storm集群,可能需要更大規(guī)模節(jié)點(diǎn)的Zookeeper集群(對(duì)于Zookeeper集群的話,官方推薦的最小節(jié)點(diǎn)數(shù)為3個(gè))。在Zookeeper集群的每臺(tái)機(jī)器上完成以下安裝部署步驟:
1. 下載安裝Java JDK,官方下載鏈接為http://java.sun.com/javase/downloads/index.jsp,JDK版本為JDK 6或以上。
2. 根據(jù)Zookeeper集群的負(fù)載情況,合理設(shè)置Java堆大小,盡可能避免發(fā)生swap,導(dǎo)致Zookeeper性能下降。保守起見,4GB內(nèi)存的機(jī)器可以為Zookeeper分配3GB最大堆空間。
3. 下載后解壓安裝Zookeeper包,官方下載鏈接為http://hadoop.apache.org/zookeeper/releases.html。
4. 根據(jù)Zookeeper集群節(jié)點(diǎn)情況,在conf目錄下創(chuàng)建Zookeeper配置文件zoo.cfg:

  1. tickTime=2000

  2. dataDir=/var/zookeeper/

  3. clientPort=2181

  4. initLimit=5

  5. syncLimit=2

  6. server.1=zookeeper1:2888:3888

  7. server.2=zookeeper2:2888:3888

  8. server.3=zookeeper3:2888:3888

復(fù)制代碼

5. 在dataDir目錄下創(chuàng)建myid文件,文件中只包含一行,且內(nèi)容為該節(jié)點(diǎn)對(duì)應(yīng)的server.id中的id編號(hào)。其中,dataDir指定Zookeeper的數(shù)據(jù)文件目錄;其中server.id=host:port:port,id是為每個(gè)Zookeeper節(jié)點(diǎn)的編號(hào),保存在dataDir目錄下的myid文件中,zookeeper1~zookeeper3表示各個(gè)Zookeeper節(jié)點(diǎn)的hostname,第一個(gè)port是用于連接leader的端口,第二個(gè)port是用于leader選舉的端口。
6. 啟動(dòng)Zookeeper服務(wù):

  1. bin/zkServer.sh start  

復(fù)制代碼

7. 通過Zookeeper客戶端測(cè)試服務(wù)是否可用:

  1. bin/zkCli.sh -server 127.0.0.1:2181  

復(fù)制代碼

————————————————————————————————————————


機(jī)器劃分

10.134.84.93         Nimbus

10.139.37.57         Supervisor

10.139.18.45         Supervisor      zookeeper

10.134.85.125        Supervisor      zookeeper

10.134.74.59         Supervisor      zookeeper

版本選擇

1. storm選擇使用最新版apache-storm-0.9.3,下載地址:

http://www.apache.org/dyn/closer.cgi/storm/apache-storm-0.9.3/apache-storm-0.9.3.tar.gz

2. storm依賴jdk6和python

2.1 機(jī)器已經(jīng)安裝了jdk7,經(jīng)試驗(yàn)啟動(dòng)storm時(shí)會(huì)報(bào)錯(cuò)。因此選擇jdk6最新版6u45,下載地址:

http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase6-419409.html#jdk-6u45-oth-JPR

選擇

Storm-0.9.3的安裝部署步驟

2.2 機(jī)器自帶python2.4.3,但storm依賴2.6以上版本,我們選擇使用2.7.9,下載地址:

https://www.python.org/downloads/release/python-279/

依賴環(huán)境準(zhǔn)備

1. jdk安裝

1.1 由于機(jī)器上已經(jīng)安裝了默認(rèn)的jdk7,在終端直接輸入java -version時(shí)會(huì)提示使用的是1.7

Storm-0.9.3的安裝部署步驟

因此,需要把jdk6單獨(dú)安裝在一個(gè)目錄。

直接執(zhí)行jdk-6u45-linux-x64.bin,如下:

Storm-0.9.3的安裝部署步驟

1.2 自動(dòng)解壓完畢后,會(huì)在當(dāng)前目錄生成jdk的文件夾,再把此文件夾mv到我們指定的JAVA_HOME地址,如/opt/local/jdk1.6.0_45,如下:

Storm-0.9.3的安裝部署步驟

2. python安裝

2.1 執(zhí)行tar zxvf Python-2.7.9.tgz命令,解壓Python安裝包:

Storm-0.9.3的安裝部署步驟

2.2 解壓后,進(jìn)行以下安裝步驟:

Storm-0.9.3的安裝部署步驟

2.3 經(jīng)過./configure、make、make install后,默認(rèn)python2.7安裝在/usr/local/bin/python2.7,而/usr/bin/python這個(gè)軟鏈引用的依然是2.4.3,可以做下替換,如下:

Storm-0.9.3的安裝部署步驟

storm配置

1. 在服務(wù)器上解壓storm安裝包,紅色部分為需要修改的配置文件:

Storm-0.9.3的安裝部署步驟

2. 修改conf/storm_env.ini,指定使用的java環(huán)境

Storm-0.9.3的安裝部署步驟

3. 修改conf/storm.yaml,指定strom的以下幾項(xiàng)配置:

#storm 使用的zookeeper 的服務(wù)器域名,默認(rèn)端口2181 storm.zookeeper.servers:- “yf_18_45″- “sjs_85_125″- “sjs_74_59″#nimbus 的節(jié)點(diǎn) nimbus.host: “sjs_84_93″

數(shù)據(jù)存儲(chǔ)路徑

storm.local.dir: “/data/storm”

本地日志路徑

storm.log.dir:   “/opt/logs/storm”

#supervisor 的槽位數(shù)及端口號(hào),每個(gè)端口號(hào)表示一個(gè)槽位

supervisor.slots.ports:

- 6700

- 6701

- 6702

- 6703

指定drpc 服務(wù)器

drpc.servers:

- “yf_18_45″

- “sjs_85_125″

- “sjs_74_59″

- “yf_37_57″

4. 在每個(gè)storm節(jié)點(diǎn)進(jìn)行以上安裝步驟,其中storm可在一臺(tái)機(jī)器上配置好后再scp到其他各臺(tái)服務(wù)器。

啟動(dòng)storm

1. 在nimbus節(jié)點(diǎn)啟動(dòng)nimbus、storm-ui和logviewer:

bin/storm nimbus &

bin/storm ui &

bin/storm logviewer &

3. 在各supervisor節(jié)點(diǎn)啟動(dòng)supervisor和logviewer:

bin/storm supervisor &

bin/storm logviewer &

驗(yàn)證

1. 訪問 http://10.134.84.93:8080 ,查看ui是否正常,supervisor數(shù)為4,free slot數(shù)為16

2. 提交測(cè)試storm程序。

bin/storm jar examples/storm-starter/storm-starter-topologies-0.9.3.jar storm.starter.ExclamationTopology ExclamationTopology

到此,相信大家對(duì)“Storm-0.9.3的安裝部署步驟”有了更深的了解,不妨來實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI