LogZilla を Cent OS にインストールする

▼サーバの前提条件

このコンテンツは、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系統をベースにしています。

そのため、

  1. インストーラのバージョンチェックの部分を改変して、Ver. 5.0 でもインストール可能にする
  2. 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 をインストールする必要があります。

 


  1. そのせいで、PHP や MySQL のバージョンが古くて若干面倒なのですが。 []
前のページ 次のページ

 

関連するコンテンツ


コメントを残す


メモ - 以下の HTML タグと属性が利用できます。
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください