supervisor安装与监控nginx
安装参考:
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的更多相关文章
- supervisor安装以及监控管理rabbitmq消费者进程
简介:Supervisor是用Python开发的一套通用的进程管理程序,能将一个普通的命令行进程变为后台daemon,并监控进程状态,异常退出时能自动重启. 1.安装 apt-get install ...
- CentOS6.9安装Filebeat监控Nginx的访问日志发送到Kafka
一.下载地址: 官方:https://www.elastic.co/cn/downloads/beats/filebeat 百度云盘:https://pan.baidu.com/s/1dvhqb0 二 ...
- 分布式监控系统Zabbix-3.0.3-完整安装记录(3)-监控nginx,php,memcache,Low-level discovery磁盘IO
前段时间在公司IDC服务器上部署了zabbix3.0.3监控系统,除了自带的内存/带宽/CPU负载等系统资源监控模板以及mysql监控模板外,接下来对诸如nginx.php.memcache.磁盘IO ...
- supervisor安装部署文档和管理实例
Supervisord是用Python实现的一款非常实用的进程管理工具,类似于monit(关于monit见我的博客:用monit监控系统关键进程),monit和supervisord的一个比较大的差异 ...
- 让keepalived监控NginX的状态
经过前面的配置,如果主服务器的keepalived停止服务,从服务器会自动接管VIP对外服务:一旦主服务器的keepalived恢复,会重新接管VIP. 但这并不是我们需要的,我们需要的是当NginX ...
- ngxtop:在命令行实时监控 Nginx 的神器
Nginx网站服务器在生产环境中运行的时候需要进行实时监控.实际上,诸如Nagios, Zabbix, Munin 的网络监控软件是支持 Nginx 监控的. 如果你不需要以上软件提供的综合性报告或者 ...
- 【转】supervisor安装与配置
1.安装 宿主机环境:(Centos7) 宿主机环境 #yum install python-setuptools yum install python-setuptools#easy_install ...
- lnmp安装--php与nginx结合
软件环境: linux:centos5. nginx:.tar.gz php:.tar.gz lnmp与lamp的区别? lnmp(linux+nginx+mysql+php)的提法相对于lamp(l ...
- 使用zabbix监控nginx
在zabbix agentd客户端上,查看nginx是否加载了--with-http_stub_status_module.因为zabbix监控nginx是根据 nginx的Stub Status模块 ...
- zabbix监控nginx连接状态(转)
zabbix监控nginx zabbix可以监控nginx的状态,关于一个服务的状态可以查看服务本身的状态(版本号.是否开启),还应该关注服务能力(例如以nginx的负载效果:连接数.请求数和句柄数) ...
随机推荐
- kibana访问多个 Elasticsearch 节点间的负载均衡
如果 Elasticsearch 集群有多个节点,分发 Kibana 节点之间请求的最简单的方法就是在 Kibana 机器上运行一个 Elasticsearch 协调(Coordinating onl ...
- 重要参考文档---MySQL 8.0.29 使用yum方式安装,开启navicat远程连接,搭建主从,读写分离(需要使用到ProxySQL,此文不讲述这个)
yum方式安装 echo "删除系统默认或之前可能安装的其他版本的 mysql" for i in $(rpm -qa|grep mysql);do rpm -e $i --nod ...
- MySQL5.7之在线DDL不会锁表
MySQL5.7在线修改varchar字段不在锁表,测试过程如下: mysql> select version(); +------------+ | version() | +-------- ...
- 第六章:Django 综合篇 - 3:使用MySQL数据库
在实际生产环境,Django是不可能使用SQLite这种轻量级的基于文件的数据库作为生产数据库.一般较多的会选择MySQL. 下面介绍一下如何在Django中使用MySQL数据库. 一.安装MySQL ...
- 多字段特性及配置自定义Analyzer
PUT logs/_doc/1 {"level":"DEBUG"} GET /logs/_mapping POST _analyze { "token ...
- Fluentd部署:如何监控Fluentd
监控的目的是确保日志采集能稳定高效运行. Fluentd内部运行指标 Fluentd内部保存着一些运行指标,这些指标可通过REST api直接获取,也支持通过第三方工具,如Prometheus,来访问 ...
- 2流高手速成记(之三):SpringBoot整合mybatis/mybatis-plus实现数据持久化
接上回 上一篇我们简单介绍了基于SpringBoot实现简单的Web开发,本节来看Web开发中必不可少的内容--数据持久化 先看项目结构: 1. 创建数据表 打开mysql,打开数据库 test (没 ...
- 改善C#程序的方法-2 使用TryParse
一 使用TryParse,而不是Parse 除string外的所有基元类型,都有两个将string类型转型为其本身类型的方法:Parse 和 TryParse. 以double类型为例,这两个方法最简 ...
- 大数据常用的Linux命令
Linux文件系统基础知识 要想熟练使用命令,就先要熟练掌握Linux文件系统基础知识: 三个路径 当前路径:也叫当前工作目录,就是当前状态下用户所处的位置 相对路径:相对于当前工作目录开始的路径,会 ...
- C# 基础 之:Task 用法
参考来源:https://www.cnblogs.com/zhaoshujie/p/11082753.html 他介绍的可以说是非常详细,附带Demo例子讲解 1.入门 Task看起来像一个Threa ...