zoukankan      html  css  js  c++  java
  • Filebeat+Kafka+Logstash+ElasticSearch+Kibana搭建完整版

    1. 了解各个组件的作用

    Filebeat是一个日志文件托运工具,在你的服务器上安装客户端后,filebeat会监控日志目录或者指定的日志文件,追踪读取这些文件(追踪文件的变化,不停的读)
    Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据
    Logstash是一根具备实时数据传输能力的管道,负责将数据信息从管道的输入端传输到管道的输出端;与此同时这根管道还可以让你根据自己的需求在中间加上滤网,Logstash提供里很多功能强大的滤网以满足你的各种应用场景
    ElasticSearch它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口
    Kibana是ElasticSearch的用户界面

    在实际应用场景下,为了满足大数据实时检索的场景,利用Filebeat去监控日志文件,将Kafka作为Filebeat的输出端,Kafka实时接收到Filebeat后以Logstash作为输出端输出,到Logstash的数据也许还不是我们想要的格式化或者特定业务的数据,这时可以通过Logstash的一些过了插件对数据进行过滤最后达到想要的数据格式以ElasticSearch作为输出端输出,数据到ElasticSearch就可以进行丰富的分布式检索了

    2. 安装各个组件并部署,并配置各个组件的关联配置文件

    下载各个组件的安装包并解压(这些组件在Apache官网都可以下载得到)

    Filebeat安装

    解压后Filebeat的目录

    Filebeat的配置很简单,只需要配置监控的日志文件的全路径和输出端的IP,一般默认(默认配置文件filebeat.yml)是输出到ElasticSearch,输出配置如下

    输出端配置

    这里我们不直接输出到ElasticSearch,而是kafka,所以需要配置 beat-kafka.yml,输入端配置如下

    输出端配置

    因为是输出到kafka,所以需要制定kafka的topic

    Kafka的安装

    在Filebeat已经配置输出端为kafka的配置,这里kafaka不需要配置任何东西,解压直接用,以下是kafka初用的几个必须的命令,具体查看kafka的官方API

    bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
    bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning

    现在启动Filebeat:

    ./filebeat -e -c beat-kafka.yml -d "publish"

    这里需要说明一点,不同的输出端可以配置不同的.yml文件,所以这里的 beat-kafka.yml文件是kafka对应的配置
    以上命令输出没有报错并有如下信息

    且可以看到你的监控文件的log的信息字段证明不存在问题
    这是kafka的consumer会有如下信息

    message就是文件的具体信息

    Logstash的安装

    Logstash也不要做太多的配置,从搭建Filebeat和Kafka时,已经实现了数据的流通,现在要完成的事是然流到kafka的数据流到logstash,logtash也需要输出,将ElasticSearch作为输出端

    对于kafka不同的数据建议logstash用不同的通道去接
    一下是配置的两个不同的通道

    启动logstash

    bin/logstash -f first-pipeline.conf --config.reload.automatic --path.data=/home/hadoop/logstash

    --path.data=/home/hadoop/logstash是指存放数据的路径

    ElasticSearch配置和安装

    如果你不要更改ip的话那就不需要任何配置,直接启动

    sh bin/elasticsearch

    通过elasticsearch查询看整个架构是否完整数据是否正确流通
    查看索引

    curl '192.168.1.20:9200/_cat/indices?v'
    

    根据索引查询数据

    curl -XGET '192.168.1.20:9200/test_index/_search?pretty'


    这就证明我们整个架构是正确的且数据流通无误

    Kibana的配置和安装

    Kibana只是ElasticSearch的图形化界面,启动即用

  • 相关阅读:
    页面监控容器实现记录
    负载均衡基础理论
    asp.net部署时加密config文件
    还原bak到localdb的问题:The logical database file cannot be found ldf
    Could not load file or assembly 'System.Data.SQLite ... 试图加载格式不正确的程序
    Window vista 以上制作自定义证书并为端口配置ssl
    1-6、算法设计常用思想之迭代法
    1-5、算法设计常用思想之穷举法
    1-4、算法设计常用思想之动态规划法
    游戏开发-cocos creator踩坑-bind(this)导致的事件监听off不掉
  • 原文地址:https://www.cnblogs.com/ExMan/p/11285140.html
Copyright © 2011-2022 走看看