您的位置:首页 > 运维架构 > 网站架构

部署ELK日志分析系统1-架构

2019-01-01 13:52 519 查看
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lq14790090883/article/details/85448929

文章目录

  • 2. ELK架构图
  • 1. ELK简介

    ELK是三个开源软件的缩写,分别表示:Elasticsearch , Logstash, Kibana 。现在新增了一个轻量级的日志收集处理工具FileBeat,Filebeat占用资源少,适合于在各个服务器上搜集日志后传输给Logstash,官方也推荐此工具。

    Elasticsearch

    Elasticsearch是开源分布式搜索引擎,提供搜集、分析、存储数据三大功能。它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。

    Logstash

    Logstash 是用于日志的搜集、分析、过滤日志的工具,支持大量的数据获取方式。一般工作方式为c/s架构,client端安装在需要收集日志的主机上,server端负责将收到的各节点日志进行过滤、修改等操作再一并发送至elasticsearch。

    Kibana

    Kibana可以为 Logstash 和 ElasticSearch 提供日志分析友好的 Web 界面,可以帮助汇总、分析和搜索重要数据日志。

    Beats

    1. Packetbeat:网络数据包分析器,搜集应用程序服务器之间交换的信息。
    2. Topbeat:服务器监视代理程序,搜集系统、进程和文件系统级别的 CPU 和内存使用情况等数据
    3. Filebeat:搜集文件数据,比Logstash消耗资源小,现在代替Logstash用于应用日志文件数据收集
    4. Winlogbeat:搜集 Windows 事件日志数据

    2. ELK架构图

    ELK平台架构图V1

    • 日志获取:Logstash用于获取日志文件中的数据,APP应用使用TCP链接传输日志数据
    • 日志处理:使用Logstash对日志数据进行过滤、转换等处理,并传输至Elasticsearch集群中
    • 日志存储:将日志数据存储在Elasticsearch中,分应用按日期进行索引
    • 日志查看:使用Kibana可以方便的在WEB端查看应用日志,汇总图表展示

    ELK平台架构图V2

    • 使用Filebeat代替Logstash读取日志文件数据,消耗资源小对应用服务器影响较小
    • 使用Topbeat、Packetbeat、Winlogbeat可以针对性的获取服务器性能数据,用于服务预警
    • 启用多个Logstash来负载均衡,避免单点故障

    ELK平台架构图V3

    • 将日志传输至消息队列中,防止因网络原因导致日志丢失,也可以缓解日志处理压力
    • 增加Nginx做WEB负载均衡

    [1]: Filebeat https://www.elastic.co/guide/en/beats/filebeat/6.2/index.html
    [2]: Logstash https://www.elastic.co/guide/en/logstash/6.2/index.html
    [3]: Kibana https://www.elastic.co/guide/en/kibana/6.2/index.html
    [4]: Elasticsearch https://www.elastic.co/guide/en/elasticsearch/reference/6.2/index.html

    内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
    标签: