zoukankan      html  css  js  c++  java
  • CentOS7 logstash配置部署

    (1)logstash介绍

    Logstash是一个开源的数据收集引擎,可以水平伸缩,而且logstash是整个ELK当中拥有最多插件的一个组件,其可以接收来自不同源的数据并统一输入到指定的且可以是不同目的地。
    logstash收集日志基本流程: input-->codec-->filter-->codec-->output 
    	input:从哪里收集日志。 
    	filter:发出去前进行过滤 
    	output:输出至Elasticsearch或Redis消息队列 
    	codec:输出至前台,方便边实践边测试 
    	数据量不大日志按照月来进行收集
    ```
    #(2)安装和配置logstash
    1.安装logstash
    ```
    wget https://artifacts.elastic.co/downloads/logstash/logstash-6.0.0.rpm
    yum install -y logstash-6.0.0.rpm 
    ln -sv /usr/share/logstash/bin/logstash /bin/								//创建一个软连接,每次执行命令的时候不用在写安装路劲(默认安装在/usr/share下)
    chown -R logstash.logstash /etc/logstash/conf.d/
     ll /etc/logstash/conf.d/     												//logstash的主配置目录 
    ```
    2.logstash基本语法
    ```
    input {
            指定输入
    }
    output {
            指定输出
    }
    ```
    3.测试标准输入输出
    ```
    logstash -e 'input { stdin { } } output { stdout { } }'
    ```
    ![](https://images2018.cnblogs.com/blog/1195071/201805/1195071-20180528173113622-1012856198.png)
    4.测试标准输入输出-更详细信息
    ```
    logstash -e 'input { stdin { } } output { stdout { codec => rubydebug } }'
    ```
    ![](https://images2018.cnblogs.com/blog/1195071/201805/1195071-20180528173124967-1292362824.png)
    5.测试输出到elasticsearch和屏幕上
    ```
    logstash -e 'input { stdin { } } output { elasticsearch { hosts => ["192.168.1.31:9200"] } stdout { codec => rubydebug } }'
    ```
    ![](https://images2018.cnblogs.com/blog/1195071/201805/1195071-20180528173142440-85335088.png)
    ![](https://images2018.cnblogs.com/blog/1195071/201805/1195071-20180528173221263-278466291.png)
    6.测试使用配置文件
    ```
    #vim /etc/logstash/conf.d/elk.conf
    input { stdin { } }
    output {
            elasticsearch {
                    hosts => ["192.168.1.31"]
                    index => "logstash-%{+YYYY.MM.dd}"
                    }
            stdout { codec => rubydebug }
    }
    #logstash -f /etc/logstash/conf.d/elk.conf                 //启动
    ```
    ![](https://images2018.cnblogs.com/blog/1195071/201805/1195071-20180528173250260-117202887.png)
    7.测试使用file插件
    ```
    #vim /etc/logstash/conf.d/elk.conf
    input {
            file {
                    path => "/var/log/messages"
                    type => "system"
                    start_position => "beginning"
            }
    }
    
    output {
            elasticsearch {
                    hosts => ["192.168.1.31"]
                    index => "system-%{+YYYY.MM.dd}"
                    }
    }
    ```
    ![](https://images2018.cnblogs.com/blog/1195071/201805/1195071-20180528173300317-228288530.png)
  • 相关阅读:
    自制操作系统Antz(11)——实现shell(下)命令响应
    自制操作系统Antz(10)——实现shell(上)
    利用Android-FingerprintManager类实现指纹识别
    C语言解析WAV音频文件
    自制病毒——控制桌面鼠标以及开关机
    Linux内核源码分析 day01——内存寻址
    后端必备的Linux知识
    Java基础面试题总结
    自制操作系统Antz(9)——实现内核 (下) 实现图形化界面
    自制操作系统Antz(8)——实现内核 (中) 扩展内核
  • 原文地址:https://www.cnblogs.com/lovelinux199075/p/9101274.html
Copyright © 2011-2022 走看看