进程管理supervisor的简单说明
发布日期:2021-05-09 09:25:56 浏览次数:19 分类:博客文章

本文共 14644 字,大约阅读时间需要 48 分钟。

���������

      ���������������������������������������������������������������������������������������������������������nohup���&���screen���������������������������������start/stop/restart/reload������������������������������������������������������������������������������

      Supervisor������Python���������������������������������������������������������������������������������������������daemon������������������������������������������������������������������������fork/exec������������������������������������������supervisor���������������������������������������supervisor���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������supervisor������������������������������������supervisord���������������������������������������root���user���������user������������������������������������

���������

1���easy_install ���������easy_install supervisor2���pip ���������pip install supervisor3���Debian / Ubuntu������������������apt���������apt-get install supervisor

1���������apt-get install������������supervisor���������������������

/etc/supervisor/supervisord.conf 

supervisor���������������������������������������������������������������������������������������������������������������������������������������������

/etc/supervisor/conf.d/*.conf

������������������������������������������������������������������������������������supervisor���������������������/etc/supervisor/conf.d/���������������.conf������������������������������������������������������������������������������������������������������������������������������������������������������������������������������/etc/supervisor/conf.d/test.conf������

#���������[program:blog]#������������directory=/opt/bin#������������������command=/usr/bin/python /opt/bin/test.py#supervisor������������������������������������������������Trueautostart=true#���������exit������������������program������������������,������unexpected#������������������������������������������������������������������false,unexpected���true������������false������������������������������������������������������������������������unexpected���������������������������������������������exitcodes���������������autorestart=false#���������������������������������������������������������������������running������������������������������������������������1startsecs=1#������������ stderr_logfile=/tmp/blog_stderr.log stdout_logfile=/tmp/blog_stdout.log #��������������������������� user = zhoujy #��� stderr ������������ stdout��������� falseredirect_stderr = true#stdout ��������������������������� 50MBstdout_logfile_maxbytes = 20M#stdout ���������������������stdout_logfile_backups = 20[program:zhoujy] #������������directory=/opt/bin command=/usr/bin/python /opt/bin/zhoujy.py autostart=true autorestart=false stderr_logfile=/tmp/zhoujy_stderr.log stdout_logfile=/tmp/zhoujy_stdout.log #user = zhoujy  

2���������easy_install���������������������������������������������������������

���������������������������������������������������������������������������������������������������������������������������������������

1��������� echo_supervisord_conf������������������������echo_supervisord_conf2������������������������echo_supervisord_conf > /etc/supervisord.conf

���������������������������������������������������supervisor������;[program:theprogramname]������������

������������������

���������

;[program:theprogramname];command=/bin/cat              ; the program (relative uses PATH, can take args);process_name=%(program_name)s ; process_name expr (default %(program_name)s);numprocs=1                    ; number of processes copies to start (def 1);directory=/tmp                ; directory to cwd to before exec (def no cwd);umask=022                     ; umask for process (default None);priority=999                  ; the relative start priority (default 999);autostart=true                ; start at supervisord start (default: true);startsecs=1                   ; # of secs prog must stay up to be running (def. 1);startretries=3                ; max # of serial start failures when starting (default 3);autorestart=unexpected        ; when to restart if exited after running (def: unexpected);exitcodes=0,2                 ; 'expected' exit codes used with autorestart (default 0,2);stopsignal=QUIT               ; signal used to kill process (default TERM);stopwaitsecs=10               ; max num secs to wait b4 SIGKILL (default 10);stopasgroup=false             ; send stop signal to the UNIX process group (default false);killasgroup=false             ; SIGKILL the UNIX process group (def false);user=chrism                   ; setuid to this UNIX account to run the program;redirect_stderr=true          ; redirect proc stderr to stdout (default false);stdout_logfile=/a/path        ; stdout log path, NONE for none; default AUTO;stdout_logfile_maxbytes=1MB   ; max # logfile bytes b4 rotation (default 50MB);stdout_logfile_backups=10     ; # of stdout logfile backups (default 10);stdout_capture_maxbytes=1MB   ; number of bytes in 'capturemode' (default 0);stdout_events_enabled=false   ; emit events on stdout writes (default false);stderr_logfile=/a/path        ; stderr log path, NONE for none; default AUTO;stderr_logfile_maxbytes=1MB   ; max # logfile bytes b4 rotation (default 50MB);stderr_logfile_backups=10     ; # of stderr logfile backups (default 10);stderr_capture_maxbytes=1MB   ; number of bytes in 'capturemode' (default 0);stderr_events_enabled=false   ; emit events on stderr writes (default false);environment=A="1",B="2"       ; process environment additions (def no adds);serverurl=AUTO                ; override serverurl computation (childutils)
View Code

���������

;[program:theprogramname]      ;���������������������������������������������":"���������������������������������������������������                                ������������������������������program������������������������������������������program������                                ���������������������������;command=/bin/cat              ; ������������������������������������������������������������������������                                ���������/home/test.py -a 'hehe'                                ���������������������������������������command���������������������������������������������������                                ���������������������������������������������������command=service httpd start���                                httpd���������������linux���service���������������������supervisor������������������������                                ���������������������������������������������                                ������������������������������;process_name=%(program_name)s ; ������������������������������������������numprocs���������1���������������������������������                                 ������������������%(program_name)s������������������������program������������������������                                 ������������numprocs������������������������������������������������������������������������������                                 ������������������������������������                                ;numprocs=1                    ; ���������������������������������1���������������������������������������process_name���������                                 ���������1    ���������������������;directory=/tmp                ; ���������������������������������������������                                 ���������������������������������������;umask=022                     ; ���������������������none������������;priority=999                  ; ���������������������������������������������������������������������������������������������                                 ������������999 ���������������������;autostart=true                ; ���������true������������������������supervisord������������������������                                 ������������true   ���������������������;autorestart=unexpected        ; ���������������������������������������������������������������������������false,unexpected                                 ���true������������false���������������������������������������������������������������                                 ���������unexpected���������������������������������������������exitcodes������������������                                  ������������������������������������������������true������������������������������������������������                                 ���������������;startsecs=1                   ; ���������������������������������������������������������������������running���������������������                                 ������������                                 ������������1 ���������������������;startretries=3                ; ���������������������������������������������������������������������3���������supervisor������                                 ������������������������FAIL                                 ������������3 ���������������������;exitcodes=0,2                 ; ���������������������autorestart=unexpected������������exitcodes������������������                                 ������������expected������;stopsignal=QUIT               ; ������������������������������TERM, HUP, INT, QUIT, KILL, USR1, or USR2���������                                  ���������TERM ���������������������������������������������������������������������expected                                  ���������������;stopwaitsecs=10               ; ������������������������������������stopsignal���������������������������������                                 ���supervisord������������������������������ ���������������������supervisord���������                                 ���������������������������kill������������                                 ���������10������������������������;stopasgroup=false             ; ���������������������������supervisord������������������������������������������������                                 ������������������������������������������supervisord������������������������������������������                                 ������������������������������������������������������������������������������������������������                                 ��������������������������� ���������true���������������killasgroup������������������true���                                 ������������������������������������������stop������                                 ���������false���������������������������;killasgroup=false             ; ������������������stopasgroup���������������������������kill������;user=chrism                   ; ������supervisord���root���������������������������������������root���������������������                                 ���������program                                 ������������������������������������������;redirect_stderr=true          ; ���������true������stderr���������������������stdout���������������                                 ���������false������������������;stdout_logfile=/a/path        ; ������������stdout���������������������������������������AUTO���none������������������                                 ���������none������������������������������������������AUTO���������������������������������                                 ������������������������������supervisord���������������������������������������������������                                 ������������ redirect_stderr=true������������sterr������������������������������;stdout_logfile_maxbytes=1MB   ; ������������������������������[supervisord]������������������������������50;stdout_logfile_backups=10     ; ���[supervisord]������������������������10;stdout_capture_maxbytes=1MB   ; ���������������������capture������������������������������0������������������������������stdout                                 ������������������supervisor������������������������������������event���                                 ���������0������0������������������������������������������������;stdout_events_enabled=false   ; ������������ture���������������������������stdout���������������������������������������������                                 ������supervisord������PROCESS_LOG_STDOUT���������event                                 ���������false������������������������;stderr_logfile=/a/path        ; ���������������������stderr������������������������redirect_stderr=true������������������                                 ���������������������������������������������������������stdout_logfile���������������������                                 ���������AUTO���������������������������������supervisord������������������������������������;stderr_logfile_maxbytes=1MB   ; ������������������������������������������;stderr_logfile_backups=10     ; ������������;stderr_capture_maxbytes=1MB   ; ������������������stdout_capture��������� ���������0���������������;stderr_events_enabled=false   ; ������������������������������false;environment=A="1",B="2"       ; ������������������������������������������������������������������������;serverurl=AUTO                ;
View Code

���������������������������������������������������������

1���apt-get install ���������supervisor������������������ /etc/init.d/supervisor ���������

/etc/init.d/supervisor start

2���������easy_install ���������supervisor������supervisord ���������

supervisord

4���web������������

���������supervisor������������������������[inet_http_server]������������������������������http://10.211.55.11:9001������������������������������������

[inet_http_server]port=10.211.55.11:9001username=userpassword=123

���������

(supervisorctl)

1) ��������������������������������� 

# supervisorctl statusblog                             RUNNING    pid 2395, uptime 0:08:41zhoujy                           RUNNING    pid 2396, uptime 0:08:41

2���������������������������������������

# supervisorctl stop zhoujyzhoujy: stopped# supervisorctl start zhoujyzhoujy: started

3���������������������������������������

# supervisorctl stop allblog: stoppedzhoujy: stopped# supervisorctl start allblog: startedzhoujy: started

4���������������������supervisor���������������������������������autostart=true���������������������������������������autorestart=ture���

���������������������������������������

���������

      ���������������������������������������supervisor���������������������������������supervisor���������������������������������������������web������������������������������������������������������������������������������������������

���������������

 

上一篇:MySQL备份mydumper的原理【转】
下一篇:Python之mmap内存映射模块(大文本处理)说明

发表评论

最新留言

不错!
[***.144.177.141]2025年04月16日 03时51分58秒