配置supervisor管理beego应用
一、golang、beego等环境安装与配置
二、supervisor安装
github项目地址: Supervisor/supervisor
克隆项目:git clone Supervisor/supervisor.git
进入项目:cd supervisor
安装执行:python setup.py install
三、supervisor配置文件
官方文档-配置部分vi /etc/supervisord.conf
[supervisord]http_port=/var/tmp/supervisor.sock ; (default is to run a UNIX domain socket server);http_port=127.0.0.1:9001 ; (alternately, ip_address:port specifies AF_INET);sockchmod=0700 ; AF_UNIX socketmode (AF_INET ignore, default 0700);sockchown=nobody.nogroup ; AF_UNIX socket uid.gid owner (AF_INET ignores);umask=022 ; (process file creation umask;default 022)logfile=/var/log/supervisor/supervisord.log ; (supervisor输出日志,main log file;default $CWD/supervisord.log)logfile_maxbytes=50MB ; (max main logfile bytes b4 rotation;default 50MB)logfile_backups=10 ; (num of main logfile rotation backups;default 10)loglevel=info ; (logging level;default info; others: debug,warn)pidfile=/var/run/supervisord.pid ; (supervisord pidfile;default supervisord.pid)nodaemon=false ; (start in foreground if true;default false)minfds=1024 ; (min. avail startup file descriptors;default 1024)minprocs=200 ; (min. avail process descriptors;default 200);nocleanup=true ; (don't clean up tempfiles at start;default false);http_username=user ; (default is no username (open system));http_password=123 ; (default is no password (open system));childlogdir=/tmp ; ('AUTO' child log dir, default $TEMP);user=chrism ; (default is current user, required if root);directory=/tmp ; (default is not to cd during start);environment=KEY=value ; (key value pairs to add to environment)[supervisorctl]serverurl=unix:///var/tmp/supervisor.sock ; use a unix:// URL for a unix socket;serverurl=http://127.0.0.1:9001 ; use an http:// url to specify an inet socket;username=chris ; should be same as http_username if set;password=123 ; should be same as http_password if set;prompt=mysupervisor ; cmd line prompt (default "supervisor")[unix_http_server]file=/var/tmp/supervisor.sock ; (the path to the socket file);chmod=0777 ; socket file mode (default 0700);chown=root:root ; socket file uid:gid owner;username=root ; (default is no username (open server));password=root ; (default is no password (open server))[inet_http_server]port = 127.0.0.1:9001[rpcinterface:supervisor]supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface[program:hello] ;可以在这边配置要管理的程序directory=/home/www/php/ ;command=/usr/bin/php test.php ;process_name=%(program_name)s ;numprocs=1 ;autostart=true ;startsecs=1 ;autorestart=true ;startretries=3 ;user=root ;redirect_stderr=true ;stdout_logfile_maxbytes=20MB ;stdout_logfile_backups=10 ;[include] ;也可以通过include包含进来程序配置文件files = ./supervisor/conf.d/*.ini ;vi /etc/supervisor/conf.d/wx-prj.ini
[program:wx-prj];directory=/home/www/go/src/wx-prj ;go项目目录;command=/home/www/go/src/wx-prj/wx-prj ;go项目编译好的可执行文件directory=/home/www/go/bin ;command=/home/www/go/bin/wx-prj ;process_name=%(program_name)s ;numprocs=1 ;autostart=true ;startsecs=1 ;autorestart=true ;startretries=3 ;user=root ;redirect_stderr=true ;stdout_logfile=/home/www/go/wx-prj.stdout.log ;打印标准输出日志stdout_logfile_maxbytes=20MB ;stdout_logfile_backups=10 ;stderr_logfile=/home/www/go/wx-prj.stderr.log ;打印标准错误输出日志stderr_logfile_maxbytes=20MB ;stderr_logfile_backups=10 ;log_stdout=true ; if true, log program stdout (default true)log_stderr=true ; if true, log program stderr (def false)四、启动supervisor服务
supervisord -c /etc/supervisord.conf启动服务时可以跟踪日志输出观察[root@10-23-67-69 go]# tail -f /var/log/supervisor/supervisord.log2018-10-26 13:36:30,881 INFO Included extra file "/etc/./supervisor/conf.d/wx-prj.ini" during parsing2018-10-26 13:36:30,902 INFO RPC interface 'supervisor' initialized2018-10-26 13:36:30,902 CRIT Server 'inet_http_server' running without any HTTP authentication checking2018-10-26 13:36:31,203 INFO RPC interface 'supervisor' initialized2018-10-26 13:36:31,203 CRIT Server 'unix_http_server' running without any HTTP authentication checking2018-10-26 13:36:31,206 INFO daemonizing the supervisord process2018-10-26 13:36:31,207 INFO supervisord started with pid 170402018-10-26 13:36:32,209 INFO spawned: 'hello' with pid 170412018-10-26 13:36:32,213 INFO spawned: 'wx-prj' with pid 170422018-10-26 13:36:32,219 INFO spawned: 'world' with pid 170432018-10-26 13:36:33,279 INFO success: hello entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)2018-10-26 13:36:33,279 INFO success: wx-prj entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)2018-10-26 13:36:33,279 INFO success: world entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)也通过命令查看程序状态[root@10-23-67-69 conf.d]# supervisorctl statushello RUNNING pid 17041, uptime 0:00:19world RUNNING pid 17043, uptime 0:00:19wx-prj RUNNING pid 17042, uptime 0:00:19五、重载supervisor修改过的配置
supervisorctl reload六、中止/启动/重启supervisor管理的程序
[root@10-23-67-69 conf.d]# supervisorctl stop wx-prjwx-prj: stopped[root@10-23-67-69 conf.d]# supervisorctl start wx-prjwx-prj: started[root@10-23-67-69 conf.d]# supervisorctl restart wx-prjwx-prj: stoppedwx-prj: started[root@10-23-67-69 conf.d]# supervisorctl stop allhello: stoppedwx-prj: stoppedworld: stopped[root@10-23-67-69 conf.d]# supervisorctl start allhello: startedwx-prj: startedworld: started说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » 配置supervisor管理beego应用
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » 配置supervisor管理beego应用