supervisor常用命令

157 阅读1分钟

本文已参与[新人创作礼]活动,一起开启掘金创作之路

Supervisor是一个进程控制系统. 它是一个C/S系统(注意: 其提供WEB接口给用户查询和控制), 它允许用户去监控和控制在类UNIX系统的进程. 它的目标与launchd, daemontools和runit有些相似, 但是与它们不一样的是, 它不是作为init(进程号pid是1)运行. 它是被用来控制进程, 并且它在启动的时候和一般程序并无二致. 那么通俗点,它的作用是什么?你的Nginx,Tomcat,memcache,Redis...会崩么,不会?好吧,那你自己写的服务器监测脚本呢?好吧,不要再纠结了,交给Supervisor吧,它会帮你维护这些,即使它们不小心崩了,Supervisor会帮你看住它们,维护它们。

  1. supervisor的服务器端部分启动命令:
  • sudo unlink /var/run/supervisor.sock
  • supervisord -c /etc/supervisor/supervisord.conf
    此时默认开启了所有服务
  1. supervisor的客户端部分命令:
  • supervisorctl status 查看进程运行状态
  • supervisorctl start 进程名 启动进程
  • supervisorctl stop 进程名 关闭进程
  • supervisorctl restart 进程名 重启进程
  • supervisorctl update 重新载入配置文件
  • supervisorctl shutdown 关闭supervisord
  • supervisorctl clear 进程名 清空进程日志
  • supervisorctl 进入到交互模式下。使用help查看所有命令。
  • start stop restart + all 表示启动,关闭,重启所有进程。

二、关闭命令

supervisorctl stop all先关闭supervisor服务
之后再关闭supervisord服务
kill -9 pid