欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【supervisor】使用教程 配置 作用 服务自动重启

程序员文章站 2022-06-11 19:27:40
...

1. 安装 启动 supervisor

1.1 安装

yum -y install supervisor

1.2 生成配置文件并修改配置文件

echo_supervisord_conf > /etc/supervisord.conf

1.3 创建文件夹,用于放启动程序的配置文件

mkdir /etc/supervisor

1.4 修改配置文件

vim /etc/supervisord.conf
[unix_http_server]
file=/etc/supervisor/supervisor.sock
[inet_http_server]
port=0.0.0.0:9001
[supervisord]
logfile=/opt/logs/supervisor/supervisord.log
pidfile=/etc/supervisor/supervisord.pid
[supervisorctl]
serverurl=unix:///etc/supervisor/supervisor.sock
[include]
files = /etc/supervisor/*.conf

1.5 创建程序的配置文件并配置

vim common-service.conf(在/etc/supervisor文件夹下)

1.6 创建对应的文件夹和日志文件

/opt/logs/archives-consumer.log  注意:一般用log4j的日志文件

1.7 启动客户端

supervisord -c /etc/supervisord.conf

1.8 查看客户端进程

ps -ef | grep supervisor

1.9 启动服务端

supervisorctl -c /etc/supervisord.conf

1.10 注意

配置中的127.0.0.1改成0.0.0.0,要不然访问不到

【supervisor】使用教程 配置 作用 服务自动重启

是因为user-server.conf 中的“;”前面没加空格

【supervisor】使用教程 配置 作用 服务自动重启

是因为common-consumer.conf中所在的服务器没有jdk

2. 子配置文件的配置

	vim /etc/supervisor/user.conf
	[program:user-consumer]
	directory = /opt/apps/ ; 程序的启动目录
	command = java -jar beebee-user-thrift-consumer.jar ; 启动命令
	autostart = false    ; 在 supervisord 启动的时候也不自动启动
	startsecs = 30       ; 启动 30 秒后没有异常退出,就当作已经正常启动了
	autorestart = true   ; 程序异常退出后自动重启
	startretries = 3     ; 启动失败自动重试次数,默认是 3
	user = root          ; 用哪个用户启动
	redirect_stderr = true  ; 把 stderr 重定向到 stdout,默认 false
	; stdout_logfile_maxbytes = 20MB  ; stdout 日志文件大小,默认 50MB
	; stdout_logfile_backups = 20     ; stdout 日志文件备份数
	; stdout 日志文件,需要注意当指定目录不存在时无法正常启动,所以需要手动创建目录(supervisord 会自动创建日志文件)
	; stdout_logfile = /opt/logs/user-consumer.log
	stopasgroup=true
	killasgroup=true

3. 第三方插件(控制所有jar包)

	https://github.com/Gamegos/cesi
	1 yum -y install sqlite3 python python-flask
	2 在/usr/local/文件夹下,git clone https://github.com/Gamegos/cesi
	3 cd cesi,sqlite3 path/to/userinfo.db < userinfo.sql(需要坚持数据库是否有数据)
	4 cp cesi.conf /etc/cesi.conf
	5 nohup python web.py &
	Username : admin
	Password : admin

4.0 cesi.conf 配置文件的主要配置项

	database = /usr/local/cesi/userinfo.db
	activity_log = /usr/local/cesi/test.log
	host = 0.0.0.0