justin 齐齐
生命在于折腾

5.Logstash日志收集实践

在学习Logstash之前,我们需要先了解以下几个基本概念: 
logstash收集日志基本流程: input-->codec-->filter-->codec-->output 
1.input:从哪里收集日志。 
2.filter:发出去前进行过滤 
3.output:输出至Elasticsearch或Redis消息队列 
4.codec:输出至前台,方便边实践边测试 
5.数据量不大日志按照月来进行收集

 
  1. #通常使用rubydebug方式前台输出展示以及测试
  2. [root@linux-node3 ~]# /opt/logstash/bin/logstash -e 'input { stdin {} } output { stdout{codec => rubydebug} }'
  3. hello #输入
  4. {
  5. "message" => "hello",
  6. "@version" => "1",
  7. "@timestamp" => "2016-09-01T08:16:36.354Z",
  8. "host" => "linux-node3.com"
  9. }
 

6.Logstach实践案例

以下所有收集的日志写入node4的Redis,最后node4通过logstash写入ES,具体架构图如下: 
如果数据量不大需要直接写入elasticsearch,可将案例Redis改为elasticsearch即可。在后面我也会放出实际的案例。 

es收集架构

 

es收集架构

 

 

6Logstash安装

Logstash需要Java环境,所以直接使用yum安装。

1.安装java

 
  1. [root@linux-node1 ~]# yum install java
  2. [root@linux-node1 ~]# java -version
  3. openjdk version "1.8.0_101"
  4. OpenJDK Runtime Environment (build 1.8.0_101-b13)
  5. OpenJDK 64-Bit Server VM (build 25.101-b13, mixed mode)

2.下载并安装GPG key

 
  1. [root@linux-node1 ~]# rpm --import https://packages.elastic.co/GPG-KEY-elasticsearch

3.添加logstash的yum仓库

 
  1. #添加logstash的yum仓库
  2. [root@linux-node1 ~]# cat /etc/yum.repos.d/logstash.repo
  3. [logstash-2.3]
  4. name=Logstash repository for 2.3.x packages
  5. baseurl=https://packages.elastic.co/logstash/2.3/centos
  6. gpgcheck=1
  7. gpgkey=https://packages.elastic.co/GPG-KEY-elasticsearch
  8. enabled=1

4.安装Logstash

 
  1. [root@linux-node1 ~]# yum install -y logstash

声明:如果需要前台查看测试结果,在output加入如下:

 
    1. stdout {
    2. codec => "rubydebug"
    3. }
    4. #执行命令:
    5. /opt/logstash/bin/logstash -f /etc/logstash/conf.d/syslog.conf
    6. #执行完毕,将文件放置/etc/logstash/conf.d目录,logstash会自动读取相关配置文件
    7. 如果无法读取,可将/etc/init.d/logstashUSERGROUP修改为root
posted on 2017-12-09 16:36  justin01  阅读(702)  评论(0编辑  收藏  举报