読者です 読者をやめる 読者になる 読者になる

Taste of Tech Topics

Acroquest Technology株式会社のエンジニアが書く技術ブログ

Twitter Stormをインストールしてみます!(その2

Storm

こんばんは。kimukimuです。

前回に引き続き、Twitter Stormのインストール手順を書いてみます。

・・・今回はあまり画面が無くて、文字ばかりになりますが、ご了承下さい^^;

3.Stormインストールの前提ソフトウェアのインストール(2

ZeroMQ 2.1.7

ZeroMQというのはネットワークライブラリの一つで、
マルチキャストやユニキャストといった『多数への通信』が
扱いやすいという特徴を持ちます。

Stormは多数のマシンで構成されるのが前提なため、適しているのでしょう。
バージョンが指定されているのは動作確認を行ったバージョンのようです。

とりあえず、インストールしてみましょう。

> cd /usr/local/download
> wget http://download.zeromq.org/historic/zeromq-2.1.7.tar.gz
> tar -xzf zeromq-2.1.7.tar.gz
> cd zeromq-2.1.7
> ./configure

・・・すると、下記のようなメッセージが。
どうやら、Cのコンパイラが無いのでビルドできないとのことです。

configure: error: in `/usr/local/download/zeromq-2.1.7':
configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details

特にコンパイラを入れない理由もないため、下記のコマンドで追加インストール。

> yum install gcc*

その上で、再度「./configure」コマンドを実行します。
すると今度は下記のエラーメッセージが。今度はリンカ不足のようです。。。

checking for sem_init in -lrt... yes
checking for uuid_generate in -luuid... no
configure: error: cannot link with -luuid, install uuid-dev.

てなわけで、その辺りのパッケージをまとめて追加してしまいます。

> yum install uuid*
> yum install e2fsprogs*
> yum install libuuid*

すると、ようやく「./configure」コマンドが通るようになるため、
インストールを行います。

> ./configure
> make
> make install

これでZeroMQのインストールは完了です。

JZMQ

JZMQはJava用のZeroMQ言語バインディング(ZeroMQをJavaから呼び出せるようにする機構)です。
StormはJavaClojureといったJVM言語で記述されているため、必要となります。

> yum install git* ★JZMQはgitリポジトリ上取得するため、gitコマンドをインストール★
> cd /usr/local/download
> git clone https://github.com/nathanmarz/jzmq.git
> cd jzmq
> ./autogen.sh

すると、案の定(?)といっては微妙ですが、下記のエラーメッセージが表示されます。

autogen.sh: error: could not find libtool.  libtool is required to run autogen.sh.

libtoolが足りないようなので、インストールします。

> yum install libtool*

するとautogenコマンドは通るようになるため、次は./configureコマンドを実行します。

> ./autogen.sh
> ./configure

すると今度はまた違うエラーが。

configure: error: the JAVA_HOME environment variable must be set to your JDK location.

JDKをインストールして、JAVA_HOMEの環境変数を設定しろ、とのことです。
そんなわけで、まずはインストールされているJavaを確認します。

> java -version
java version "1.6.0_17"
OpenJDK Runtime Environment (IcedTea6 1.7.9) (rhel-1.36.b17.el6_0-x86_64)
OpenJDK 64-Bit Server VM (build 14.0-b16, mixed mode)

一応入っているようではありますが。。。
とりあえず中身を確認します。
尚、今回の場合Java
「/usr/lib/jvm/jre-1.6.0-openjdk.x86_64/」ディレクトリ配下に
インストールされていました。

> cd /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/
> cd bin
> ls
java     orbd     policytool  rmiregistry  tnameserv
keytool  pack200  rmid        servertool   unpack200

・・・うん、JREだけ入っていて、JDKは入っていません(汗
そんなわけで、JDKのインストールから始めます。

> yum install java-1.6.0-openjdk-devel

上記のインストールによって、Open JDK
「/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64」配下にインストールされます。
そのため、/etc/profile の末尾に下記の記述を追加します。

export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk.x86_64

再ログインし、インストールを続行します。

> ./autogen.sh
> ./configure
> make
> make install

これでJZMQまでインストール完了です。
ようやく半分ですね。

それでは、続きは次回に。