码迷,mamicode.com
首页 > 其他好文 > 详细

daemontools安装和使用

时间:2015-04-30 20:09:43      阅读:213      评论:0      收藏:0      [点我收藏+]

标签:

daemontools安装和使用

参考:

http://cr.yp.to/daemontools/install.html


daemontools用于自动重启进程。当某个关键服务进程崩溃,可以利用daemontools启动它。前提是安装并配置它。比如zookeeper服务,作为一个关键服务,崩溃后必须重启。下面介绍daemontools在RHEL6.4(el6)上的安装和用法。


1 安装daemontools

首先是el6安装gcc:

# yum install gcc

然后是下载并安装daemontools:

# wget --no-check-certificate http://cr.yp.to/daemontools/daemontools-0.76.tar.gz

# tar zxf daemontools-0.76.tar.gz

# cd admin/daemontools-0.76/

# sed -i ‘s/extern int errno;/#include <errno.h>/1‘ ./src/error.h

# ./package/install

2 使用daemontools

配置启动项, 把 csh -cf ‘/command/svscanboot &‘ 加入到 /etc/rc.local 末尾:

# sed ‘/$/acsh -cf \x27\/command\/svscanboot &\x27‘ /etc/rc.local
# source /etc/rc.local

supervise监控一个目录(如test),test目录下有个可执行的脚本run,如果run脚本退出, 则supervise重新运行它。所以我们把启动服务的逻辑写在run脚本里,例如我监控salt-minion服务的运行情况,可以写如下的run脚本:

#!/bin/bash
service salt-minion start
while true
do
    ret=`service salt-minion status|grep ‘stopped‘`
    if [ -z "$ret" ]; then
        echo ‘service is running‘
        sleep 10
    else
        echo ‘service is stopped‘
        break
    fi
done

这个脚本首先启动salt-minion服务,然后判断服务是否正常,不正常就退出break. 正常的情况下就一直循环探测(run脚本不退出)。

然后执行下面的命令让supervise监控它:

# supervise ./test
# svc -u ./test





daemontools安装和使用

标签:

原文地址:http://blog.csdn.net/ubuntu64fan/article/details/45398059

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!