.net Core 配置Centos守护进程Supervisor
声明: 博客引用来源:https://blog.csdn.net/qq_37997978/article/details/83311177建议看原版,更为详细
介绍: Supervisor( http://supervisord.org/ )是用Python开发的一个client/server服务,是Linux/Unix系统下的一个进程管理工具,不支持Windows系统。它可以很方便的监听、启动、停止、重启一个或多个进程。用Supervisor管理的进程,当一个进程意外被杀死,supervisort监听到进程死后,会自动将它重新拉起,很方便的做到进程自动恢复的功能,不再需要自己写shell脚本来控制。因为Supervisor是Python开发的,安装前先检查一下系统否安装了Python2.4以上版本。
1、安装python自动化工具
yum install python-setuptools
2、yum安装Supervisor (阿里云验证通过)
yum install supervisor
3、easy_install 安装Supervisor(如果yum安装无法找到资源,可以通过easy_install)
wget --no-check-certificate https://bootstrap.pypa.io/ez_setup.py -O - | sudo python
easy_install supervisor (直接运行此命令验证通过)
4、 在etc下创建目录,并赋权限
mkdir -m 700 -p /etc/supervisor
5、 在目录“ /etc/supervisor”下创建配置文件 “supervisord.conf”
echo_supervisord_conf > /etc/supervisor/supervisord.conf
6、 修改配置文件
vim /etc/supervisor/supervisord.conf

在文件末尾添加,注意首尾需无空格,需顶格(这里要删除行头的分号 “;”)
内容如下:
[include]
files=/etc/supervisor/conf.d/*.conf

7、Web管理界面: 出于安全考虑,默认配置是没有开启web管理界面,需要修改supervisord.conf配置文件打开http访权限,将下面的配置修改,可外网访问:
内容如下:
[inet_http_server] ; inet (TCP) server disabled by default
port=0.0.0.0: ; (ip_address:port specifier, *:port for all iface)
username=user ; (default is no username (open server))
password=user ; (default is no password (open server))

如果是最后才想起配置外网访问,请使用以下命令使配置生效:
supervisord -c /etc/supervisor/supervisord.conf
效果如下: 输入外网地址 http://***:9001

8、 在目录“/etc/supervisor”下创建dotnet core 进程配置文件存放目录“conf.d”
mkdir -m 700 /etc/supervisor/conf.d
9、 创建进程配置文件 test.conf," test "可以为dotnet core 入口dll文件名字 ,插入内容,注意首尾需无空格,需顶格
vim /etc/supervisor/conf.d/test.conf
[program:test]
command=dotnet test1.dll
directory=/home/test1/
stderr_logfile=/var/log/test1.error.log
stdout_logfile=/var/log/test1.stdout.log
environment=ASPNETCORE_ENVIRONMENT=Production
user=root
stopsignal=INT
autostart=true
autorestart=true
startsecs=
内容说明:
[program:test] ;显示名称
command= dotnet test1.dll ;运行命令,启动dotnet进程
directory=/home/test1/ ;test1目录
stderr_logfile=/var/log/test1.error.log ;错误日志文件
stdout_logfile=/var/log/test1.stdout.log ;日志文件
environment=ASPNETCORE_ENVIRONMENT=Production ;进程环境变量
user=root ;进程执行用户
stopsignal=INT ;
autostart=true ;如果设置为true,当supervisord启动的时候,进程会自动重启。
autorestart=true ;程序崩溃时自动重启,重启次数是有限制的,默认为3次
startsecs=3 ;启动 3 秒后没有异常退出,就当作已经正常启动了
10、启动supervisor(手动启动)
supervisord -c /etc/supervisor/supervisord.conf
查看已启动服务:pstree -p | grep supervisord
注意:
(1)每次修改配置文件后需进入supervisorctl,执行reload, 改动部分才能生效
(2)两个命令
supervisord : supervisor的服务器端部分,用于supervisor启动
supervisorctl:启动supervisor的命令行窗口,在该命令行中可执行start、stop、status、reload等操作。
查看状态: supervisorctl status
执行supervisorctl reload的命令可以重启监控服务: supervisorctl reload
启动某个进程: supervisorctl start test1
重启某个进程: supervisorctl restart test1
停止某一个进程: supervisorctl stop test1
停止全部进程: supervisorctl stop all
载入最新的配置文件,并按新的配置启动、管理所有进程: supervisorctl reload
11、 创建supervisor 自启动服务(开机启动Supervisor服务)
vim /etc/systemd/system/supervisor.service
内容如下:
[Unit]
Description=supervisor [Service]
Type=forking
ExecStart=/usr/bin/supervisord -c /etc/supervisor/supervisord.conf
ExecStop=/usr/bin/supervisorctl shutdown
ExecReload=/usr/bin/supervisorctl reload
KillMode=process Restart=on-failure
RestartSec=42s [Install]
WantedBy=multi-user.target
注意配置文件配置文件位置对应
使配置生效
systemctl daemon-reload
设置服务开机启动,即设置enable
systemctl enable supervisor.service
启动服务
systemctl start supervisor.service

.net Core 配置Centos守护进程Supervisor的更多相关文章
- .net core linux的守护进程 supervisor
这个介绍的很全面,对初学者来说可以有更好的认识: https://www.cnblogs.com/savorboard/p/dotnetcore-supervisor.html
- asp.net core2.0 部署centos7/linux系统 --守护进程supervisor(二)
原文:asp.net core2.0 部署centos7/linux系统 --守护进程supervisor(二) 续上一篇文章:asp.net core2.0 部署centos7/linux系统 -- ...
- 基于Laravel框架下使用守护进程supervisor实现定时任务(毫秒)
本篇文章给大家带来的内容是关于基于Laravel框架下使用守护进程supervisor实现定时任务(毫秒),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 公司需要实现X分钟内每隔Y秒 ...
- laravel 守护进程Supervisor的配置
安装Supervisor Supervisor是Linux系统中常用的进程守护程序.如果队列进程queue:work意外关闭,它会自动重启启动队列进程.在Ubuntu安装Supervisor 非常简单 ...
- Ubuntu安装守护进程supervisor
Supervisor安装与配置(Linux/Unix进程管理工具) asp.net core 负载均衡集群搭建(centos7+nginx+supervisor+kestrel) 为了保证服务能够稳定 ...
- 【Linux】- Ubuntu守护进程supervisor
linux的守护进程类似于windows的服务.linux通过supervisor创建守护进程. 1.安装supervisor sudo apt-get install supervisor 安装成功 ...
- cloudera learning3:Hadoop配置和守护进程logs
Services:Haddoop cluster上可以部署的组件,比如HDFS,YARN,HBase等. Roles:在service配置时,由Cloudera Manager创建.比如NameNod ...
- hadoop地址配置、内存配置、守护进程设置、环境设置
1.1 hadoop配置 hadoop配置文件在安装包的etc/hadoop目录下,但是为了方便升级,配置不被覆盖一般放在其他地方,并用环境变量HADOOP_CONF_DIR指定目录. 1.1.1 ...
- Centos 7 .Net core后台守护进程Supervisor配置
环境: Centos 7 已安装.Net core 2.0.0 .Net core 1.1.2 1.Supervisor安装 yum 安装 yum install supervisor (阿里云验证 ...
随机推荐
- Linux 文件|目录 属性
文件属性 ls -l 列出的文件|目录信息如下 第一个字符指定类型,-是文件,d是目录(dir). 后面9个字符是该文件|目录的用户权限:r读,w写,x执行. 执行是指:如果该文件是一个可执行文件, ...
- 在本地搭建git服务器
GitHub就是一个免费托管开源代码的远程仓库.但是对于某些视源代码如生命的商业公司来说,既不想公开源代码,又舍不得给GitHub交保护费,那就只能自己搭建一台Git服务器作为私有仓库使用. 搭建Gi ...
- c# 异步编程 使用回调函数例子
环境VS2010, 在项目属性中输出类型选择控制台应用程序 运行结果 using System;using System.Collections.Generic;using System.Compon ...
- css选择器四大类:基本、组合、属性、伪类
什么是选择器?选择器的作用是通过它可以找到元素,把css样式传递给元素!css选择器主要分为:基本选择器.属性选择器.组合选择器与伪类选择器四个大类! css基本选择器 基本选择器又分为:*通配符.标 ...
- 大二网课ing学习周记
行稳致远,久久为功! 一个概念套着一个概念哦!码就是关键字,标识属性是也! 1.什么是主码和外码,请举例说明. 关键字也叫码! 首先,在一个关系中,能惟一标识元组的属性or最小属性集称为关系的候选码. ...
- 关于javascript中的内置函数
(1) parseInt()函数 语法:parseInt(string,[n]) 该函数主要将首位为数字的字符串转化为数字,若该字符串不是以数字开头,则返回NaN; n是用于指出字符串中的数据是几 ...
- 开启WIndows10 未经身份验证的来宾访问策略以及SMB1
打开记事本编辑保存至.vbs 以管理员身份运行 Set obj = createobject("wscript.shell") obj.run ("reg add HKL ...
- vue(七)--监听属性(watch)
1.watch:用来监听每一个属性的变化 2.watch这个对象里面都是函数,函数的名称是data中的属性名称,watch中的函数不需要调用 3.当属性发生改变那么就会触发watch函数,每个函数都会 ...
- 最新2019Pycharm安装教程,亲测!最新2019pycharm安装!如何安装Pycharm2019版本!如何安装2019Pycharm永久教程!2019Pycharm永久安装!
Pycharm安装 在这插一个小话题哈,Pycharm只是一个编译器,并不能代替Python,如果要使用Python,还是需要安装Python的哈 1.Pycharm下载安装 Pycharm下载 Py ...
- JS变量+作用域
基本类型-栈内存 保存基本类型的变量保存的是值本身 引用类型-堆内存 保存引用类型的变量保存的并不是对象本身,而是一个指向该对象的引用地址 引用类型判断对象是否相等 function equalObj ...