daemontools安装和使用
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=>/etc/rc.d/rc.local 末尾:
# sed -i '$acsh -cf \x27\/command\/svscanboot &\x27' /etc/rc.d/rc.local # sh /etc/rc.local
检查一下服务是否启动:
# ps -ef | grep svscanboot
root 1618 1 0 23:37 ? 00:00:00 /bin/sh /command/svscanboot
root 3992 1911 0 23:51 pts/0 00:00:00 grep svscanboot
3 添加监控的服务
经过以上步骤,我们已经配置好daemontools. 下面添加我们要监控的服务。例如salt-minion。使用下面的命令控制服务:
# service salt-minion status|stop|start|restart
配置一个服务非常简单:
1) 创建一个目录,目录下放一个run脚本
2) run脚本执行启动服务的命令
3) 建立/service下一个链接
整个过程如下:
# mkdir /root/salt # vi /root/salt/run # 内容就下面2句:
#!/bin/sh
exec service salt-minion start
# chmod 1755 /root/salt # chmod 755 /root/salt/run # ln -s /root/salt /service/salt
神奇的就是最后一句,一旦创建了链接,daemontools就会自动帮你启动salt-minion服务了。你可以试着停止服务,然后在看看服务是否又被启动了:
[root@hacl-node3 ~]# service salt-minion stop Stopping salt-minion daemon: [ OK ] [root@hacl-node3 ~]# service salt-minion status salt-minion (pid 7844) is running... [root@hacl-node3 ~]# service salt-minion stop Stopping salt-minion daemon: [ OK ] [root@hacl-node3 ~]# service salt-minion status salt-minion (pid 7939) is running... [root@hacl-node3 ~]# service salt-minion stop Stopping salt-minion daemon: [ OK ] [root@hacl-node3 ~]# service salt-minion status salt-minion (pid 8073) is running...
这样我们就建立了一个高可用的服务。比如zookeeper-server进程。都可以用这种方式管理起来。
daemontools安装和使用的更多相关文章
- mha安装使用手册
mha安装使用手册 注:目前mha最新的版本代码已经不放到google code网站了,而是放在github上,最新的版本为0.57,github链接如下: mha manager:https://g ...
- daemontools管理fast-fail的zookeeper
daemontools项目:http://cr.yp.to/daemontools.html 1.安装daemontools mkdir /package /package cd /package w ...
- Supervisor的安装与使用入门
Supervisor是一个进程管理工具,官方的说法 自己开发的应用往往也希望做到随系统自动启动, 而且启动之后最好还能方便的控制其停止/重启. 传统的做法是在 /etc/init.d/ 下建立启动脚本 ...
- 打包静默安装参数(nsis,msi,InstallShield,InnoSetup)[转]
有时我们在安装程序的时候,希望是静默安装的,不显示下一步下一步,这编访问来教大家如何来操作,现在常用的制作安装程序的软件有, Microsoft Windows Installer , Windo ...
- 打包静默安装参数(nsis,msi,InstallShield,InnoSetup)
原文:打包静默安装参数(nsis,msi,InstallShield,InnoSetup)[转] 有时我们在安装程序的时候,希望是静默安装的,不显示下一步下一步,这编访问来教大家如何来操作,现在常用的 ...
- 一些常用软件的静默安装参数(nsis,msi,InstallShield,Inno)
打包的时候,经常需要安装一些其它的环境库,而又不想让用户繁锁的去选择,这时就需要静默安装,而不同的文件所加的参数了不一致,比如VS的环境库vcredist_x86.exe(这是32位的环境库)后面加/ ...
- [docker]通过阿里云源安装docker && flannel不通问题解决(try this guy out)
docker清理容器 # 容器停止后就自动删除: docker run --rm centos /bin/echo "One"; # 杀死所有正在运行的容器: docker kil ...
- 华硕200系主板完美兼容M.2安装Win7系统
虽然Windows 10系统的装机率正不断攀升,但经典的Windows 7依然有着大量的用户群体.特别是在我们中国, Windows 7依然是许许多多电脑用户的装机首选系统. 经久不衰的Windows ...
- 跳过从Win7/8升级,直接格式化全新安装 Windows 10 并自动永久激活系统的方法教程
跳过升级,直接激活全新 Win10 的方法步骤教程: 下载 Windows 10 系统的 ISO 镜像 在你当前的 Win7 / Win 8 / 8.1 系统中,使用 DaemonTools 或右键选 ...
随机推荐
- 微信自定义菜单url默认80端口问题解决
微信自定义菜单url默认80端口的,但是有些服务器上可能配置了多个tomcat.或者是刚好你服务器上80端口被占用了.在这样的情况下,我们可以通过如下方式解决: 首先安装apache,关于apache ...
- android MultiDex multiDex原理(一)
android MultiDex 原理(一) Android分包MultiDex原理详解 转载请注明:http://blog.csdn.net/djy1992/article/details/5116 ...
- gradle 入门介绍
gradle 简介 基于Groovy实现的自动化构建工具,比maven好的一点在于不用写复杂的xml文件.使用script就可以. gradle 专业名词 从一个build.gradle 文件开始,b ...
- how to output quotes in bash prompt
introduction In certain situations, quotes are required to be output in the command prompt. To do th ...
- 微信小程序基本组件概述
为了更好的理解微信小程序,本文90%文字描述来源于官网的介绍.官网原链接https://mp.weixin.qq.com/debug/wxadoc/dev/component/?t=20161222 ...
- springMVC源码分析--ControllerClassNameHandlerMapping(九)
在上一篇博客springMVC源码分析--AbstractControllerUrlHandlerMapping(六)中我们介绍到AbstractControllerUrlHandlerMapping ...
- 熟悉Python的各种基础小算法
网上有一个Python100小例子的栏目,里面代码良莠不齐,于是下面就自己实现了其中的一些案例. 01.py # coding:utf-8 import sys reload(sys) sys.set ...
- 不规则递归转换为while,留底
我发现当参数并不太多时,从性能的角度来看,没必要用一个class来保存参数(虽然看起来更加生动形象),直接用最简单的元组就可以了. from hanoi import * # example tree ...
- The packages can be overrided by Java Endorsed Standards
Endorsed Standards APIs The Endorsed Standards for Java SE constitute all classes and interfaces ...
- RxJava操作符(05-结合操作)
转载请标明出处: http://blog.csdn.net/xmxkf/article/details/51656736 本文出自:[openXu的博客] 目录: CombineLatest Join ...