▼サーバの前提条件
このコンテンツは、Syslog-ng 3.x を Cent OS にインストールする の続き、というコトになっているので、 引き続き VPS を使います。
VPS の OS は、扱い易くて枯れてきている Cent OS 5.x を想定しています。1
VPS としては、さくらのVPS
や ServersMan@VPS
をオススメしています。(www.limber.jp は さくらのVPS
上にあります。)
MySQL は Ver. 5.1以上
MySQL は Ver. 5.1 以上が必要です。
LogZilla のインストーラは、MySQLのバージョンをチェックし、Ver. 5.1 以上を要求し、これより低いとインストーラが終了してしまいます。 つまり、Cent OS 5.x の MySQL は Version 5.0 をベースとしているので、OS 標準の MySQL では、LogZilla をインストールできません。
LogZilla が内部的に使用している、全文検索エンジンの Sphinx が MySQL Ver. 5.1 を要求している、とうわけではなく、 実は、MySQL Ver 5.1 から導入された「イベント スケジューラ」を使って日々の logデータをローテーション(正確にはパーティショニング)させることにあったりします。
(以前の php-syslog-ng の頃は、ログのローテーションを cron で、しかもテーブル自体をコピーするという方法で行っていましたが、 大規模な環境になると、logs テーブルが破損したり、ディスクスペースが足りなくなったりしていました。)
選択肢
Cent OS 5.x の標準レポジトリの MySQL は Ver. 5.0系統をベースにしています。
そのため、
- インストーラのバージョンチェックの部分を改変して、Ver. 5.0 でもインストール可能にする
- MySQL Ver. 5.1 以上を用意する
どちらかを採用しなければなりません。
最も簡単なのは 1番ですが、logs テーブルをパーティショニングさせることができないので、 以前の php-syslog-ng だった頃のように、logs テーブルを分割するなどの ローテーションの処理を自分で作らなければなりません。
また、LogZilla のインストール途中で CREATE EVENT文 や CREATE PROCEDURE文でエラーが表示されるかもしれませんが、試していないので分かりません。
まぁ、兎にも角にも、メンドーそうですね。。。
なのでここでは、2番の選択肢を採ることにしました。
Cent OS 標準レポジトリに無いということになると、MySQL Ver. 5.1.x をソースコードからインストールするか、MySQL 本家サイトの rpm を使うかの選択になります。
今回は楽をするために、結構色々な人に使われている、Remi というレポジトリを使うことにしました。(Fedora の提供する EPEL レポジトリに依存しているので、EPEL も必要になります。)
PHP は Ver. 5.2以上
PHP は Ver. 5.2 以上が必要です。
CentOS 5.5 までは、PHP のバージョンが 5.1 ベースです。
LogZilla は、PHP Version 5.2 以上が必要です。というのは、json_encode()関数を使っているからです。
PHP Ver. 5.1 でも、pecl で json をインストールして、json関係の関数を追加させるという手がありますが、 何故かこの方法では、日々のログデータがブラウザ上で一覧表示されませんでした。
と言うわけで、MySQL Ver. 5.1 を使うために Remi レポジトリを使う予定なので、PHP Version 5.3.x をインストールすることにします。
Cent OS 5.6 |
---|
執筆時点は Cent OS 5.6 はまだリリースされていませんでした。Cent OS 5.6 では php53 というパッケージ名で PHP Ver. 5.3 が標準リポジトリからインストールできますので、こちらを使っても構いません。 |
追加のリポジトリ
rpmforge, EPEL, Remi の3つのレポジトリを使います。 既にセットアップ済みであれば、読み飛ばしてください。
rpmforge
Perl のモジュールの一部が標準レポジトリに無いので、rpmforge を使っています。 rpmforge は、x64 な人は、
# rpm -Uvh http://ftp.riken.jp/Linux/dag/redhat/el5/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm
x32 な人は、
# rpm -Uvh http://ftp.riken.jp/Linux/dag/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.5.2-2.el5.rf.i386.rpm
また、普段は、yum で rpmforge を使わないようにするか、 yum-priorities をインストールして、rpmforge よりも標準レポジトリが優先される設定にするかをします。
ここでは、普段は rpmforge を使わない設定にしておきます。
# vi /etc/yum.repos.d/rpmforge.repo [rpmforge] enabled = 0
EPEL
当サイトの他のコンテンツでも、EPEL にはよくお世話になっています。 Fedora プロジェクト の成果物ですね。
# rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm # vi /etc/yum.repos.d/epel.repo [epel] enabled=0
Remi
Remi は、フランス語でそのまま「Remi の RPM」というサイトなのですが、何故か日本人も数多く利用しています。
MySQL や PHP のバージョンが Cent OS 5.x は RHEL 5.x をベースにしているため、 ということは、Fedora Core 6 あたりがベースなので、パッケージのベースバージョンが低く、それを補うために流行ったのだと思います。
# rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-5.rpm
- /etc/yum.repos.d/remi.repo は最初から enable=0 となっています。
- epel-release パッケージに依存しているので、先に epel をインストールする必要があります。
- そのせいで、PHP や MySQL のバージョンが古くて若干面倒なのですが。 [↩]
関連するコンテンツ
- Syslog-ng 3.x を Cent OS にインストールする
- PPTP を Cent OS 5.x にインストールする ~N-06C の VPN 事情
- Singer Song Writer 5.0をWindows 2000/XP/Vista(x86)/7(x64) にインストールする
- VMware Tools を VMware Player でインストール
- N-07D プリインアプリの無効化
コメントを残す