使用daemontools监控Zookeeper服务

来源:互联网 发布:电视机推荐 知乎 编辑:程序博客网 时间:2024/05/17 06:22

daemontools(http://cr.yp.to/daemontools.html)是一个管理UNIX下服务的工具集。supervise监视一个服务。它启动一个服务、当服务停掉时它会重起服务。

Zookeeper在运行过程中,如果出现一些无法处理的异常,会直接退出进程,也就是所谓的快速失败(fail fast)模式。daemontools 能够帮助你监控ZK进程,一旦进程退出后,能够自动重启进程,从而使down掉的机器能够重新加入到集群中去。

安装daemontools

mkdir /packagechmod 755 /packagecd /packagewget http://cr.yp.to/daemontools/daemontools-0.76.tar.gztar zxf daemontools-0.76.tar.gzcd admin/daemontools-0.76vim src/error.h 找到:extern int errno; 改成:#include <errno.h>package/install

监控Zookeeper

在/service下,新建文件夹zookeeper,新建run文件:

cd /servicemkdir zookeepercd zookeepervim runchmod 755 run

run内容:

#!/bin/bashexec 2>&1exec /zk/zookeeper-3.4.4/bin/zkServer.sh start

运行:

supervise /service/zookeeper//或者可以用nohup以后台方式运行。如下:nohup supervise /service/zookeeper &如果出现supervise: fatal: unable to acquire /service/zookeeper/supervise/lock: temporary failure快速rm /service/zookeeper/supervise 重新执行 supervise /service/zookeeper 即可

验证监控zookeeper是否成功:

kill zookeeper进程,查看zookeeper的进程是否自动重启ps -aux|grep Dzookeeper //查看zookeeper的进程

参考文献: http://cr.yp.to/daemontools/faq/create.html

0 0
原创粉丝点击