2017.7.21 linux下进程管理工具supervisord的安装与使用
参考来自:http://blog.haohtml.com/archives/15145
0 操作环境

1 supervisord的介绍
Supervisord是用Python实现的一款非常实用的进程管理工具。supervisord会帮你把管理的应用程序转成daemon程序,而且可以方便的通过命令开启、关闭、重启等操作,而且它管理的进程一旦崩溃会自动重启,这样就可以保证程序执行中断后的情况下有自我修复的功能。
2 supervisord的安装
2.1 执行sudo easy_install supervisor
注意:不是supervisord!没有d!

2.2 elkuser is not in the sudoers file. This incident will be reported
执行上条命令的时候,可能会报错误:elkuser is not in the sudoers file. This incident will be reported。原因是:用户xxx没有被加到sudo的配置文件里。
(1)visudo
切换到root用户或者用root用户登录,否则报无权限。执行:visudo。

(2)xxx ALL=(ALL) ALL
在打开的配置文件中,找到root ALL=(ALL) ALL,在下面添加一行:elkuser ALL=(ALL) ALL ,其中elkuser是要加入的用户名称。修改后退出保存,再回到elkuser,就能执行sudo easy_install supervisord命令了。

(3)sudo easy_install supervisor
从root用户切换回elkuser,执行sudo easy_install supervisor。
2.3 supervisord和supervisorctl
supervisord一共有两个类型的命令:supervisord和supervisorctl。安装完成后,可以在/user/bin路径下找到。

3 supervisord的配置
3.1 执行echo_supervisord_conf > /etc/supervisord.conf
supervisord默认的配置文件路径为/etc/supervisord.conf。生成/etc/supervisord.conf后,编辑此示例配置文件即可。

3.2 bash:/etc/supervisord.conf : Permission denied
当报这个错误的时候,可以先将配置文件生成在别处,然后再复制在/etc/supervisord.conf中。


执行完这两条语句后:

3.3 supervisord.conf
其他的详细配置略(都采用的默认配置),这里在后面增加配置了三个program,名字分别为elasticsearch,logstash,kibana。

4 supervisord的使用
4.1 /usr/bin/supervisord -c /etc/supervisord.conf
执行完此命令,就使得配置文件生效,所有配置在conf中的program都启动了。比如:查看elasticsearch,已经成功启动。并且需要通过supervisorctl的stop命令来关闭。而关闭此登录会话,或者ctrl+c,进程也继续在执行,实现了后台执行。

4.2 supervisord的一些常用命令
Supervisord安装完成后有两个可用的命令行supervisord 和 supervisorctl,命令使用解释如下:
supervisord,初始启动Supervisord,启动、管理配置中设置的进程。 supervisorctl stop programxxx,停止某一个进程(programxxx)
supervisorctl start programxxx,启动某个进程
supervisorctl restart programxxx,重启某个进程
supervisorctl stop all,停止全部进程,注:start、restart、stop都不会载入最新的配置文件。
7 supervisorctl start all,开启全部进程。
supervisorctl reload,载入最新的配置文件,并按新的配置启动、管理所有进程。
示例:

5 遇到的问题
操作过程:
supervisorctl start all
修改logstsh的配置文件
supervisorctl stop logstash
supervisorctl start logstash
但是却始终没有获取到最新的日志信息。

后来在bin目录下重启logstash才行。


