Pages

2011/04/21

MonitでKyoto Tycoon(with memcached plugin)を監視する

Kyoto Tycoonは局地で一定の支持があるFAL Labsさんのプロダクトです。
 

memcached互換の(プラガブル)リモートサーバを持ちつつ、本家よりメモリ効率がよいらしいので使ってみることにしました。

さて使用に当たってmonitの内部監視を立てるんだけども、プリセットのmemcachプロトコルではfailになる。
見た目は完全に互換があるように見えるが、monitの見ている所は違うんだろう。。

しかしL4監視なんて全く意味がないので、ここはmonitの"send&expect"を使ってプロトコル監視をします。
 

 

telnetで確認


stats を送ると、memcached的な回答がきます、その中で、、
stats
STAT pid 26244
STAT uptime 84
STAT time 1303285911
STAT version KyotoTycoon/0.9.38
-- snip --


version KyotoTycoon」なんて書いてある。
このテキストを監視対象にしよう。
 


monitの監視設定


statsを送りつけ、応答の文字列に"KyotoTycoon"が含まれていればOKというルールで監視するにはこうします。
 

check process ktserver with pidfile /var/run/ktserver.pid 
start program = "/etc/init.d/ktserver start"
stop program = "/etc/init.d/ktserver stop"
if failed host 127.0.0.1 port 11211 type TCP
send "stats\n"
expect ".*KyotoTycoon.*"
with timeout 5 seconds
then restart

 

expectは正規表現で、比較対象は応答まるごとになるのでキーワードだけ買いてもFail扱いになる点に注意。

起動スクリプトは各自書いてね。
 

0 件のコメント:

コメントを投稿