supervisord 安装、配置
1.配置好yum源后,可以直接安装
yum install supervisor
2.输入以下指令查看安装已完成
supervisord --version
3.生成配置文件
echo_supervisord_conf > /etc/supervisord.conf
4.修改supervisor配置文件
vim /etc/supervisord.conf
修改以下几行
#启用访问web控制界面,inet_http_server区段修改为 [inet_http_server] port=*:9001 #设置账户和密码 username=user password=123 #include区段 [include] files = supervisord.d/*.ini
注:默认子进程配置文件为ini格式,可在supervisor主配置文件中修改。
子进程配置文件路径:/etc/supervisord.d/
5.建立配置文件 demo.ini
关于 supervisor 配置文件的含义,这里不做过多的解释,可移步官网查看帮助文档:http://www.supervisord.org/configuration.html,我们在这里只做一个最简单的配置文件,刚好够启动 .NET Core 应用程序即可
[program:demo] command=/usr/bin/dotnet demo.dll ; 输入执行命令,这里表示 dotnet demo.dll directory=/data/demo/publish ; 应用程序根目录 autostart=true ; 是否自动启动,当 supervisor 加载该配置文件的时候立即启动它 autorestart=true ; 是否自动重启,当执行 dotnet Deploy.Linux.dll 启动失败时,会重复的自动重启 logfile_maxbytes=50MB ; 该配置文件输出单个日志文件的大小 logfile_backups=10 ; 日志备份个数 loglevel=info ; 记录日志级别 stderr_logfile=/data/logs/demo.err.log ; 指定标准错误输出日志文件 stdout_logfile=/data/logs/demo.out.log ; 指定标准输出日志文件 environment=ASPNETCORE_ENVIRONMENT=Production ; 可配置环境变量,该环境变量将通过执行 dotnet Deploy.Linux.dll 命令的时候传入到 .NET Core 应用程序中 user=root ;启动服务的用户 stopsignal=INT redirect_stderr=true
上面包含了几个关键的参数,都在注释中了,接下来建立日志目录,否则服务启动出错,输入命令
6.创建日志文件目录
sudo mkdir -p /data/logs/
7.启动项
systemctl start supervisord.service //启动supervisor并加载默认配置文件 systemctl enable supervisord.service //将supervisor加入开机启动项
8.防火墙设置
开放端口
firewall-cmd --zone=public --add-port=9001/tcp --permanent
重启防火墙
firewall-cmd --reload
9.常用指令
supervisorctl
输入用户
密码
status 服务名 //查看所有进程的状态
stop 服务名 //停止
start 服务名 //启动
restart 服务名 //重启
update //配置文件修改后使用该命令加载新的配置
reload //重新启动配置中的所有程序
咩咩咩