即使执行supervisorctl reload ,update等,都不行。执行在bin目录下更新配置文件。这是为什么。
2017.7.21 linux下进程管理工具supervisord的安装与使用的更多相关文章
- Linux进程管理工具 Supervisord 的安装 及 入门教程
Supervisor是一个进程管理工具,官方的说法: 用途就是有一个进程需要每时每刻不断的跑,但是这个进程又有可能由于各种原因有可能中断.当进程中断的时候我希望能自动重新启动它,此时,我就需要使用到了 ...
- Linux下批量管理工具pssh安装和使用
Linux下批量管理工具pssh安装和使用 pssh工具包 安装:yum -y install pssh pssh:在多个主机上并行地运行命令 pscp:把文件并行地复制到多个主机上 prsync:通 ...
- Linux进程管理工具Supervisor的安装配置
目录 Linux进程管理工具Supervisor的安装配置 简介 安装Python包管理工具 安装Supervisor 配置 配置文件参数说明 配置进程管理 启动supervisor 控制进程 交互终 ...
- 【转】Linux下XenServer管理工具安装
转载文章 - Linux下XenServer管理工具安装 Xen-Server 6.5 虚拟机安装Linux系统 vmware安装ubuntu12.04嵌套安装xen server(实现嵌套虚拟化) ...
- Linux 进程管理工具 supervisord 安装及使用
Supervisor是用Python实现的一款非常实用的进程管理工具 1.安装过程非常简单 安装python 安装meld3-0.6.8.tar.gz 安装supervisor-3.0a12.tar. ...
- Supervisor安装与配置(Linux/Unix进程管理工具)
原文链接:http://blog.csdn.net/xyang81/article/details/51555473 Supervisor(http://supervisord.org/)是用Pyth ...
- Supervisor(Linux/Unix进程管理工具)安装与配置
参考链接:https://blog.csdn.net/xyang81/article/details/51555473 Supervisor(http://supervisord.org/)是用Pyt ...
- linux 使用进程管理工具 supervisor
1.supervisor是使用python进行开发的运行在linux服务器上的进程管理工具 老版本的supervisor需要运行在python2环境,如果需要使用supervisor管理python3 ...
- 进程管理工具-Supervisord 使用
简介 Supervisor 是一个用 Python 写的进程管理工具,可以很方便的用来在 UNIX-like 系统(不支持 Windows)下启动.重启(自动重启程序).关闭进程(不仅仅是 Pytho ...
随机推荐
- winform中key读取修改
根据key name的名称读取value-----读取使用ConfigurationManager.AppSettings读取容易没读取到根目录中的key public string GetXml(s ...
- 双系统Ubuntu 无 启用wifi选项
安装好双系统进入ubuntu(14.04)后发现只能用有线连接,不能用wifi.网络连接里无启用wifi选项. 1.查询网卡型号,发现是BCM43132 命令: lspci | grep -i n ...
- spring in action 学习笔记二:aop的理解
一: aop的思想的来在哪里? 一个系统一般情况下由多个组件组成,而每一个组件除了干自己的本职工作以外,有时还会干一些杂活(如:日志(logging).事务管理(transaction manager ...
- 使用Asp.Net Identity 2.0 认证邮箱激活账号(附DEMO)
注:本文系作者原创,但可随意转载.若有任何疑问或错误,欢迎与原作者交流,原文地址:http://www.cnblogs.com/lyosaki88/p/aspnet-itentity-ii-email ...
- java算法(一) 直接选择排序
一.基本概念 首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置(注:要把最大最小的元素和起始的元素交换), 然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾.以 ...
- 模拟Json格式传值请求与数据接收
a.php代码: function http_post_json($url, $jsonStr) { $ch = curl_init(); curl_setopt($ch, CURLOPT_POST, ...
- python面试经典315
期待的是可以检验自己学习的成功:苦逼的是怎么又有东西没记住,但我们依然每天坚持一遍.一遍又一遍指导记住为止. 第一部分 Python基础篇(80题) 为什么学习Python? 通过什么途径学习的Pyt ...
- Html5学习进阶一 视频和音频
HTML5 规定了一种通过 video 元素来包含视频的标准方法. 视频格式 当前,video 元素支持两种视频格式: Internet Explorer Firefox 3.5 Opera 10 ...
- UVA 10803 Thunder Mountain
纠结在这句话了If it is impossible to get from some town to some other town, print "Send Kurdy" in ...
- C++ emplace_back
在C++开发过程中,我们经常会用STL的各种容器,比如vector,map,set等,这些容器极大的方便了我们的开发.在使用这些容器的过程中,我们会大量用到的操作就是插入操作,比如vector的pus ...