mysql用supervisor管理_Supervisor使用详解
一、supervisor简介
Supervisor是用Python开发的一套通用的进程管理程序,能将一个普通的命令行进程变为后台daemon,并监控进程状态,异常退出时能自动重启。它是通过fork/exec的方式把这些被管理的进程当作supervisor的子进程来启动,这样只要在supervisor的配置文件中,把要管理的进程的可执行文件的路径写进去即可。也实现当子进程挂掉的时候,父进程可以准确获取子进程挂掉的信息的,可以选择是否自己启动和报警。supervisor还提供了一个功能,可以为supervisord或者每个子进程,设置一个非root的user,这个user就可以管理它对应的进程。
注:本文以centos7为例。
二、supervisor安装
配置好yum源后,可以直接安装
Debian/Ubuntu可通过apt安装
pip安装
easy_install安装
三、supervisor使用
supervisor配置文件:/etc/supervisor/supervisord.conf
注:supervisor的配置文件默认是不全的,不过在大部分默认的情况下,上面说的基本功能已经满足。
子进程配置文件路径:/etc/supervisord.d/
注:默认子进程配置文件为ini格式,可在supervisor主配置文件中修改。
四、配置文件说明
supervisor.conf配置文件说明:
子进程配置文件说明:
给需要管理的子进程(程序)编写一个配置文件,放在/etc/supervisor.d/目录下,以.ini作为扩展名(每个进程的配置文件都可以单独分拆也可以把相关的脚本放一起)。如任意定义一个和脚本相关的项目名称的选项组(/etc/supervisord.d/test.conf):
子进程配置示例:
五、supervisor命令说明
常用命令
注:把es换成all可以管理配置中的所有进程。直接输入supervisorctl进入supervisorctl的shell交互界面,此时上面的命令不带supervisorctl可直接使用。
注意事项
使用supervisor进程管理命令之前先启动supervisord,否则程序报错。
使用命令supervisord -c /etc/supervisor/supervisord.conf启动。
若是centos7:
常见问题
unix:///var/run/supervisor.sock no such file
问题描述:安装好supervisor没有开启服务直接使用supervisorctl报的错
解决办法:supervisord -c /etc/supervisor/supervisord.conf
command中指定的进程已经起来,但supervisor还不断重启
问题描述:command中启动方式为后台启动,导致识别不到pid,然后不断重启,这里使用的是elasticsearch,command指定的是$path/bin/elasticsearch -d
解决办法:supervisor无法检测后台启动进程的pid,而supervisor本身就是后台启动守护进程,因此不用担心这个
启动了多个supervisord服务,导致无法正常关闭服务
问题描述:在运行supervisord -c /etc/supervisor/supervisord.conf之前,直接运行过supervisord -c /etc/supervisord.d/xx.conf导致有些进程被多个superviord管理,无法正常关闭进程。
解决办法:使用ps -fe | grep supervisord查看所有启动过的supervisord服务,kill相关的进程。
mysql用supervisor管理_Supervisor使用详解相关推荐
- python supervisor 日志_Supervisor使用详解
supervisor配置文件 ; Sample supervisor config file. [unix_http_server] file=/var/run/supervisor/supervis ...
- MySQL的用户密码过期功能详解
MySQL的用户密码过期功能详解 作者:chszs,未经博主允许不得转载.经许可的转载需注明作者和博客主页:http://blog.csdn.net/chszs 先说明两个术语. Payment Ca ...
- ElasticSearch最全详细使用教程:入门、索引管理、映射详解、索引别名、分词器、文档管理、路由、搜索详解...
墨墨导读:之前我们分享了ElasticSearch最全详细使用教程:入门.索引管理.映射详解,本文详细介绍ElasticSearch的索引别名.分词器.文档管理.路由.搜索详解. 一.索引别名 1. ...
- ElasticSearch最全详细使用教程:入门、索引管理、映射详解
墨墨导读:本文介绍了ElasticSearch的必备知识:从入门.索引管理到映射详解. 一.快速入门 1. 查看集群的健康状况http://localhost:9200/_cat http://loc ...
- pdo mysql 绑定查询_php mysql PDO 查询操作的实例详解
php mysql PDO 查询操作的实例详解 php mysql PDO 查询操作的实例详解 这篇文章主要介绍了php mysql PDO 查询操作的实例详解的相关资料,希望通过本文能帮助到大家,需 ...
- 系统批量运维管理器Fabric详解
系统批量运维管理器Fabric详解 Fabrici 是基于python现实的SSH命令行工具,简化了SSH的应用程序部署及系统管理任务,它提供了系统基础的操作组件,可以实现本地或远程shell命令,包 ...
- mysql启动参数(/etc/my.cnf)详解汇总
mysql启动参数(/etc/my.cnf)详解汇总 MYSQL–my.cnf配置中文详解 basedir = path 使用给定目录作为根目录(安装目录). character-sets-dir = ...
- mysql完全备份 二进制日志,MySQL二进制日志备份和恢复详解
原文链接:http://www.showerlee.com/archives/681 ****经实践,该教程ok,特在此分享**** 基本概念 定义: 二进制日志包含了所有更新了数据或者已经潜在更新了 ...
- android json mysql_Android通过json向MySQL中读写数据的方法详解【读取篇】
本文实例讲述了Android通过json向MySQL中读取数据的方法.分享给大家供大家参考,具体如下: 首先 要定义几个解析json的方法parseJsonMulti,代码如下: private vo ...
最新文章
- java spring 单例_spring怎么实现单例模式?
- UVA - 11584 Partitioning by Palindromes(划分成回文串)(dp)
- 工业级以太网交换机与普通商用交换机相比,在性能上有哪些优势?
- Java线程状态Jstack线程状态BLOCKED/TIMED_WAITING/WAITING解释
- flex 左右布局_面试必考点:前端布局知识
- PHP操作MongoDB学习笔记
- loadrunner 运行脚本-Run-time Settings之Preferences设置
- IDEA常用设置及推荐插件
- JQ简单二级导航,加子导航栏
- 你先说什么事,我再决定有没有空
- matlab/simulink通...,详解MATLAB/Simulink通信系统建模与仿真
- 包包各部位名称图解_手袋各部位名称及详解
- 超声波测距传感器认知
- 移民找老张解析:美国绿卡与美国公民身份的区别
- PDG FOR INDIE GAMEDEV
- 删除Excel单元格中空行
- 从零开始学习STM32(一)—— 新建工程模板
- 【老狼推荐】Instruments 用户指南
- VC2008 不能将参数 从“CString”转换为“const wchar_t *” 问题
- 利用阿里云短信验证码登录
热门文章
- @JsonSerialize 与 @JsonDeserialize 使用
- 解决:Cannot read property ‘component‘ of undefined ( 即 vue-router 0.x 转化为 2.x)
- 解决: Cannot find module ‘webpack-cli/bin/config-yargs‘、Error: Cannot find module ‘webpack-cli‘
- 分布式开放 消息系统 (RocketMQ) 的原理与实践
- 【案例】图片无缝轮播效果
- 利用redis实现分布式锁:加锁与解锁
- IIS服务器SSL证书安装
- AOP原理解析及Castle、Autofac、Unity框架使用
- Principle of Computing (Python)学习笔记(7) DFS Search + Tic Tac Toe use MiniMax Stratedy
- 不使用Ajax,如何实现表单提交不刷新页面