使用supervisord管理进程

来源:互联网 发布:知名网络玄幻小说作家 编辑:程序博客网 时间:2024/05/18 00:21

转自: http://www.linux-mac.com/archives/708

Go 程序目前还不能作为daemon程序运行,比如:在 linux 不能使用
./app

【开机自启动】 go 程序,需要借助第三方程序实现开机启动;
例如supervisord,当然还有其他的,本文以supervisord为例:

1. 安装(需要 EPEL 源):
CentOS 5 安装32位:rpm -ivh http://mirrors.aliyun.com/epel/5/i386/epel-release-5-4.noarch.rpm64位:rpm -ivh http://mirrors.aliyun.com/epel/5/x86_64/epel-release-5-4.noarch.rpmCentOS 6 安装32位:rpm -ivh http://mirrors.aliyun.com/epel/6/i386/epel-release-6-8.noarch.rpm64位:rpm -ivh http://mirrors.aliyun.com/epel/6/x86_64/epel-release-6-8.noarch.rpmCentOS 7 安装:rpm -ivh http://mirrors.aliyun.com/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
安装supervisor
yum install supervisor -y
2. 配置文件:
vim /etc/supervisord.conf
[program:auth]command=/usr/auth/auth       ; 程序名 (相对使用 PATH,可以带参数)priority=999                 ; 相对的启动优先级 (默认 999)autostart=true               ; 随 supervisord 启动而运行 (默认: true)autorestart=true             ; 程序意外退出时自动重启 (默认: true)startsecs=10                 ; 默认10秒内程序必须重启 (默认 10 秒)startretries=5               ; 程序启动失败后最多的重启次数(默认 3)exitcodes=0,2                ; “预期”的进程退出代码(默认 0,2)stopsignal=QUIT              ; 程序退出所使用的信号 (默认 TERM)stopwaitsecs=10              ; 等待最大数秒发送SIGKILL (默认 10)user=root                    ; 运行程序的账户log_stdout=true              ; 如果 TRUE,程序输出日志 (默认 true)log_stderr=true              ; 如果 TRUE,错误日志输出 (def false)logfile=/var/log/auth.log    ; 进程的日志路径,使用 NONE 便是不输出日志 (默认 AUTO)logfile_maxbytes=100MB       ; 最大日志大小 (默认 50MB)logfile_backups=10           ; 日志备份 (默认 10)
3. 开机启动
chkconfig supervisord onservice supervisord restart

0 0
原创粉丝点击