1. 程式人生 > >mac上Jstorm單機安裝實操

mac上Jstorm單機安裝實操

由於我的電腦是mac pro,想在本地安裝一個阿里Jstorm玩玩,發現在Linux上的安裝教程很多,但是mac上的能完整安裝成功的沒有。

雖然mac的核心也是linux但是還是有一定的差別,導致我們要安裝很多的工具型程式

下面讓我們開始吧

首先去官網參考一下 官網給的安裝路數:https://github.com/alibaba/jstorm/wiki/如何安裝

1.python沒有的安裝python


2)安裝,一般來說不會出現太大的問題吧,可能有許可權的問題,只要在命令前新增sudo就可以解決了。

Python程式碼  

  1. $ tar –jxvf Python-2.7.3.tar.bz2  
  2. $ cd Python-2.7.3  
  3. $ ./configure  
  4. $ make  
  5. $ make install  

 3) 測試安裝結果:python - version

 2.安裝JDK(1.7版本或以上)

 3.安裝JStorm

在安裝 JStorm之前你得需要額外的安裝ZeroMQ,JZMQ,tomacat(版本選7.0以上)等

在安裝MQ之前,還得做一下輔助程式的安裝如下:

1>.安裝pkg-config

    1.檢測環境是否已安裝pkg-config

       再命令列中輸入: pkg-config 若未安裝,則提示命令未找到.

    2.安裝pkg-config

    curl http://pkgconfig.freedesktop.org/releases/pkg-config-0.28.tar.gz -o pkg-config-0.28.tar.gz

tar -xf pkg-config-0.28.tar.gz

cd pkg-config-0.28

./configure  --with-internal-glib

make

sudo  make install

結束

2>.在mac os 中安裝 autoconf and automake

你需要安裝很多東西,請按照以下順序安裝:

安裝的版本包也不能錯:

tar -xzvf m4-1.4.13.tar.gz

cd m4-1.4.13

./configure --prefix=/usr/local

make

sudo make install

cd ..

tar -xzvf autoconf-2.65.tar.gz

cd autoconf-2.65

./configure --prefix=/usr/local # ironic, isn't it?

make

sudo make install

cd ..

# here you might want to restart your terminal session, to ensure the new autoconf is picked up and used in the rest of the script

tar xzvf automake-1.11.tar.gz

cd automake-1.11

./configure --prefix=/usr/local

make

sudo make install

cd ..

tar xzvf libtool-2.2.6b.tar.gz

cd libtool-2.2.6b

./configure --prefix=/usr/local

make

sudo make install

3>安裝安裝ZeroMQ,JZMQ

下載安裝ZeroMQ 下載地址: wget http://zeromq.org/area:download 編譯安裝 $ cd zeromq-4.2.0 $ ./configure $ make $ sudo make install 下載安裝jzmq 下載地址:wget https://codeload.github.com/zeromq/jzmq/zip/master 編譯安裝 $ cd jzmq-master $ cd jzmq-jni/
$ ./autogen.sh $ ./configure $ make $ sudo make install

4>接下來開始Jstorm和Tomacat8.x(主要是提供Jstorm的web UI 支援)的安裝

安裝JStorm

假設以jstorm-0.9.6.3.zip為例

unzip jstorm-0.9.6.3.zip

vi /etc/profile

export JSTORM_HOME=/XXXXX/XXXX

export PATH=$PATH:$JSTORM_HOME/bin

source /etc/profile

配置$JSTORM_HOME/conf/storm.yaml

配置項:

  • storm.zookeeper.servers: 表示zookeeper 的地址,
  • nimbus.host: 表示nimbus的地址
  • storm.zookeeper.root: 表示JStorm在zookeeper中的根目錄,當多個JStorm共享一個zookeeper時,需要設定該選項,預設即為“/jstorm”
  • storm.local.dir: 表示JStorm臨時資料存放目錄,需要保證JStorm程式對該目錄有寫許可權
  • java.library.path: Zeromq 和java zeromq library的安裝目錄,預設"/usr/local/lib:/opt/local/lib:/usr/lib"
  • supervisor.slots.ports: 表示Supervisor 提供的埠Slot列表,注意不要和其他埠發生衝突,預設是68xx,而Storm的是67xx
  • topology.enable.classloader: false, 預設關閉classloader,如果應用的jar與JStorm的依賴的jar發生衝突,比如應用使用thrift9,但jstorm使用thrift7時,就需要開啟classloader。建議在叢集級別上預設關閉,在具體需要隔離的topology上開啟這個選項。

在提交jar的節點上執行:

#mkdir ~/.jstorm

#cp -f $JSTORM_HOME/conf/storm.yaml ~/.jstorm

安裝JStorm Web UI

必須使用tomcat 7.0 或以上版本, 注意不要忘記拷貝 ~/.jstorm/storm.yaml

Web UI 可以和Nimbus不在同一個節點

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-0.9.6.3.war ./

mv ROOT ROOT.old

ln -s jstorm-ui-0.9.6.3 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

  • 在nimbus 節點上執行 “nohup jstorm nimbus &”, 檢視$JSTORM_HOME/logs/nimbus.log檢查有無錯誤
  • 在supervisor節點上執行 “nohup jstorm supervisor &”, 檢視$JSTORM_HOME/logs/supervisor.log檢查有無錯誤
可以瀏覽一下http://localhost:8080/