logstash入门篇之安装启动

logstash入门篇之安装启动

1 简介

        Logstash是一个功能强大的ETL(数据抽取/转换/存储)工具,常用来做数据处理和迁移。提供了大量插件,帮助解析、转换来自各种来源的数据。
       Logstash是elastic stack 家族中一员。

2 下载和安装

下载

下载推荐到elastic中文社区,里面有elastic系列里所有的开源产品下载链接,地址如下:

https://elasticsearch.cn/download/

选择和elasticsearch对应的版本下载。本教程选择6.8.0版本的tar包下载,安装在CentOS 7 (64 位)系统下。

安装

使用ssh工具将安装包上传到服务器任一目录,本教程上传至目录/home/hubuwch/

解压 安装包:

 tar zxvf logstash-6.8.0.tar.gz

解压完成,使用简单参数验证安装成功与否,参见3节启动实例

3 启动

logstash启动有两种方式:命令行指定参数和配置文件启动

  • 命令行指定参数启动

    cd ./logstash-6.8.0
    
    bin/logstash -e 'input{stdin{}} output{stdout{}}'
    
其中,-e 后面参数表示以标准的控制台输入输出流方式启动
  • 配置文件启动

    在logstash安装目录下新建myconf.conf配置文件,编辑如下内容:

       input{
         stdin{}       //控制台输入流插件
       }
       output{
         stdout{}      //控制台输出流插件
       }
    

    配置文件启动命令如下:

    bin/logstash -f myconf.conf
    

    以上两种方式启动后,在控制台输入字符 hello Logstash!,可以看到如下的输出:
    logstash入门篇之安装启动_第1张图片

4 后台启动

logstash启动后,若是关闭shell窗口,则程序就会中断,为了让程序在后台长驻,不受关闭shell窗口影响,可以使用如下后台启动命令:

 nohup bin/logstash -f first-pipeline.conf &

启动后,日志会默认输出到nohup.out文件中,可以使用如下命令查看:

tail -300f nohup.out

5 原理

3节中启动的实例,我们可以把它看做是一个管道(logstash pipeline),如下图:
logstash入门篇之安装启动_第2张图片
Logstash是以管道方式运行的,一个Logstash实例可以启动多个管道

每个管道包含输入(input),输出(output),过滤器(filter)三个部分,这种结构同时也体现在.conf配置文件上,如下:

#this is a comment. You should use comments to describe
# parts of your configuration.
# 输入插件配置处
input {
  ...
}

# 过滤器插件配置处
filter {
  ...
}
# 输出插件配置处
output {
  ...
}

在实际使用中,需要根据实际场景去选择不同的插件配置到配置文件中。

5 自动装载配置文件

在使用之前,先把Logstash自动加载配置文件功能打开,以便每次修改完conf配置文件,自动读取配置.

 cd ./logstash-6.8.0/conf
 vi logstash.yml

找到 #config.reload.automatic: false 配置,将false 改为 true,自动读取时间采用默认值3s,如下:

# Periodically check if the configuration has changed and reload the pipeline
# This can also be triggered manually through the SIGHUP signal
#
 config.reload.automatic: true
#
# How often to check if the pipeline configuration has changed (in seconds)
#
# config.reload.interval: 3s

6 结语

        对于知识学习,只有写下来了才算是真正的输出,IT行业是个重视沉淀的行业,怎么算是沉淀,记录下来就是一种沉淀方式,也许当下不一定用到,但若干年后再拾取,能看到当前记录,也会事半功倍,同时也希望能帮到后来者。这就是我写博客的初衷,帮己也帮人。关于Elastic stack系列技术知识,后续会不间断更新,请持续关注。

7 参考文章

6.8版本官方文档

你可能感兴趣的:(Logstash,elasticsearch)