当前位置:首页 > 饭碗技术 > 正文内容

CentOS 8安装Supervisor守护.Net Core进程

饭碗技术刘克彪3个月前 (01-12)149

.Net Core 项目发布到CentOS8上能够正常运行,但是退出了XShell,进程就结束,网站不能访问报502错误。那么我们就需要安装一个进程守护工具,这里我也使用的是Supervisor。

supervisor是什么,有什么作用

  • 一个Linux/Unix系统上的进程监控工具

  • 一个Python开发的通用的进程管理程序

  • 可以管理和监控Linux上面的进程

  • 能将一个普通的命令行进程变为后台daemon,并监控进程状态,异常退出时能自动重启

  • 不过同daemontools一样,它不能监控daemon进程


supervisor安装

以前用的CentOS7.2系统中使用的是python2.6,新的服务器中是python3,我不知道是否能够顺利安装Supervisor。网上资料说是python3不兼容Supervisor,但是有解决办法。我安装以前的安装方法并没有遇到什么问题,一切正常安装使用,这次在CentOS8中安装Supervisor也没有遇到其他问题,可能是运气比较好吧。

  1. 执行安装命令

    $ yum install python-setuptools 
    $ easy_install supervisor

    执行安装命令yum install python-setuptools

    执行安装命令yum install python-setuptools

    执行安装命令easy_install supervisor

    执行安装命令easy_install supervisor

  2. 创建文件夹及文件(自定义配置Supervisor)

    $ mkdir /etc/supervisor
    $ echo_supervisord_conf > /etc/supervisor/supervisord.conf

    创建Supervisor文件夹


  3. 修改配置文件

    通过第二步我们已经有了supervisord.conf配置文件,我们这里还需要创建一个conf.d文件夹,在这个文件夹中创建监控配置文件,我这里是Yzm.conf

    supervisord目录结构

    目录结构

    在这里,我们需要修改一下supervisord.conf配置文件,我们需要修改最下面,修改为我们创建的conf.d,去掉前面的分号,最终结果如下图

    supervisord.conf配置文件修改效果

  4. 加入监控配置

    [program:Yzm]
    command=dotnet LKB.Yzm.dll 
    directory=/www/wwwroot/yzm
    autorestart=true
    stderr_logfile=/www/wwwlogs/LKB.Yzm.err.log
    stdout_logfile=/www/wwwlogs/LKB.Yzm.out.log 
    environment=ASPNETCORE_ENVIRONMENT=Production 
    user=root
    stopsignal=INT
    autorestart=true
    startsecs=1

    conf.d 文件夹目录

    conf.d 文件夹目录

    监控配置内容

    监控配置Yzm.conf文件内容

  5. 执行运行命令

    $ supervisord -c /etc/supervisor/supervisord.conf

    执行supervisord运行命令

    执行supervisord运行命令

  6. 执行supervisord是否运行成功命令

    ps aux | grep supervisord

    supervisord运行成功图

    supervisord运行成功效果



通过以上,我们的监护程序已经配置完成,能够保证.Net Core网站正常运行了。当然,supervisord还有很多的配置,比如开机启动等,如果有需要自己去查询了。


扫描二维码推送至手机访问。

版权声明:本文由刘克彪发布,如需转载请注明出处。

转载请注明出处:https://lkb.ink/wdfw_23.html

分享给朋友:

相关文章

.NetCore3.1使用MySql

.NetCore3.1使用MySql

      今天写demo是用.net Core3.1 MySql,和以前一样添加引用MySql.Data,MySql.Data.EntityFrameworkCore...

.Net Core发布到CentOS 8 上配置SSL

.Net Core发布到CentOS 8 上配置SSL

前一阵把自己的服务器系统切换到CentOS 8后,发布了.Net Core站点以后就没管了,ssl证书也没有用,每次访问都是显示个不安全。今天想把证书加上,就在网上找了一些资料,看到Nginx反向代理...

试水SEO

从事软件开发很多年了,从来没有想过自己开发一个站点独立维护的想法。现在做了一个简单的站点,可是根本看不到排行。...

朋友收房

朋友收房

          小强同学今天去收房,我也去他的新房看看。小区名是学府憬城,挨着西南财经大学。收房的人都带着喜悦的心情,总算在这城市有自己...

Abp.NetCore入门

Abp.NetCore入门

1、到Abp官网下载项目我这里是下载了一个空项目,没有包含用户角色,如有需自行选择。打开解决方案看看:运行一下看看项目是否能够正常打开:2、我这里把.NetCore的版本改为了2.2,默认的是2.1,...

[EF]vs17+ef6+mysql code first

一直在使用集成框架做开发,今天突然想起还没使用过原生EF就想尝试一下原生EF。至于为什么用mysql不用sqlserver的原因是很简单的,因为我本机没有安装SqlServer,哈哈。就简单测试我创建...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。