一篇搞定 storm 【集羣版】環境搭建,建議收藏

Storm集羣環境搭建

1、集羣規劃html

2、前置條件shell

3、集羣搭建apache

  1. 下載並解壓
  2. 配置環境變量
  3. 集羣配置
  4. 安裝包分發

四. 啓動集羣vim

  1. 啓動ZooKeeper集羣
  2. 啓動Storm集羣
  3. 查看集羣

5、高可用驗證 服務器

1、集羣規劃

這裏搭建一個 3 節點的 Storm 集羣:三臺主機上均部署 SupervisorLogViewer 服務。同時爲了保證高可用,除了在 hadoop001 上部署主 Nimbus 服務外,還在 hadoop002 上部署備用的 Nimbus 服務。Nimbus 服務由 Zookeeper 集羣進行協調管理,若是主 Nimbus 不可用,則備用 Nimbus 會成爲新的主 Nimbusapp

一篇搞定 storm 【集羣版】環境搭建,建議收藏

2、前置條件

Storm 運行依賴於 Java 7+ 和 Python 2.6.6 +,因此須要預先安裝這兩個軟件。同時爲了保證高可用,這裏咱們不採用 Storm 內置的 Zookeeper,而採用外置的 Zookeeper 集羣。因爲這三個軟件在多個框架中都有依賴,其安裝步驟單獨整理至 :框架

3、集羣搭建

1. 下載並解壓

下載安裝包,以後進行解壓。官方下載地址:http://storm.apache.org/downloads.html ide

# 解壓
tar -zxvf apache-storm-1.2.2.tar.gz

2. 配置環境變量

# vim /etc/profile

添加環境變量:oop

export STORM_HOME=/usr/app/apache-storm-1.2.2
export PATH=$STORM_HOME/bin:$PATH

使得配置的環境變量生效:性能

# source /etc/profile

3. 集羣配置

修改 ${STORM_HOME}/conf/storm.yaml 文件,配置以下:

# Zookeeper集羣的主機列表
storm.zookeeper.servers:
     - "hadoop001"
     - "hadoop002"
     - "hadoop003"

# Nimbus的節點列表
nimbus.seeds: ["hadoop001","hadoop002"]

# Nimbus和Supervisor須要使用本地磁盤上來存儲少許狀態(如jar包,配置文件等)
storm.local.dir: "/home/storm"

# workers進程的端口,每一個worker進程會使用一個端口來接收消息
supervisor.slots.ports:
     - 6700
     - 6701
     - 6702
     - 6703

supervisor.slots.ports 參數用來配置 workers 進程接收消息的端口,默認每一個 supervisor 節點上會啓動 4 個 worker,固然你也能夠按照本身的須要和服務器性能進行設置,假設只想啓動 2 個 worker 的話,此處配置 2 個端口便可。

4. 安裝包分發

將 Storm 的安裝包分發到其餘服務器,分發後建議在這兩臺服務器上也配置一下 Storm 的環境變量。

scp -r /usr/app/apache-storm-1.2.2/ root@hadoop002:/usr/app/
scp -r /usr/app/apache-storm-1.2.2/ root@hadoop003:/usr/app/

四. 啓動集羣

4.1 啓動ZooKeeper集羣

分別到三臺服務器上啓動 ZooKeeper 服務:

zkServer.sh start

4.2 啓動Storm集羣

由於要啓動多個進程,因此統一採用後臺進程的方式啓動。進入到 ${STORM_HOME}/bin 目錄下,執行下面的命令:

hadoop001 & hadoop002 :

# 啓動主節點 nimbus
nohup sh storm nimbus &
# 啓動從節點 supervisor 
nohup sh storm supervisor &
# 啓動UI界面 ui  
nohup sh storm ui &
# 啓動日誌查看服務 logviewer 
nohup sh storm logviewer &

hadoop003 :

hadoop003 上只須要啓動 supervisor 服務和 logviewer 服務:

# 啓動從節點 supervisor 
nohup sh storm supervisor &
# 啓動日誌查看服務 logviewer 
nohup sh storm logviewer &

4.3 查看集羣

使用 jps 查看進程,三臺服務器的進程應該分別以下:

一篇搞定 storm 【集羣版】環境搭建,建議收藏

<br/>

訪問 hadoop001 或 hadoop002 的 8080 端口,界面以下。能夠看到有一主一備 2 個 Nimbus 和 3 個 Supervisor,而且每一個 Supervisor 有四個 slots,即四個可用的 worker 進程,此時表明集羣已經搭建成功。

一篇搞定 storm 【集羣版】環境搭建,建議收藏

5、高可用驗證

這裏手動模擬主 Nimbus 異常的狀況,在 hadoop001 上使用 kill 命令殺死 Nimbus 的線程,此時能夠看到 hadoop001 上的 Nimbus 已經處於 offline 狀態,而 hadoop002 上的 Nimbus 則成爲新的 Leader

一篇搞定 storm 【集羣版】環境搭建,建議收藏

一篇搞定 storm 【集羣版】環境搭建,建議收藏

相關文章
相關標籤/搜索