当前位置: 首页 > 科技观察

CentOS安装Supervisor

时间:2023-03-12 20:50:39 科技观察

的介绍。CentOS自带supervisor,可以直接通过yum安装。在CentOS7上可以直接安装,在CentOSStream上可以通过epel-release安装。yum-yinstallsupervisorserviceCentOS7及以上版本使用systemd进行服务管理systemctlenablesupervisordsystemctlstartsupervisord配置默认配置文件为/etc/supervisord.conf[unix_http_server]file=/run/supervisor/supervisor.sock;(thepathtothesocketfile)[supervisord]logfile=/var/log/supervisor/supervisord.log;(mainlogfile;default$CWD/supervisord.log)logfile_maxbytes=50MB;(maxmainlogfilebytesb4rotation;default50MB)logfile_backups=10;(numofmainlogfilerotationbackups;default10)loglevel=info;(loglevel;defaultinfo;others:调试、警告、跟踪)pidfile=/run/supervisord.pid;(supervisordpidfile;默认supervisord.pid)nodaemon=false;(startinforegroundiftrue;defaultfalse)minfds=1024;(min.availstartupfiledescriptors;default1024)minprocs=200;(最小。availprocessdescriptors;default200)[rpcinterface:supervisor]supervisor.rpcinterface_factory=supervisor.rpcinterface:make_main_rpcinterface[supervisorctl]serverurl=unix:///run/supervisor/supervisor.sock;useaunix://URLforaunixsocket[include]files=supervisord.d/*.ini[root@centos8~]#cat/etc/supervisord.conf|grep-v'^;'|grep-v'^$'[unix_http_server]file=/run/supervisor/supervisor.sock;(thepathtothesocketfile)[supervisord]logfile=/var/log/supervisor/supervisord.log;(mainlogfile;default$CWD/supervisord.log)logfile_maxbytes=50MB;(maxmainlogfilebytesb4rotation;default50MB)logfile_backups=10;(numofmainlogfilerotationbackups;default10)loglevel=info;(loglevel;默认信息;其他:调试、警告、跟踪)pidfile=/run/supervisord.pid;(supervisordpidfile;defaultsupervisord.pid)nodaemon=false;(startinforegroundiftrue;defaultfalse)minfds=1024;(min.availstartupfiledescriptors;default1024)minprocs=200;(min.availprocessdescriptors;default200)[rpcinterface:supervisor]supervisor.rpcinterface_factory=supervisor.rpcinterface:make_main_rpcinterface[supervisorctl]serverurl=unix:///run/supervisor/supervisor.sock;useaunix://URLforaunixsocket[include]files=supervisord.d/*.ini可以直接修改这个配置,直接添加程序管理程序。也可以放在/etc/supervisord.d/*.ini目录下,独立文件方便拷贝贝类管理vim/etc/supervisord.d/demo.ini[program:demo]command=/usr/local/demo/demo;theprogram(relativeusesPATH,cantakeargs);process_name=%(program_name)s;process_nameexpr(default%(program_name)s);numprocs=1;numberofprocessescopiestostart(def1)directory=/usr/local/demo;directorytocwdtobeforeexec(defnocwd);umask=022;umaskforprocess(defaultNone);priority=999;therelativestartpriority(default999);autostart=true;startatsupervisordstart(默认:真);autorestart=true;retstartatunexpectedquit(默认值:true);startsecs=10;numberofsecsprogmuststayrunning(def.1);startretries=3;max#ofserialstartfailures(default3);exitcodes=0,2;'expected'exitcodesforprocess(default0,2);stopsignal=QUIT;signalusedtokillprocess(defaultTERM);stopwaitsecs=10;maxnumsecstowaitb4SIGKILL(default10);user=chrism;setuidtothisUNIXaccounttoruntheprogram;redirect_stderr=true;redirectprocstderrtostdout(defaultfalse);stdout_logfile=/a/path;stdoutlogpath,NONEfornone;defaultAUTO_stdout_logfile1MB;最大#logfilebytesb4rotation(默认50MB);stdout_logfile_backups=10;#ofstdoutlogfilebackups(默认10);stdout_capture_maxbytes=1MB;“捕获模式”中的字节数(默认0);stdout_events_enabled=false;emiteventsonstdoutwrites(默认false);stderr_logfile=/a/path;stderrlogpath,NONEfornone;默认AUTO;stderr_logfile_maxbytes=1MB;max#logfilebytesb4rotation(默认50MB);stderr_logfile_backups=10;#ofstderrlogfilebackups(默认10);stderr_capture_maxbytes=1MB;'捕获模式'中的字节数(默认0);stderr_events_enabled=false;emiteventsonstderrwrites(defaultfalse);环境=A=1,B=2;processenvironmentadditions(defnoadds);serverurl=AUTO;overrideserverurlcomputation(childutils)配置好的程序路径就可以加载到任务了任务管理可以通过supervisorctlsupervisorctlstatus#查看进程运行状态supervisorctlstart进程名#启动进程supervisorctlsstop进程名#关闭进程supervisorctlrestart进程名#重启进程supervisorctlshutdown#关闭supervisordsupervisorctlreread#重新加载配置文件supervisorctlreload#重新加载配置并重启句柄不足在一些高-并发程序,句柄可能不足。您可以通过编辑supervisord.service文件来修改句柄数。vim/usr/lib/systemd/system/supervisord.service[Unit]Description=ProcessMonitoringandControlDaemonAfter=rc-local.service[Service]LimitNOFILE=40960LimitNPROC=40960Type=forkingExecStart=/usr/bin/supervisord-c/etc/supervisord.confRuntimeDirectory=supervisorRuntimeDirectoryMode=755[Install]WantedBy=multi-user.target修改后需要重启服务才能生效