jstorm2.1.1及jstorm webui安裝

jstorm的安裝有不少方式,這裏主要講述的是Standalone模式,其它模式請查看官方文檔。java

Jstorm

首先下載安裝包,地址https://github.com/alibaba/jstorm/releases/download/2.1.1/jstorm-2.1.1.ziplinux

而後配置環境變量git

export JSTORM_HOME=/opt/jstorm/jstorm-2.1.1
export PATH=$PATH:$JSTORM_HOME/bin

爲了保險,在bashrc中作一樣的操做,而後執行github

source /etc/profile

配置hostname,使hostname -i命令任什麼時候候都不出現127.0.0.1web

切換到安裝目錄,解壓安裝包,cd到conf目錄,編輯storm.yamlapache

storm.zookeeper.servers:
     - "10.5.3.100"
     - "10.5.3.101"
     - "10.5.3.102"
 storm.zookeeper.root: "/jstorm"
 nimbus.host: "10.5.3.100"
 storm.local.dir: "%JSTORM_HOME%/data"

注意:tomcat

    一、每一行配置開頭必須有空格,不然報錯bash

    二、zookeeper端口必須一致,默認2128app

    三、不能寫hostname只能寫ipwebapp

配置完成後,將安裝包分發到其它機器上,在nimbus節點執行

nohup jstorm nimbus &

執行stop.sh關閉nimbus

在supervisor執行

nohup jstorm supervisor &

執行stop.sh關閉supervisor

當出現

get supervisor host error!java.lang.Exception: the hostname which  supervisor get is localhost
    at com.alibaba.jstorm.daemon.supervisor.Heartbeat.initSupervisorInfo(Heartbeat.java:113) [jstorm-core-2.1.1.jar:na]    at com.alibaba.jstorm.daemon.supervisor.Heartbeat.<init>(Heartbeat.java:99) [jstorm-core-2.1.1.jar:na]
    at com.alibaba.jstorm.daemon.supervisor.Supervisor.mkSupervisor(Supervisor.java:123) [jstorm-core-2.1.1.jar:na]    at com.alibaba.jstorm.daemon.supervisor.Supervisor.run(Supervisor.java:201) [jstorm-core-2.1.1.jar:na]
    at com.alibaba.jstorm.daemon.supervisor.Supervisor.main(Supervisor.java:237) [jstorm-core-2.1.1.jar:na][ERROR 2016-05-26 00:02:59 c.a.j.d.s.Supervisor:218 main] Fail to run supervisor 
java.lang.RuntimeException: java.lang.Exception: the hostname which  supervisor get is localhost    at com.alibaba.jstorm.daemon.supervisor.Heartbeat.initSupervisorInfo(Heartbeat.java:118) ~[jstorm-core-2.1.1.jar:na]
    at com.alibaba.jstorm.daemon.supervisor.Heartbeat.<init>(Heartbeat.java:99) ~[jstorm-core-2.1.1.jar:na]    at com.alibaba.jstorm.daemon.supervisor.Supervisor.mkSupervisor(Supervisor.java:123) [jstorm-core-2.1.1.jar:na]
    at com.alibaba.jstorm.daemon.supervisor.Supervisor.run(Supervisor.java:201) [jstorm-core-2.1.1.jar:na]    at com.alibaba.jstorm.daemon.supervisor.Supervisor.main(Supervisor.java:237) [jstorm-core-2.1.1.jar:na]
Caused by: java.lang.Exception: the hostname which  supervisor get is localhost    at com.alibaba.jstorm.daemon.supervisor.Heartbeat.initSupervisorInfo(Heartbeat.java:113) ~[jstorm-core-2.1.1.jar:na]
    ... 4 common frames omitted

說明hostname沒有配置正確

Jstorm webui

webui的war包在jstorm的安裝目錄,下載一個tomcat,而後將war拷貝到webapps下,而且解壓到root文件夾,如下是官方命令

mkdir ~/.jstorm
cp -f $JSTORM_HOME/conf/storm.yaml ~/.jstorm
下載tomcat 7.x (以apache-tomcat-7.0.37 爲例)
tar -xzf apache-tomcat-7.0.37.tar.gz
cd apache-tomcat-7.0.37
cd webapps
cp $JSTORM_HOME/jstorm-ui-2.1.1.war ./
mv ROOT ROOT.old
ln -s jstorm-ui-2.1.1 ROOT  #這個地方可能變化,是根據你的JStorm版原本肯定,好比當0.9.6.1時,是ln -s jstorm-0.9.6.1 ROOT
                              另外不是 ln -s jstorm-ui-0.9.6.3.war ROOT 這個要當心
cd ../bin
./startup.sh

而後在建立~/.jstorm文件,並把jstorm的配置文件storm.yaml拷貝到這個文件夾下,編輯配置文件

storm.zookeeper.servers:
     - "10.5.3.100"
     - "10.5.3.101"
     - "10.5.3.102"
 storm.zookeeper.root: "/jstorm"
 nimbus.host: "10.5.3.100"
 storm.local.dir: "%JSTORM_HOME%/data"
 ui.clusters:
     - {
         name: "jstorm",
         zkRoot: "/jstorm",
         zkServers:
             [ "10.5.3.100","10.5.3.101","10.5.3.102"],
         zkPort: 2181,
       }

啓動zookeeper集羣,啓動jstorm集羣,啓動tomcat。

訪問http://ip:8080

jstorm停機重啓

storm的故障容忍型參照以下博客http://www.linuxidc.com/Linux/2015-02/113729.htm

當須要停機重啓升級時:

    一、kill Nimbus-》升級-》重啓
    二、kill Supervisor (當運行在此節點上的work所有轉移到別的節點上時) -》升級-》重啓
    三、重複2,直到所有重啓完畢

jstorm經常使用命令

一、部署TOPOLOGY

jstorm jar /opt/hadoop/loganalyst/storm-dependend/data/teststorm-1.0.jar teststorm.TopologyMain /opt/hadoop/loganalyst/storm-dependend/data/words.txt

二、刪除TOPOLOGY

jstorm kill {toponame}

三、激活TOPOLOGY

jstorm active {toponame}

四、不激活TOPOLOGY

jstorm deactivate {toponame}

五、列出全部TOPOLOGY

jstorm list
相關文章
相關標籤/搜索