さっきの続き。
せっかくの daemontools をインストールだけではなく、memcached も一緒に運用します。
まず、daemontools を常駐させるために /etc/inittab に以下の行を追記。
SV:123456:respawn:/usr/local/bin/svscanboot
そして、この設定を有効にするために、
# kill -HUP 1
とします。
続いて、memcached のインストール。
memcached のインストールには libevent なるものが必要です。
なので、まずは libevent のインストール
% wget http://www.monkey.org/~provos/libevent-1.4.12-stable.tar.gz
% tar zxf libevent-1.4.12-stable.tar.gz
% cd libevent-1.4.12-stable
% ./configure
% make
# make install
完了。
memcached のインストール
% wget http://www.danga.com/memcached/dist/memcached-1.2.8.tar.gz
% tar zxf memcached-1.2.8.tar.gz
% cd memcached-1.2.8
% ./configure --prefix=/usr/local
% make
# make install
これで memcached のインストールは完了。
あとは、daemontools の設定です。
まだ daemontools のインストール、memcached のインストールをしただけなので、
daemontools が監視している /service の下にはまだ何もありません。
つまり、、全く意味がありませんw
まずは、daemontools で監視するサービスを置くディレクトリを作ります。
# mkdir -p /etc/daemon/memcached
そのディレクトリに、起動スクリプトを run という名前のファイルで設置します。
# vi /etc/daemon/memcached/run
========================================
#!/bin/sh
exec /usr/local/bin/memcached -m 64 -u memcached 2>&1
========================================
これだけ書いていれば十分です。
64というのは、キャッシュサイズです。
後は、
# chmod 755 /etc/daemon/memcached/run
# ln -s /etc/daemon/memcached/ /service/
とすれば、daemontools が監視して、memcached を起動してくれます。
確認方法
# svstat /service/memcached
このコマンドを叩いて、
/service/memcached: up (pid 18732) 24 seconds
とか出ればOK。
何度叩いても、pid が変わり、
0 seconds とか、 1 seconds とかで memcached が再起動し続ける場合は、
・スクリプトが間違っている
・実行権限がない
等が考えられますので、確認しましょう。
以上!
あ・・qmail も入れなきゃ。。
ありがとうございます!
まさに探していた情報でした!!