天天看点

tornado 环境部署 supervisor现在来看下生成目前的配置直接启动报错使用配置文件启动配置文件详解

1 这个直接安装在root 角色下面,不是在虚拟环境的,虚拟环境知识和程序有关

https://www.jianshu.com/p/e1c3e6fbae80

http://blog.51cto.com/zengestudy/2052794

https://www.jianshu.com/p/e1c3e6fbae80

1 下载安装

# 使用 pip 装会出问题的, 最好用yum 安装 可以直接使用 systemctl 会有问题
#sudo pip install supervisor

yum -y install supervisor
           

2 创建配置文件

这一步是生成supervisor 的配置文件

echo_supervisord_conf > /etc/supervisord.conf
           

3 修改 里面的配置文件

[include]
files = relative/directory/*.ini
修改为
[include]
files = /etc/supervisor/*.conf
这样配置的说明,相当于给这个文件进行扩展了不然太长
           

4 在etc 下面创建 supervisor目录,创建xxx.conf

mkdir /etc/supervisor
touch yabg.conf
           

启动的时候就会找到这个文件

5 填写配置信息

[group:tornadoes]
programs=tornado-,tornado-,tornado-

[program:tornado-]
command=/home/python/.virtualenvs/tornado_py2/bin/python /home/python/Documents/demo/chat    /server.py --port=
directory=/home/python/Documents/demo/chat
user=python
autorestart=true
redirect_stderr=true
stdout_logfile=/home/python/tornado.log
loglevel=info

[program:tornado-]
command=/home/python/.virtualenvs/tornado_py2/bin/python /home/python/Documents/demo/chat    /server.py --port=
directory=/home/python/Documents/demo/chat
user=python
autorestart=true
redirect_stderr=true
stdout_logfile=/home/python/tornado.log
loglevel=info

[program:tornado-]
command=/home/python/.virtualenvs/tornado_py2/bin/python /home/python/Documents/demo/chat    /server.py --port=
directory=/home/python/Documents/demo/chat
user=python
autorestart=true
redirect_stderr=true
stdout_logfile=/home/python/tornado.log     存放日志的地方(标准日志输出)
loglevel=info
           

说明

command 前面的是python 解释权所在的位置(这里为设置的虚拟的目录位置), 后面是tornado 的 main.py 所在的位置 –port 监听端口

directory 文件所在的目录

user 用户

上面有多个不同端口,直接监听不同的端口

现在来看下生成目前的配置

[yangxiaodong@dev conf.d]$ cat ohho.conf 
[program:ohho]

user=www
command=/data/env/yang/bin/python  /data/websites/work/main.py

process_name=%(program_name)s ; process_name expr (default %(program_name)s)
numprocs=                    ; number of processes copies to start (def 1)
startretries=2                ;
stopsignal=TERM               ; signal used to kill process (default TERM)
redirect_stderr=true          ; redirect proc stderr to stdout (default false)
directory=/data/websites/SDevelop/
autostart=true
stdout_logfile = /data/websites/logs/ohho.out
stdout_logfile_maxbytes=100MB
stdout_logfile_backups=10
stderr_logfile = /data/websites/logs/ohho.err
stderr_logfile_maxbytes=100MB
stderr_logfile_backups=10
           

直接启动报错

systemctl start supervisord.service
Failed to start supervisord.service: Unit not found.
解决办法:

最好使用 yum 安装就可以啦
           

使用配置文件启动

查看是不是启动了

supervisorctl

我们可以利用supervisorctl来管理supervisor。

supervisorctl

status # 查看程序状态

stop tornadoes:* # 关闭 tornadoes组 程序

start tornadoes:* # 启动 tornadoes组 程序

restart tornadoes:* # 重启 tornadoes组 程序

update # 重启配置文件修改过的程序

配置文件详解

https://www.cnblogs.com/ajianbeyourself/p/5534737.html

继续阅读