安装参考:
https://www.cnblogs.com/zgcblog/p/10192077.html

https://www.cnblogs.com/yangbo981205/p/14928897.html

用pip2快速安装:(如果安装失败,先更新一下yum:yum -y update)

yum install -y python2 &&pip2 install supervisor

安装后配置:

mkdir /usr/supervisor ;sudo chmod -R 777 /usr/supervisor ;echo_supervisord_conf > /usr/supervisor/supervisord.conf ;mkdir /usr/supervisor/supervisord.d ;mkdir /usr/supervisor/logs

执行:vim /usr/supervisor/supervisord.conf
这里把所有的/tmp路径改掉,要不重启后容易被linux自动清掉。
/tmp/supervisor.sock 改成/var/run/supervisor.sock(有两个位置需要改)
/tmp/supervisord.log 改成/var/log/supervisor.log
/tmp/supervisord.pid 改成 /var/run/supervisor.pid

配置 vim /usr/supervisor/supervisord.conf

最后一句话改为:

[include]
files = /usr/supervisor/supervisord.d/*.conf

配置文件 vim /usr/supervisor/supervisord.d/nginx.conf

[program:nginx] ; 管理的子程序名字,要和项目有关联,不能乱写
command = /usr/local/nginx/sbin/nginx -g 'daemon off;'
#让监控的目标nginx在前台运行

priority=1 ; 数字越高,优先级越高(对不同进程而言)
numprocs=1 ; 启动几个进程
autostart=true ; 随着supervisord的启动而启动
autorestart=true ; 自动重启
startretries=10 ; 启动失败时的最多重试次数
exitcodes=0 ; 正常退出代码
stopsignal=KILL ; 用来杀死进程的信号
stopwaitsecs=10 ; 发送SIGKILL前的等待时间
redirect_stderr=true ; 重定向stderr到stdout
stopasgroup=true ; 重要的设置,一起管理子进程
stdout_logfile_maxbytes=20MB ; 日志文件大小限制
stdout_logfile_backups=10 ; 日志文件备份数量
stdout_logfile =/usr/supervisor/logs/nginx-supervisor.log ;错误日志输出位置,目录要存在

说明:“/usr/local/nginx/sbin/nginx”为nginx启动路径。

【supervisor常用指令】

[全局指令]

supervisorctl status #查看所有进程运行状况

supervisorctl reread #重读配置

supervisorctl update #更新配置

supervisorctl restart nginx #关闭并重启nginx

supervisorctl reload #关闭并重新加载开启所有配置

supervisorctl stop all #关闭所有监控的服务程序

supervisorctl start all #开启所有监控的服务程序

[控制台]
#进入控制台
supervisorctl

#重新读取配置
reread

#更新配置
update

#重新启动配置中的所有程序
reload

#开始nginx
start nginx

#结束nginx
stop nginx

#开始所有配置进程
start all

#结束所有配置进程
stop all

#查看状态
status

#退出控制台
exit

[长指令:/usr/supervisor/supervisord.conf为配置的位置]

/usr/bin/supervisord -c /usr/supervisor/supervisord.conf   ——启动Supervisor进程

# 父进程起来之后,就用【supervisorctl】这个工具管理子进程
/usr/bin/supervisorctl -c /usr/supervisor/supervisord.conf status   ——查看状态

/usr/bin/supervisorctl -c /usr/supervisor/supervisord.conf reload    ——重新载入配置文件

/usr/bin/supervisorctl -c /usr/supervisor/supervisord.conf update   —— # 每次修改配置后,建议使用此命令,不会全部重启

supervisorctl -c /usr/supervisor/supervisord.conf start [all]|[x]   ——启动所有/指定的程序进程

/usr/bin/supervisorctl -c /usr/supervisor/supervisord.conf stop [all]|[x]   ——关闭所有/指定的程序进程

查看supervisor运行状态

ps -A | grep supervisor

查看所有进程运行状况
supervisorctl status

其它相关教程:

https://blog.csdn.net/qq_28885149/article/details/79364685

https://www.cnblogs.com/eleven24/p/9026139.html

开机启动设置:https://www.cnblogs.com/94cool/p/5952219.html

vim /usr/lib/systemd/system/supervisord.service

输入以下内容(注意路径修改):

[Unit]
Description=Supervisor daemon

[Service]
Type=forking
ExecStart=/usr/bin/supervisord -c /usr/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 enable supervisord

检查生效情况:systemctl is-enabled supervisord

其他说明:配置“inet_http_server”web管理界面后如果发现无法访问?

1、配置改为“port=*:9001”,然后更新一下;

2、检查服务器防火墙是否开放了9001端口,也可以关闭防火墙;

3、检查阿里云或者其他服务器运营商管理后台配置,在访问规则里面开放9001端口,然后再试就可以了。

supervisor安装与监控nginx的更多相关文章

  1. supervisor安装以及监控管理rabbitmq消费者进程

    简介:Supervisor是用Python开发的一套通用的进程管理程序,能将一个普通的命令行进程变为后台daemon,并监控进程状态,异常退出时能自动重启. 1.安装 apt-get install ...

  2. CentOS6.9安装Filebeat监控Nginx的访问日志发送到Kafka

    一.下载地址: 官方:https://www.elastic.co/cn/downloads/beats/filebeat 百度云盘:https://pan.baidu.com/s/1dvhqb0 二 ...

  3. 分布式监控系统Zabbix-3.0.3-完整安装记录(3)-监控nginx,php,memcache,Low-level discovery磁盘IO

    前段时间在公司IDC服务器上部署了zabbix3.0.3监控系统,除了自带的内存/带宽/CPU负载等系统资源监控模板以及mysql监控模板外,接下来对诸如nginx.php.memcache.磁盘IO ...

  4. supervisor安装部署文档和管理实例

    Supervisord是用Python实现的一款非常实用的进程管理工具,类似于monit(关于monit见我的博客:用monit监控系统关键进程),monit和supervisord的一个比较大的差异 ...

  5. 让keepalived监控NginX的状态

    经过前面的配置,如果主服务器的keepalived停止服务,从服务器会自动接管VIP对外服务:一旦主服务器的keepalived恢复,会重新接管VIP. 但这并不是我们需要的,我们需要的是当NginX ...

  6. ngxtop:在命令行实时监控 Nginx 的神器

    Nginx网站服务器在生产环境中运行的时候需要进行实时监控.实际上,诸如Nagios, Zabbix, Munin 的网络监控软件是支持 Nginx 监控的. 如果你不需要以上软件提供的综合性报告或者 ...

  7. 【转】supervisor安装与配置

    1.安装 宿主机环境:(Centos7) 宿主机环境 #yum install python-setuptools yum install python-setuptools#easy_install ...

  8. lnmp安装--php与nginx结合

    软件环境: linux:centos5. nginx:.tar.gz php:.tar.gz lnmp与lamp的区别? lnmp(linux+nginx+mysql+php)的提法相对于lamp(l ...

  9. 使用zabbix监控nginx

    在zabbix agentd客户端上,查看nginx是否加载了--with-http_stub_status_module.因为zabbix监控nginx是根据 nginx的Stub Status模块 ...

  10. zabbix监控nginx连接状态(转)

    zabbix监控nginx zabbix可以监控nginx的状态,关于一个服务的状态可以查看服务本身的状态(版本号.是否开启),还应该关注服务能力(例如以nginx的负载效果:连接数.请求数和句柄数) ...

随机推荐

  1. kibana访问多个 Elasticsearch 节点间的负载均衡

    如果 Elasticsearch 集群有多个节点,分发 Kibana 节点之间请求的最简单的方法就是在 Kibana 机器上运行一个 Elasticsearch 协调(Coordinating onl ...

  2. 重要参考文档---MySQL 8.0.29 使用yum方式安装,开启navicat远程连接,搭建主从,读写分离(需要使用到ProxySQL,此文不讲述这个)

    yum方式安装 echo "删除系统默认或之前可能安装的其他版本的 mysql" for i in $(rpm -qa|grep mysql);do rpm -e $i --nod ...

  3. MySQL5.7之在线DDL不会锁表

    MySQL5.7在线修改varchar字段不在锁表,测试过程如下: mysql> select version(); +------------+ | version() | +-------- ...

  4. 第六章:Django 综合篇 - 3:使用MySQL数据库

    在实际生产环境,Django是不可能使用SQLite这种轻量级的基于文件的数据库作为生产数据库.一般较多的会选择MySQL. 下面介绍一下如何在Django中使用MySQL数据库. 一.安装MySQL ...

  5. 多字段特性及配置自定义Analyzer

    PUT logs/_doc/1 {"level":"DEBUG"} GET /logs/_mapping POST _analyze { "token ...

  6. Fluentd部署:如何监控Fluentd

    监控的目的是确保日志采集能稳定高效运行. Fluentd内部运行指标 Fluentd内部保存着一些运行指标,这些指标可通过REST api直接获取,也支持通过第三方工具,如Prometheus,来访问 ...

  7. 2流高手速成记(之三):SpringBoot整合mybatis/mybatis-plus实现数据持久化

    接上回 上一篇我们简单介绍了基于SpringBoot实现简单的Web开发,本节来看Web开发中必不可少的内容--数据持久化 先看项目结构: 1. 创建数据表 打开mysql,打开数据库 test (没 ...

  8. 改善C#程序的方法-2 使用TryParse

    一 使用TryParse,而不是Parse 除string外的所有基元类型,都有两个将string类型转型为其本身类型的方法:Parse 和 TryParse. 以double类型为例,这两个方法最简 ...

  9. 大数据常用的Linux命令

    Linux文件系统基础知识 要想熟练使用命令,就先要熟练掌握Linux文件系统基础知识: 三个路径 当前路径:也叫当前工作目录,就是当前状态下用户所处的位置 相对路径:相对于当前工作目录开始的路径,会 ...

  10. C# 基础 之:Task 用法

    参考来源:https://www.cnblogs.com/zhaoshujie/p/11082753.html 他介绍的可以说是非常详细,附带Demo例子讲解 1.入门 Task看起来像一个Threa ...