logstash使用supervisord

  关于supervisord:

supervisor是用Python开发的一个client/server服务,是Linux/Unix系统下的一个进程管理工具,不支持Windows系统。它可以很方便的监听、启动、停止、重启一个或多个进程。用Supervisor管理的进程,当一个进程意外被杀死,supervisort监听到进程死后,会自动将它重新拉起。

一:安装(环境为centos7.4)

安装python包管理工具

yum install python-setuptools

安装supervisor

easy_install supervisor

(supervisor安装完成后会生成三个执行程序:supervisortd(supervisor的守护进程服务)、supervisorctl(控制命令)、echo_supervisord_conf(生成初始配置文件程序)

创建配置文件目录

mkdir /etc/supervisor

生成初始配置文件

echo_supervisord_conf > /etc/supervisord.conf

二:编辑配置文件

vim /etc/supervisord.conf   在配置文件末尾加入

[program:logstash]
environment=LS_HEAP_SIZE=5000m
directory=/usr/share/logstash
command=/usr/share/logstash/bin/logstash -f /usr/share/logstash/config/conf.d/test.conf -w 10 -l /var/log/logstash/pro1.log

 注意:这里logstash配置文件必须在conf.d/目录下,修改了supervisord.conf后,需要使用supervisorctl reload重新加载配置文件。

下载supervisor启动脚本

wget -O  /usr/lib/systemd/system/supervisord.service  https://github.com/Supervisor/initscripts/raw/master/centos-systemd-etcs

systemctl enable supervisord

三:启动

systemctl  start supervisord

这种启动方式读取文件默认为/etc/supervisord.conf,为了防止以后supervisord.conf 配置过多,我们打开include选项额外配置logstash额外的启动文件。

[include]
files = /etc/supervisor/*.ini

 vim /etc/supervisor/logstash.ini

[program:logstash]
environment=LS_HEAP_SIZE=5000m
directory=/usr/share/logstash
command=/usr/share/logstash/bin/logstash -f /usr/share/logstash/config/conf.d/test.conf -w 10 -l /var/log/logstash/pro1.log

 supervisorctl reload

logstash设置监听的是5044端口,这里已经可以看到启动成功

四:supervisor相关命令

1,启动/停止supervisord管理的所有进程 :supervisorctl start/stop all
2,启动/停止supervisord管理的指定进程 :supervisorctl start/stop program-name
3,重启所有进程或所有进程:supervisorctl restart all
4,查看supervisord当前管理的所有进程的状态:supervisorctl status

 参考:https://blog.csdn.net/xyang81/article/details/51555473

原文地址:https://www.cnblogs.com/shiji888/p/11133389.html