歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> Linux教程

Twitter Storm安裝配置(單機版)筆記

本篇幅講述Twitter Storm安裝配置,也作為自己的筆記。
 
storm的官方安裝說明(e文):https://github.com/nathanmarz/storm/wiki/Setting-up-a-Storm-cluster
 
storm的安裝分為單機版和集群版,只是配置稍微有點區別,大致一樣。
 
要使用storm首先要安裝以下工具:
 
python、zookeeper、zeromq、jzmq、storm
 
第一步,安裝Python2.7.2
 wget http://www.python.org/ftp/python/2.7.2/Python-2.7.2.tgz
 tar zxvf Python-2.7.2.tgz
 cd Python-2.7.2
 ./configure
 make
 make install
 vi /etc/ld.so.conf
 追加/usr/local/lib/
 sudo ldconfig
 
第二步,安裝zookeeper 
wget http://labs.mop.com/apache-mirror/zookeeper/zookeeper-3.3.5/zookeeper-3.3.5.tar.gz
 tar -zxvf zookeeper-3.3.5.tar.gz
cp -R zookeeper-3.3.5 /usr/local/
 ln -s /usr/local/zookeeper-3.3.5/ /usr/local/zookeeper
 vim /etc/profile (設置ZOOKEEPER_HOME和ZOOKEEPER_HOME/bin)
export ZOOKEEPER_HOME="/path/to/zookeeper"
 export PATH=$PATH:$ZOOKEEPER_HOME/bin
 cp /usr/local/zookeeper/conf/zoo_sample.cfg /usr/local/zookeeper/conf/zoo.cfg (用zoo_sample.cfg制作$ZOOKEEPER_HOME/conf/zoo.cfg)
 mkdir /tmp/zookeeper
 mkdir /var/log/zookeeper
 zookeeper的單機安裝已經完成了。
 
第三步,安裝zeromq以及jzmq
 jzmq的安裝貌似是依賴zeromq的,所以應該先裝zeromq,再裝jzmq。
 1)安裝zeromq:
 wget http://download.zeromq.org/zeromq-2.2.0.tar.gz
 tar zxf zeromq-2.2.0.tar.gz
cd zeromq-2.2.0
 ./configure
 make
 make install
 sudo ldconfig (更新LD_LIBRARY_PATH)
 zeromq安裝完成。
 注意:如有有依賴報錯,需要安裝:
 jzmq dependencies 依賴包
 sudo yum install uuid*
 sudo yum install libtool
 sudo yum install libuuid
sudo yum install libuuid-devel
 2)安裝jzmq
 yum install git
git clone git://github.com/nathanmarz/jzmq.git
 cd jzmq
 ./autogen.sh
 ./configure
 make
 make install
 然後,jzmq就裝好了.
 注意:在./autogen.sh這步如果報錯:autogen.sh:error:could not find libtool is required to run autogen.sh,這是因為缺少了libtool,可以用#yum install libtool*來解決

第四步,安裝Storm
 wget http://cloud.github.com/downloads/nathanmarz/storm/storm-0.8.1.zip
 unzip storm-0.8.1.zip
 mv storm-0.8.1 /usr/local/
 ln -s /usr/local/storm-0.8.1/ /usr/local/storm
 vim /etc/profile
 export STORM_HOME=/usr/local/storm-0.8.1
 export PATH=$PATH:$STORM_HOME/bin
 到此為止單機版的Storm就安裝完畢了。
 
第五步,測試一下本地模式的WordCount
 下載storm-starter 編譯,並導入eclipse 工程:
 (http://www.linuxidc.com/Linux/2013-05/84309.htm)
 1. 下載strom starter的代碼 git clone https://github.com/nathanmarz/storm-starter.git
 2. 使用mvn -f m2-pom.xml package 進行編譯
 3. 復制 storm-starter目錄下的m2_pom.xml 為pom.xml ,因為eclipse需要pom.xml
 4. 使用mvn eclipse:eclipse編譯成eclipse工程
 5. 在Eclipse 中import 選擇storm-starter 的路徑,一般導入項目後,會需要設置相應的M2_查看工程是否無誤,可能會需要配置M2_REPO變量,
 M2_REPO配置方法:工程上右鍵->Properties->Java Build Path->Libraries->AddVariable->Configure Variable->New
 輸入Name:M2_REPO , Path:localRepository路徑->ok刷新工程,代碼無誤了,可以進行開發了
 6. 編譯無誤後,現在本地跑storm.starter目錄下的WordCountTopology,看到如下的截屏,代表本地的local模式可以跑通過
 使用eclipse的export功能導出項目的jar包,便於以後分布式的情況下,提交相應的邏輯
 
Strom-Starter構建失敗,缺少twitter4j包 的解決辦法:
 (http://www.linuxidc.com/Linux/2013-05/84308.htm)
 修改Storm-Starter的pom文件m2-pom.xml ,修改dependency中twitter4j-core 和 twitter4j-stream兩個包的依賴版本,如下:
 <dependency>
    <groupId>org.twitter4j</groupId>
    <artifactId>twitter4j-core</artifactId>
    <version>[2.2,)</version>
 </dependency>
 <dependency>
    <groupId>org.twitter4j</groupId>
    <artifactId>twitter4j-stream</artifactId>
    <version>[2.2,)</version>
 </dependency>

Copyright © Linux教程網 All Rights Reserved