Supervisord总结
常用命令
一、添加好配置文件后
二、更新新的配置到supervisordsupervisorctl update
三、重新启动配置中的所有程序supervisorctl reload
四、启动某个进程(program_name=你配置中写的程序名称)supervisorctl start program_name
五、查看正在守候的进程supervisorctl
六、停止某一进程 (program_name=你配置中写的程序名称)pervisorctl stop program_name
七、重启某一进程 (program_name=你配置中写的程序名称)supervisorctl restart program_name
八、停止全部进程supervisorctl stop all
注意:显示用stop停止掉的进程,用reload或者update都不会自动重启。
supervisord : supervisor的服务器端部分,启动supervisor就是运行这个命令。
supervisorctl:启动supervisor的命令行窗口。
需求:redis-server这个进程是运行redis的服务。我们要求这个服务能在意外停止后自动重启。
安装(Centos)
1 | yum install python-setuptools |
测试是否安装成功:echo_supervisord_conf
创建配置文件:echo_supervisord_conf > /etc/supervisord.conf
修改配置文件,在supervisord.conf最后增加:
1 | [program:redis] |
环境变量配置:
environment=PATH="/usr/local/cuda-8.0/bin:/usr/local/cuda-8.0/lib64",LD_LIBRARY_PATH="/usr/local/cuda-8.0/lib64:$LD_LIBRARY_PATH"
运行命令:
1 | supervisord //启动supervisor |
1 | [root@vm14211 ~]# supervisorctl |
1 | ctl中: help //查看命令 |
遇到的问题
redis出现的不是running而是FATAL 状态
应该要去查看log
log在/tmp/supervisord.log日志中显示:
gave up: redis entered FATAL state, too many start retries too quickly
修改redis.conf的daemonize为no
事实证明webdis也有这个问题,webdis要修改的是webdis.json这个配置文件
参考
http://www.cnblogs.com/yjf512/archive/2012/03/05/2380496.html