- 追加された行はこの色です。
- 削除された行はこの色です。
*Hibariシステムのインストール [#j0f0395e]
Hibariについては2010年10月現在、バイナリパッケージでの提供は行われていないようです。
このため、Hibariのソースについてダウンロードし、コンパイルを行った後、インストールするという流れになります。
#contents
**前提条件 [#vfe6bff2]
Hibariシステムのテストは「[[RedHat Linux>http://www.jp.redhat.com/rhel/]]」や、そのクローンである「[[CentOS>http://www.centos.org/]]」、[[RedHat>http://www.jp.redhat.com/]]社が支援する「[[Fedora Core>http://fedoraproject.org/]]」といったLinuxディストリビューションによって動作検証がなされているようです。~
このため、上記OS上にての稼働が望ましいものと思われます。~
ここでは、フリーで入手可能な上に、企業用Webサーバ稼働等についても非常に採用例の多い「CentOS」について使用します。~
CentOSのバージョンについては最新版の「5.5 Final」を使用しました。
**インストール手順 [#se68d653]
インストールについては[[Hibari README Page>http://hibari.sourceforge.net/webpage-README.html]]を参照しています。
~
***1.Hibariのダウンロード [#z159acc5]
Hibariのシステムについては、以下のURLでスナップショットのダウンロードが可能です。
>[[http://sourceforge.net/projects/hibari/]]
但しHibariについては現在も開発、修正が行われているため、確実に最新版についてのダウンロードを行ないたい場合は、ソースコード管理システムである「[[Git>http://git-scm.com/]]」をインストールし、レポジトリからのコピーをする事が推奨されているようです。~
Gitのインストールについては公式サイトよりダウンロードしても問題ありませんが、yumのレポジトリである「[[RPMforge>http://rpmrepo.org/RPMforge]]」を導入し、そこからパッケージを導入した方が簡単です。
# wget http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
# rpm --import RPM-GPG-KEY.dag.txt
# rm -f RPM-GPG-KEY.dag.txt
# wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.1-1.el5.rf.i386.rpm
# rpm -ivh rpmforge-release-0.5.1-1.el5.rf.i386.rpm
# yum --enablerepo=rpmforge -y install git
Gitのインストールが完了したら、Hibariをレポジトリよりダウンロードします。~
まずは、ダウンロード用のワークディレクトリについて作成します。管理者権限で行う必要はありません。
$ mkdir -p ~/hibari
ワークディレクトリに移動し、Hibariをレポジトリよりダウンロードします。
$ cd ~/hibari
$ git clone git://hibari.git.sourceforge.net/gitroot/hibari/bom .
$ env BOM_GIT=git://hibari.git.sourceforge.net/gitroot/hibari/ ./bom.sh co src/top/hibari/GDSS
上記手順を完了すれば、レポジトリよりHibariがダウンロードされます。~
Gitをインストールせず、スナップショットを使用してインストールを行う場合は、以下のように解凍をしておくだけで問題ありません。
$ tar zxvf hibari-snapshot.tar.gz
~
***2.Hibariコンパイル事前準備 [#j03aee78]
前提条件としてパッケージの「openssl-devel」が必要になります。~
前提条件としてパッケージの「openssl-devel」と「libtool」が必要になります。~
また、コンパイル時に「compress」パッケージが必要になります。ただし「compress」パッケージは現行、2GB以上のファイルに対応した「ncompress」パッケージへと置き換わっているため、可能であればこちらをインストールする事をオススメします。(コンパイル動作に影響はありませんし、そもそも CentOS 5.5 上ではcompressパッケージは廃止されています)
$ yum -y openssl-devel
$ yum -y ncompress
$ yum -y install openssl-devel
$ yum -y install libtool
$ yum -y install ncompress
なお、コンパイル動作に必要なものとして他に「gcc」や「gcc-lib」等のCコンパイラや、必須ライブラリ等がありますが、こちらはCentOSのインストール時にプリセットとして用意されている「開発ツール」と「開発ライブラリ」のインストールオプションにチェックを付ける事で解決可能ですので、事前に行っておくと良いでしょう。
~
***3.Erlangインストール [#z4c2c9d2]
HibariはErlangによって開発されていますので、当然ながらコンパイルのためにはErlangが必要になります。~
Erlangは前段階で準備した「RPMforge」のレポジトリにも含まれているため、yumコマンドでのインストールが可能ですが、残念ながら現在はバージョンが古く、Hibariのコンパイルが不可能となっています。~
そこで今回は、Erlangのサイトよりソースをダウンロードし、こちらをコンパイルする事でインストールを試みます。
>[[http://www.erlang.org/download.html]]
上記サイトにて、バージョンが「R13B01」以上のものが対象のようですが、検証したところ2010年10月現在で「R14A」以上のバージョンでは、コンパイルに失敗してしまうようです。(今後、新しいバージョンには順次対応予定とのマニュアル記述があります)~
今回は、「R13B04」のバージョンを使用しました。
$ wget http://www.erlang.org/download/otp_src_R13B04.tar.gz
$ tar zxvf otp_src_R13B04.tar.gz
$ cd otp_src_R13B04/
$ ./configure
$ make
$ su -
# make install
~
***4.Hibariコンパイル [#k980c861]
Hibariのコンパイルを行ないます。~
前述の通り、HibariのコンパイルにはErlangが必要となります。インストールされたディレクトリパスが必要となりますので、どこかにメモをしておくと良いでしょう。
$ cd ~/hibari
$ ./bom.sh make
$ make ERL=/usr/local/lib/erlang/bin/erl
「ERL=Erlangへのパス」というように、Erlangコンパイラへのパスを指定します。
~
***5.Hibariインストール [#r9162284]
Hibariをインストールします。~
コンパイル時に「pkg」ディレクトリ内にインストーラが出来上がっていますので、これを利用します。
$ cd ./pkg
インストール前に各種設定を変更します。最低限、Erlangへのパスのみの変更であっても動作に問題はありません
$ vi gifCustom.gdss.cfg
$ vi gifDefaults.gdss.cfg
各種設定を見直し、インストールを開始します。
$ su -
# ./installer-gdss.sh -o silent
以上でインストールが終了します。
~
***6.Hibari稼働準備 [#qc2a9dfd]
起動スクリプトを使用し、Hibariを起動します。~
起動スクリプトは通常「/etc/init.d/」内に「gdss」という名称で存在しています。
# /etc/init.d/gdss start
これに加え、初回起動時のみ
# /etc/init.d/gdss provision-standalone
とし、ブートストラップを起動します。次回以降には必要ありません。~
全作業終了後、Webブラウザ等でインストールマシンの23080ポートへアクセスすれば、Hibariの管理者画面を閲覧する事が出来ます。
#ref(screenshot_gdss_admin_thumb.png)
~
***7.Hibariをサービスとして登録 [#s5b1935a]
起動スクリプトはこのままの形でサービスとして動作するため、以下の手順でサービスへ登録してしまうと、以後が楽です。
# vi /etc/init.d/gdss
(以下のように編集)
#!/bin/sh
# chkconfig: 345 98 20 <-追加(数値は左から順に 起動レベル 開始優先度 終了優先度)
# description: Hibari <-追加(サービス名/今回はHibariとして登録)
# processname: gdss <-追加(プロセス名称/今回はgdssとして登録)
(編集終了後に)
# chkconfig --add gdss
# chkconfig gdss on
これでサービスとしてHibariが登録されるため、サーバ起動時に自動的に起動、サーバ終了時に自動的にサービスが終了されるようになります。