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重新加载配置文件。



本文转自 sykmiao 51CTO博客,原文链接:http://blog.51cto.com/syklinux/1866750,如需转载请自行联系原作者

相关文章
|
2月前
|
消息中间件 缓存 Java
ELK技术栈 - logstash学习笔记(九)
ELK技术栈 - logstash学习笔记(九)
34 0
|
6月前
|
存储 NoSQL Redis
容器部署日志分析平台ELK7.10.1(Elasisearch+Filebeat+Redis+Logstash+Kibana)
容器部署日志分析平台ELK7.10.1(Elasisearch+Filebeat+Redis+Logstash+Kibana)
131 0
|
2月前
|
存储 监控 NoSQL
ELK技术栈 - logstash学习笔记(八)
ELK技术栈 - logstash学习笔记(八)
38 0
|
2月前
|
存储 编解码 自然语言处理
ELK技术栈 - logstash学习笔记(七)
ELK技术栈 - logstash学习笔记(七)
31 0
|
2月前
|
JSON 编解码 运维
ELK技术栈 - logstash学习笔记(六)
ELK技术栈 - logstash学习笔记(六)
42 0
|
2月前
|
编解码 Unix 应用服务中间件
ELK技术栈 - logstash学习笔记(五)
ELK技术栈 - logstash学习笔记(五)
29 0
|
2月前
|
编解码 JSON Java
ELK技术栈 - logstash学习笔记(四)
ELK技术栈 - logstash学习笔记(四)
35 0
|
2月前
|
存储 JSON NoSQL
ELK技术栈 - logstash学习笔记(三)
ELK技术栈 - logstash学习笔记(三)
42 0
|
2月前
|
消息中间件 监控 网络协议
ELK技术栈 - logstash学习笔记(二)
ELK技术栈 - logstash学习笔记(二)
43 0
|
2月前
|
运维 Java Linux
ELK技术栈 - logstash学习笔记(一)
ELK技术栈 - logstash学习笔记(一)
63 0