1,install zeromq
期间可能出现:configure: error: cannot link with -luuid, install uuid-dev. 因此可以先安装
sudo apt-get install uuid*
sudo apt-get install libtool
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
2, install git
git-1.8.3.tar.gz
tar zxvf git-1.8.3.tar.gz
cd git-1.8.3
make && sudo make install
3,install jzmq
git clone git://github.com/nathanmarz/jzmq.git
./autogen.sh
./configure
make && sudo make install
4, install storm
4.1,download zip unzip
wget http://cloud.github.com/downloads/nathanmarz/storm/storm-0.8.1.zip
unzip storm-0.8.1.zip
cd storm-0.8.1
4.2,配置Storm变量
vim /etc/profile
# storm
export STORM_HOME=/home/hadoop/bigdata/storm-0.8.1/
export PATH=$PATH:$STORM_HOME/bin
. /etc/profile
4.3,storm的配置:storm.yaml
关于这个配置文件实在的有点蛋疼,居然空格都包含在内,如果你在":"号后面没有空格那就 蛋疼了,不断折腾之后,这个勉强可以配置好了。
storm.zookeeper.servers:
- "127.0.0.1"
storm.zookeeper.port: 2182
nimbus.host: "127.0.0.1"
storm.local.dir: "/home/hadoop/bigdata/storm-0.8.1/data/stor_mdir"
supervisor.slots.ports:
- 6700
- 6701
- 6702
- 6703
ui.port: 10010
5,storm-starter
svn co https://github.com/nathanmarz/storm-starter/trunk storm-starter
cd storm-starter
mvn -f m2-pom.xml package
cp m2-pom.xml pom.xml
5.1,需要对pom文件的依赖做相应修改,注释掉:
<!--
<repository>
<id>twitter4j</id>
<url>http://twitter4j.org/maven2</url>
</repository>
-->
并将
<dependency>
<groupId>org.twitter4j</groupId>
<artifactId>twitter4j-core</artifactId>
<version>2.2.6-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.twitter4j</groupId>
<artifactId>twitter4j-stream</artifactId>
<version>2.2.6-SNAPSHOT</version>
</dependency>
改为
<dependency>
<groupId>org.twitter4j</groupId>
<artifactId>twitter4j-core</artifactId>
<version>2.2.6</version>
</dependency>
<dependency>
<groupId>org.twitter4j</groupId>
<artifactId>twitter4j-stream</artifactId>
<version>2.2.6</version>
</dependency>
也可以参考参考网上的,改为
<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>
原因是:作者使用的是twitter的库,注释掉后不存在2.2.6.snapshot版本的相应依赖。
5.2,编译storm-starter:
mvn -f m2-pom.xml package
如果是生成eclipse工程:
cp m2-pom.xml pom.xml
mvn eclipse:eclipse