ELK——Logstash部署及介绍

Logstash简介

官网地址:https://www.elastic.co/products/logstash

Logstash is an open source data collection engine with real-time pipelining capabilities。简单来说logstash就是一根具备实时数据传输能力的管道,负责将数据信息从管道的输入端传输到管道的输出端;与此同时这根管道还可以让你根据自己的需求在中间加上滤网,Logstash提供里很多功能强大的滤网以满足你的各种应用场景,Logstash常用于日志关系系统中做日志采集设备;

Logstash基于java开发的开源项目,是一个数据收集处理转发系统,Logstash的事件(logstash将数据流中等每一条数据称之为一个event)处理流水线有三个主要角色完成:inputs –> filters –> outputs:

inpust:必须,负责产生事件(Inputs generate events),常用:File、syslog、redis、beats(如:Filebeats)
filters:可选,负责数据处理与转换(filters modify them),常用:grok、mutate、drop、clone、geoip
outpus:必须,负责数据输出(outputs ship them elsewhere),常用:elasticsearch、file、graphite、statsd

其中inputs和outputs支持codecs(coder&decoder)在1.3.0 版之前,logstash 只支持纯文本形式输入,然后以过滤器处理它。但现在,我们可以在输入 期处理不同类型的数据,所以完整的数据流程应该是:input | decode | filter | encode | output;codec 的引入,使得 logstash 可以更好更方便的与其他有自定义数据格式的运维产品共存,比如:graphite、fluent、netflow、collectd,以及使用 msgpack、json、edn 等通用数据格式的其他产品等

Logstash最常用于ELK(elasticsearch + logstash + kibane)中作为日志收集器使用

Logstash安装指南

Logstash安装环境:

支持系统 centos6.10
Logstash使用版本 Logstash-7.2.0
java使用版本 1.8.0+

1.   java安装环境可参考:https://www.cnblogs.com/Huang-Niu/p/11250268.html(ELK——ElasticSearch部署及介绍

2.   Logstash安装(二进制包)

2.1 将Logstash包上传至服务器,解压

tar xf logstash-7.2.0.tar.gz -C /usr/local

2.2 修改配置文件(需要新写一个配置文件,因为对接的是filebeat,所以不单独写Logstash的配置文件)

vim /usr/local/logstash-7.2.0/confignginxlog.conf

input {
  beats {
    port => 5044
  }
}

output {
  elasticsearch {
    hosts => "192.168.1.130:9200"
    index => "nginx-accesslog-%{+YYYY.MM.dd}"
  }
}

2.3 收集增加redis配置文件修改

input {
  redis {
    host => "192.168.1.128"
    port => 6379
    data_type => "list"
    key => "test"
  }
}

output {
  elasticsearch {
    hosts => "192.168.1.130:9200"
    index => "nginx-accesslog-%{+YYYY.MM.dd}"
  }
}

2.4 配置文件修改完成后,指定配置文件进行启动(可直接使用root启动)

/usr/local/logstash-7.2.0/bin/logstash -f /usr/local/logstash-7.2.0/config/nginxlog.conf
/usr/local/logstash-7.2.0/bin/logstash -f /usr/local/logstash-7.2.0/config/nginxlog.conf > /dev/null 2>&1 &     #第一条命令无报错结束后,在执行此命令

2.5 若出现下图报错,为配置文件缩进问题,将从上面复制的配置文件首行缩进在server中重新编写即可

原文地址:https://www.cnblogs.com/Huang-Niu/p/9996777.html