Linux 后台进程管理器 supervisor 安装配置(使用httpd来做被监控进程)

在linux服务需要可靠的运行,并且服务exit后,需要自动重新启动起来,还可以监控进程状态,supervisor就是个不错的选项,supervisor是用python开发的一个进程管理器。下面是安装配置过程。

1.安装supervisor

easy_install supervisor     SetupTool安装方法

apt-get install supervisor    Debian/Ubuntu安装方法

yum install supervisor     RedHat/Centos安装方法

2.生成默认配置文件

echo_supervisord_conf > /etc/supervisord.conf

3.修改/etc/supervisord.conf配置文件

如需要访问web控制界面,inet_http_server区段修改为

[inet_http_server]

port=0.0.0.0:9001

username=username ; 你的用户名

password=password ; 你的密码

4.修改启动脚本-将supervisord加入系统服务

#!/bin/sh

#

# Supervisor is a client/server system that

# allows its users to monitor and control a

# number of processes on UNIX-like operating

# systems.

#

# chkconfig: - 64 36

# description: Supervisor Server

# processname: supervisord

# Source init functions

. /etc/init.d/functions

RETVAL=0

prog="supervisord"

pidfile="/tmp/supervisord.pid"

lockfile="/var/lock/subsys/supervisord"

start()

{

echo -n $"Starting $prog: "

daemon --pidfile $pidfile supervisord -c /etc/supervisord.conf

RETVAL=$?

echo

[ $RETVAL -eq 0 ] && touch ${lockfile}

}

stop()

{

echo -n $"Shutting down $prog: "

killproc -p ${pidfile} /usr/bin/supervisord

RETVAL=$?

echo

if [ $RETVAL -eq 0 ] ; then

rm -f ${lockfile} ${pidfile}

fi

}

case "$1" in

start)

start ;;

stop)      stop ;;

status)

status $prog ;;

restart)

stop

start ;;

*)

echo "Usage: $0 {start|stop|restart|status}" ;;

esac

5.赋予权限加到开机启动

chmod +x /etc/init.d/supervisord

chkconfig supervisord on

service supervisord start

目前所有的supervisor基本的都完成,那么我现在用httpd来受被管理测试是否可以启动         并访问和exit后会不会自启动。

6.修改/etc/supervisord.conf在最后添加以下内容

[program:apache]

command=/usr/local/apache/bin/httpd -D FOREGROUND

autostart=true

autorestart=true

startsecs=3

user=root

7.重新加载配置文件是否80端口可以访问

service  supervisord restart

日志显示正常:

CRIT Supervisor running as root (no user in config file)

INFO RPC interface ‘supervisor‘ initialized

INFO RPC interface ‘supervisor‘ initialized

CRIT Server ‘unix_http_server‘ running without any HTTP authentication checking

INFO daemonizing the supervisord process

INFO supervisord started with pid 4510

INFO spawned: ‘apache‘ with pid 4512

INFO success: apache entered RUNNING state, process has stayed up for > than 3 seconds (startsecs)

8.测试服务

9.supervisor web测试是否显现正常

10.关闭掉httpd 看是否可以自启动起来

/usr/local/apache/bin/apachectl stop手动关闭掉httpd

看日志停止后又启动起来:

exited: apache (exit status 0; expected)

INFO spawned: ‘apache‘ with pid 4640

INFO success: apache entered RUNNING state, process has stayed up for > than 3 seconds (startsecs)

另外一种配置文件方法(这样的方法适合多个服务好管理):

1. 修改配置文件 vim /etc/supervisord.conf

[include]

;files = relative/directory/*.ini

修改为:

[include]

;files = relative/directory/*.ini

files = /etc/supervisord.conf.d/*.conf

2. 创建被管理服务配置文件

Mkdir  /etc/supervisord.conf.d/

Cd /etc/supervisord.conf.d/

Vim apache.conf

[program:apache]

command=/usr/local/apache/bin/httpd -D FOREGROUND

autostart=true

autorestart=true

startsecs=3

user=root

3. 常用命令

supervisorctl  start  apache

supervisorctl  stop  apache

supervisorctl  status  apache

时间: 2024-12-26 18:52:41

Linux 后台进程管理器 supervisor 安装配置(使用httpd来做被监控进程)的相关文章

linux 后台进程管理利器supervisor

Linux的后台进程运行有好几种方法,例如nohup,screen等,但是,如果是一个服务程序,要可靠地在后台运行,我们就需要把它做成daemon,最好还能监控进程状态,在意外结束时能自动重启. supervisor就是用Python开发的一套通用的进程管理程序,能将一个普通的命令行进程变为后台daemon,并监控进程状态,异常退出时能自动重启. ubuntu安装: apt-get install supervisor 在/etc/supervisor 目录下有supervisord.conf

[转]Linux后台进程管理利器:supervisor

FROM : http://www.liaoxuefeng.com/article/0013738926914703df5e93589a14c19807f0e285194fe84000 Linux后台进程管理利器:supervisor 廖雪峰 / 编程 / 2011-4-5 13:09 / 阅读: 7211 Linux的后台进程运行有好几种方法,例如nohup,screen等,但是,如果是一个服务程序,要可靠地在后台运行,我们就需要把它做成daemon,最好还能监控进程状态,在意外结束时能自动重

MacOS 如何使用软件包管理器 Homebrew-Cask 安装软件?

本文标签: Mac效率工具 Mac小工具 MacOS Homebrew-Cask Mac软件包管理器 软件包管理简介 苹果系统结合了Windows的图形界面以及Linux的命令行,现在开发人员都清一色的用Mac了. Linux系统下安装.更新软件都很方便,除了我感觉用CentOS系统的一些人还喜欢 老三部曲 :下载.编译.安装.大部分人都更习惯基于包管理系统安装软件,当然更新.移除软件也用包管理系统搞定了. Mac系统的包管理不像Linux是由操作系统自带的,Mac官方默认没有提供这样的包管理系

程序包管理的前端工具yum、程序包管理器编译安装、sed命令

下面介绍的是程序包管理的前端工具yum.程序包管理器编译安装.sed命令. 一.Linux程序包管理:程序包管理的[前端工具] 1.yum软件包仓库简介 CentOS系的管理工具有yum和dnf.yum是一款发行版的Linux,其使用的默认程序包管理工具为rpm. URL是yum定位软件包仓库和仓库中程序文件的主要标识方式,表示如下: 例如:schema://[[email protected]]hostname/PATH/TO/DOCUMENT[paramers][methord] (例子中的

Win2012R2 Hyper-V初级教程01 -- 管理器基础安装

Hyper-v是微软从Windows2008开始推出的一项虚拟化技术,Hyper-V 提供了可用于创建和管理虚拟化服务器计算环境的软件基础结构和基本管理工具.此虚拟化环境可用来实现旨在提高效率和降低成本的各种商业目标.例如,虚拟化服务器环境可以帮助您: v 通过增加硬件的利用率来降低运行和维护物理服务器的成本.可以减少运行服务器工作负载所需的硬件数量. v 通过减少设置硬件和软件以及再现测试环境所需的时间来提高开发和测试效率. v 提高服务器可用性,而无需使用仅使用物理计算机的故障转移配置中所需

8种最好的Linux密码管理器

推荐8种最好的Linux密码管理器,可以安全地存储你的登录信息. ·Fiagaro's Password Manager·Gpass·Gpassword Manager·Gringotts·KeePassX·MyPasswords·PasswordSafe·Revelation 除了记得Fedora 13虚拟机的登录信息,您还记得1999年你放弃的Angelfire上站点的账户和密码吗?当时,我们都在上面. 这是福尔摩斯称为填充的阁楼无用的信息.我们不能够清理东西从我们的阁楼,但我们可以信任的一

Linux后台进程管理的一些命令小结

Linux后台进程管理的一些命令:fg.bg.jobs.&.ctrl + z命令,供大家学习参考 一. &加在一个命令的最后,可以把这个命令放到后台执行 ,如gftp &, 二.ctrl + z可以将一个正在前台执行的命令放到后台,并且处于暂停状态,不可执行 三.jobs查看当前有多少在后台运行的命令jobs -l选项可显示所有任务的PID,jobs的状态可以是running, stopped, Terminated,但是如果任务被终止了(kill),shell 从当前的shell

BI Admin Tools和目录管理器的连接配置

BI管理(Admin Tools): BI Server 的管理工具,用来创建维护模型,并且能够管理安全,会话,变量等等.是用的最多的一个管理工具:这个工具可以编辑 rpd 文件也可以在线通过 ODBC 连接到 BI Server 进行管理: 目录管理器Catalog Manager: 目录(Catalog)管理工具.Catalog 中存放了报表等展现层的对象.可以通过 Catalog Manager 对报表进行复制,归档,多语言设计等管理工作:这个工具可以离线编辑 Catalog 文件夹,也可

Linux后台进程管理的命令小结

Linux后台进程管理的一些命令:fg.bg.jobs.&.ctrl + z命令等,下面为大家一一介绍,具体也可参考Linux视频教程. 一. &加在一个命令的最后,可以把这个命令放到后台执行 ,如gftp &, 二.ctrl + z可以将一个正在前台执行的命令放到后台,并且处于暂停状态,不可执行 三.jobs查看当前有多少在后台运行的命令jobs -l选项可显示所有任务的PID,jobs的状态可以是running, stopped, Terminated,但是如果任务被终止了(k