记一次centos6下supervisor进程守护从安装到配置再到启用的过程

最近服务器redis服务莫名其妙挂了两次,每次都要人工重启,无奈只能上进程守护,本来打算用shell脚本来操作的,但是经过搜索发现supervisor也很强大,所以就直接安装了。

在配置的过程中遇到了FATAL Exited too quickly (process log may have details) 的错误,经过测试完美解决。

一、Supervisor安装过程

Supervisor是基于python开发的,安装Supervisor前,需要先安装python,Supervisor可以通过pip或者easy_install安装。

通过easy_install安装

yum install python-setuptools
easy_install supervisor

或者,通过pip安装

pip install supervisor

具体可参看官方文档http://supervisord.org/installing.html

二、supervisor的使用

安装完执行以下命令:

echo_supervisord_conf > /etc/supervisord.conf

随后我们对生成的配置文件进行编辑,主要修改最后两行,我这里修改为:

[include]
files = supervisord.d/*.ini

根据修改的内容,我们创建supervisord.d目录,然后在目录下创建需要监控的配置文件,这里以redis为例,创建redis.ini内容如下:

[program:redis]
#需要注意,commond这里不能使用service xxx start | stop |restart |reload 等命令
command=/www/server/redis/src/redis-server /www/server/redis/redis.conf
user=root
autostart = true
autoresart = true
stderr_logfile = /var/log/supervisor/redis.log
stdout_logfile = /var/log/supervisor/redis.log
stderr_logfile_maxbytes=10MB
stderr_logfile_backups=10
startsecs=3

启动supervisor,启动命令有多种,可以自行尝试,我这里使用的是:

supervisord -c /etc/supervisord.conf

启动后我们运行:

supervisorctl status

得到如下:

redis    RUNNING   pid 5318, uptime 0:00:29

表示启动成功,我们尝试使用 kill -9 5318结束redis进程后,在执行ps -ef |grep redis会发现服务已经自动重启,至此supervisor进程守护配置完毕。

三、一些错误记录

这次在配置redis守护的时候遇到了FATAL Exited too quickly (process log may have details) 错误,经过查找一些资料发现问题出在了配置文件程序启动一行,我最初写的是service redis start,这个命令写入运行supervisor后虽然redis启动起来了,按时监控结果报FATAL Exited too quickly (process log may have details) 错误,原因是Supervisor 监控的是这个 service 命令……这个命令是启动 redis的,然后启动完了这个 service 就结束了,所以 supervisor 就拼了命的给你启动……然后这个命令确实会很快退出……

然后改成 command=/www/server/redis/src/redis-server /www/server/redis/redis.conf  完美解决问题。

海拔科技

自媒体人,喜欢网络,热爱研究。本站头条号:星河 熊掌号:海拔科技

相关推荐

Centos启用cockpit 远程可视化WEB管理界面

本片文章主要介绍Centos7/8如何开启cockpit远程可视化web管理界面。 开启方法 CentOS 8 运行以上命令后即可开启! CentOS7 执行后会有类似提示: Created symlink from /etc/systemd/system/sockets.target.want …

利用iftop查看Centos实时网络带宽占用情况

我们在运维的过程中,经常需要查看系统实时网络占用情况,以便分析网络实时带宽流向,便于及时了解系统网络状况。利用iftop工具,可以很轻松的查看Linux系统下实时网络带宽占用情况。 iftop工具的安装 yum -y in …

CentOS 下挂载远程WebDAV为本地目录

本文主要内容主要讲解如何在centos操作系统下通过davfs2挂载WebDAV。本文实现基于CentOS7操作系统,理论上兼容6/7/8文章开始前我们先来了解下, 什么是WebDav   WebDAV (Web-based Distributed Authoring and V …

CentOS7最小化安装后如何安装VMware Tools

本文基于VMware15.x和CentOS-7-x86_64-Minimal-1908,无桌面环境。 Linux下安装VMware Tools的优势 1.VMware虚拟机中如何安装VMWare-Tools详解好处:可以支持图形界面,可以支持共享文件功能等 2.鼠标可以自由在 …