supervisord监控服务必备命令

supervisord(http://supervisord.org/introduction.html)是一个非常优秀的进程管理工具,使用Python开发。它可以在类UNIX系统的方式让用户来准确地监视和控制后台一定数量的服务进程。并作为一个天使进程让后台进程在当发生内部错误退出、或者进程被意外杀死时自动重启。除此之外,supervisord可以监控TCP端口,让其他主机通过客户端了命令supervisorctl通过HTTP协议直接对Server端进程进行启停,避免让进程/服务器管理者直接接触Shell或root用户。进程之间也有一个优先级和进程组关系,让管理员使用start all和stop all的关系来启动。

下面就让我们来介绍下supervisord监控服务必备命令:

supervisord : supervisor的服务器端部分,用于supervisor启动
supervisorctl:启动supervisor的命令行窗口,在该命令行中可执行start、stop、status、

1.手动启动:

supervisord -c /etc/supervisor/supervisord.conf 

2.查看已启动服务

pstree -p | grep supervisord 

3.查看log日志

cat  /tmp/supervisord.log

4.用 supervisorctl 查看已经被监控的program

(注:直接用 #supervisorctl 会提示:http://localhost:9001 refused connection)

supervisorctl -c /etc/supervisor/supervisord.conf

5.执行supervisorctl  reload的命令可以重启监控服务

supervisorctl reload  

6.supervisorctl status命令查看运行状态

supervisorctl status

7. supervisord,初始启动Supervisord,启动、管理配置中设置的进程。

supervisorctl stop programxxx,停止某一个进程(programxxx),programxxx为[program:mhqdemo]里配置的值,这个示例就是mhqdemo。

supervisorctl start programxxx,启动某个进程
supervisorctl restart programxxx,重启某个进程
supervisorctl stop all,停止全部进程,注:start、restart、stop都不会载入最新的配置文件。
supervisorctl reload,载入最新的配置文件,并按新的配置启动、管理所有进程。

以下参考文章 :supervisor常用命令

查看任务状态
# supervisorctl status
SmartCoin RUNNING pid , uptime ::
coin RUNNING pid , uptime days, ::
deepwellserver RUNNING pid , uptime days, ::
jingtumassetapi RUNNING pid , uptime days, ::
moac RUNNING pid , uptime days, ::
new RUNNING pid , uptime days, ::
nginx RUNNING pid , uptime ::
redis RUNNING pid , uptime days, ::
sonyflakeserver FATAL can't find command 'go'
sparkportal RUNNING pid , uptime day, ::
sparkportal2 RUNNING pid , uptime day, ::
sparkportal3 RUNNING pid , uptime day, ::
sparkportal4 RUNNING pid , uptime day, ::
sparkuser RUNNING pid , uptime days, ::
sparkwallet RUNNING pid , uptime days, ::
summaryservice RUNNING pid , uptime days, ::

第一列是服务名;第二列是运行状态,RUNNING表示运行中,FATAL 表示运行失败,STARTING表示正在启动,STOPED表示任务已停止; 第三/四列是进程号,最后是任务已经运行的时间。

查看单个任务状态: supervisorctl status 服务名

# supervisorctl status sparkportal
sparkportal RUNNING pid , uptime day, ::

启动/停止/重启任务

1.启动任务

supervisorctl start 服务名

# supervisorctl stop sparkportal
sparkportal: stopped
#supervisorctl status sparkportal
sparkportal STOPPED Jan : PM

2.停止任务

supervisorctl stop 服务名

# supervisorctl start sparkportal
sparkportal: started
# supervisorctl status sparkportal
sparkportal RUNNING pid , uptime ::

3.重启任务

supervisorctl restart 服务名

# supervisorctl restart sparkportal
sparkportal: stopped
sparkportal: started
# supervisorctl status sparkportal
sparkportal RUNNING pid , uptime ::
上一篇:vim改变多窗口的大小


下一篇:android 读写SD卡文件