2011年9月26日月曜日

MonitでVarnishの監視

スズキです。

下記のように、Varnish単体で"/healthcheck.txt"にアクセスできるのが前提です。
VarnishでELBヘルスチェックに対応させる
この状態で、下記のような"/etc/monit.d/varnish.conf"で実現できます。

check process varnish with pidfile /var/run/varnish.pid
    start program = "/etc/init.d/varnish start"
    stop program = "/etc/init.d/varnish stop"
    if failed port 80 protocol http request /healthcheck.txt then restart
    if 5 restarts within 5 cycles then timeout

これでMonitを再起動すればVarnishも監視でき、
プロセスが死んだり、コンテンツ(/healthcheck.txt)へのアクセスができなくなったら、
Varnishが再起動されるようになります。

Monitは他のサービスも積極的に使うべきだなー...
--------
http://www.suz-lab.com

0 コメント: