我是靠谱客的博主 醉熏皮皮虾,最近开发中收集的这篇文章主要介绍ELK之logstash长久运行,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

今天介绍一下关于logstash的启动方式,以前说的都是使用/usr/local/logstash -f /etc/logstash.conf方式启动,这样就有一个麻烦,当你关闭终端,或者ctrl+c时logstash就会退出。下面介绍几种长期运行的方式。


1、service方式

使用rpm方式安装的,都可以/etc/init.d/logstash启动,编译安装的就需要你自己写启动脚本


2、nohup方式

这是最简单的,对于新手来说

nohup /usr/local/logstash/bin/logstash -f /etc/logstash/logstash.conf -w 10 -l /var/log/logstash/logstash.log &


3、优雅的 SCREEN 方式

这里使用了screen的一款软件,运行screen,是一个和shell一模一样的终端,启动之后使用ctrl+a+d退出来,进程仍然在运行。

创建独立的 screen 命令如下:

screen -dmS elk

接管连入创建的 elk 命令如下:

screen -r elk

启动程序:/usr/local/logstash/bin/logstash -f /etc/logstash/logstash.conf

ctrl+a+d退出,ps看一下,logstash仍然在运行


4、最推荐的 daemontools 方式

daemontools是一个软件名称,不过配置略复杂。所以这里我是使用python实现的supervisord方式:

首先安装:

yum install python-setuptools

easy_install supervisor

生成配置文件(supervisord.conf):

echo_supervisord_conf > /etc/supervisord.conf

在supervisord.conf最后增加:

[program:elkpro_1]

environment=LS_HEAP_SIZE=5000m

directory=/usr/local/logstash

command=/usr/local/logstash/bin/logstash -f /etc/logstash/conf.d/pro1.conf -w 10 -l /var/log/logstash/pro1.log

注意:经过测试,这里logstash配置文件必须在conf.d/目录下。

然后启动 supervisord -c /etc/supervisord.conf 即可。

解释:

logstash 会以 supervisord 子进程的身份运行,你还可以使用supervisorctl命令,单独控制一系列 logstash 子进程中某一个进程的启停操作:

supervisorctl start elkpro_1(支持start、stop、restart)

这里还有一点要注意,当你修改了supervisord.conf后,需要使用supervisorctl reload重新加载配置文件。






转载于:https://blog.51cto.com/syklinux/1866750

最后

以上就是醉熏皮皮虾为你收集整理的ELK之logstash长久运行的全部内容,希望文章能够帮你解决ELK之logstash长久运行所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(32)

评论列表共有 0 条评论

立即
投稿
返回
顶部