Supervisor 管理本机服务

本文档详细介绍了如何在Linux系统中安装和配置Supervisor,包括启动、停止和监控服务流程,以及设置远程命令行和Web界面。通过修改配置文件,如设置用户和密码,以及配置nginx服务作为示例,展示了Supervisor的使用方法。此外,还提供了通过supervisorctl命令行管理服务的步骤,以及如何通过Web界面进行服务管理。
摘要由CSDN通过智能技术生成

Supervisor 为您提供了一个启动、停止和监控流程的地方。可以单独或分组控制过程。您可以配置 Supervisor 以提供本地或远程命令行和 Web 界面

1、安装Supervisor

yum -y install epel-release

yum -y install supervisor

systemctl start supervosor

systemctl enable supervosor

2、修改Supervisor 配置

vim /etc/supervisord.conf

;是取消注释

; Sample supervisor config file.

[unix_http_server]
file=/var/run/supervisor/supervisor.sock   ; (the path to the socket file)
;chmod=0700                 ; sockef file mode (default 0700)
;chown=nobody:nogroup       ; socket file uid:gid owner

username=****              ; (default is no username (open server)) 
#使用supervisorctl登陆到supervisord会话窗口的用户

password=*****              ; (default is no password (open server))
#使用supervisorctl登陆到supervisord会话窗口的密码
#执行supervisorctl -u 用户 -p 密码



#web页面开启, 9095是端口  下面是登陆web的用户密码
[inet_http_server]         ; inet (TCP) server disabled by default
port=0.0.0.0:9095        ; (ip_address:port specifier, *:port for all iface)
username=***            ; (default is no username (open server))
password=****               ; (default is no password (open server))


[supervisord]
logfile=/var/log/supervisor/supervisord.log  ; (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               ; (log level;default info; others: debug,warn,trace)
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)

3、cat /etc/supervisord.d/nginx.ini   配置nginx服务 测试

[program:nginx]
command=/usr/sbin/nginx -g 'daemon off;'
user=root   
startsecs=5
autostart=true
autorestart=true
redirect_stderr=true
stdout_logfile=/var/log/nginx.log
stdout_logfile_backups=5

使用supervisorctl命令登录到supervisord会话窗口来管理进程

supervisorctl -u 用户 -p 密码

supervisor> update   更新

supervisor> reload    刷新

supervisor> status   查看服务状态

supervisor> status
nginx                            RUNNING   pid 850, uptime 24 days, 21:43:18    

running正常运行

4、上述操作是在supervisord会话中交互式执行,也可使用supervisorctl 命令直接对服务做停止或启动操作

单一服务管理

# supervisorctl -u用户 -p密码 start nginx

# supervisorctl -u用户 -p密码 status

# supervisorctl -u用户 -p密码 reread

5、登陆 127.0.0.1:9095

输入web的用户密码正常看见,管理本地安装的服务

添加后台java服务监控

如果command使用startup需要修改配置文件, tomcat 的 startup.sh 脚本是daemon方式的,如果不做修改的话,supervisord 会一直报错

vim startip.sh 

在最后一行将

exec "$PRGDIR"/"$EXECUTABLE" start "$@" 改为    
exec "$PRGDIR"/"$EXECUTABLE" run "$@"

vim tomcat-admin.ini

[program:admin]
command=/usr/local/apache-tomcat-admin/bin/startup.sh   
environment=JAVA_HOME="/usr/local/java",JAVA_BIN="/usr/local/java/bin/"
directory=/usr/local/apache-tomcat-admin/webapps/
user=root
startsecs=5
autostart=true
autorestart=true
redirect_stderr=true
stdout_logfile=/var/log/tomcat-admin.log
stdout_logfile_backups=5

或者直接用 就不需要修改红字部分

[program:admin]
command=/usr/local/apache-tomcat-admin/bin/catalina.sh run
environment=JAVA_HOME="/usr/local/java",JAVA_BIN="/usr/local/java/bin/"
directory=/usr/local/apache-tomcat-admin/webapps/
user=root
startsecs=5
autostart=true
autorestart=true
redirect_stderr=true
stdout_logfile=/var/log/tomcat-admin.log
stdout_logfile_backups=5


 


 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值