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

恥知らずのウェブエンジニア -web engineer, shameless

これは一歩を踏み出すことができない者たちのブログ

daemon_toolsでkyototycoonを起動、監視わさ!

さくらVPS 開発環境 daemon tools kyototycoon daemon

demon_tools でkyototycoonを起動、監視させた際のメモわさ!


まずはdaemon toolsをインストール
http://cr.yp.to/daemontools/install.html
の通りに実行

mkdir -p /package
chmod 1755 /package
cd /package

wget http://cr.yp.to/daemontools/daemontools-0.76.tar.gz
gunzip daemontools-0.76.tar
tar -xpf daemontools-0.76.tar
cd admin/daemontools-0.76
./package/install

//下記のようなエラーになる・・・
collect2: ld はステータス 1 で終了しました
make: *** [envdir] エラー 1


//調べると、下記のパッチが必要らしい
cd /package
curl -O http://djbware.csi.hu/patches/daemontools-0.76.errno.patch
cd /package/admin/daemontools-0.76
patch -p1 < /package/daemontools-0.76.errno.patch
cd /package
./package/install

//成功!

http://wp.kaz.bz/tech/2011/07/13/898.html
//上記を参考にsvscanを実行
vi /etc/init/svscan.conf
     start on runlevel [12345]
     stop on runlevel [^12345]
     respawn
     exec /command/svscanboot
     
     
initctl reload-configuration
initctl start svscan

上手くいってるようなので、daemon toolsでkyototycoonを起動、監視する。

//まず起動スクリプトを作成
mkdir /var/kt/daemon
vi /var/kt/daemon/run
	#!/bin/sh

	PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/kyototycoon/bin

	sleep 1

	exec env - PATH=$PATH \
	/usr/local/kyototycoon/bin/ktserver \
	-port 1978 \
	-tout 10 \
	-th 16 \
	-log /var/kt/log -ls \
	-ulog /var/kt/ulog -ulim 256m \
	-sid 1 \
	-bgs /var/kt/snapshot -bgsi 180 -bgsc lzo \
	-pid /var/kt/kt.pid \
	-plsv /usr/local/kyototycoon/libexec/ktplugservmemc.so \
	-plex "port=11401#opts=f#tout=10" \
	"/var/kt/db_casket.kch#opts=l#bnum=20000000#msiz=8g#dfunit=8"
    //オプション等はこちらを確認→http://fallabs.com/kyototycoon/command.html


// /service以下にシンボリックリンクを貼る
cd /service
ln -s /var/kt/daemon kt_daemon


//エラーになっている・・・
ps aux | grep kt
       readproctitle service errors: ...run: access denied?supervise: fatal: unable to start kt_daemon/run:

//権限修正
chmod 755 /var/kt/daemon/run

//http://d.hatena.ne.jp/ono51/20111022/p1
//上記を参考にデーモン削除。
svc -d kt_daemon
mv kt_daemon .kt_daemon
svc -x .kt_daemon
rm .kt_daemon

//再チャレ
ln -s /var/kt/daemon kt_daemon

//問題なさそう!
ps aux | grep kt
/usr/local/kyototycoon/bin/ktserver -port 1978 -tout 10 ・・・

試しに上記のプロセスをkillすると別のpidで復活しました。



感謝致します。
f:id:ogataka50:20131111124001j:plain