日志收集系统架构

背景

  1. 应用服务器多,日志文件被分散在各个应用服务器上,需要依次登录每台设备才能查看日志,效率低下,且不利于服务器安全管控,加大生产服务器的风险;
  2. 日志文件不统一,各项目日志没有统一的规范,不利于管理和问题排查;
  3. 日志文件占用服务器大量的硬盘空间,不及时清理会发生硬盘占满,影响系统的正常运行;
  4. 服务器上对于百兆以上的日志文件无法打开、无法进行关键字搜索,不利于问题的快速定位和排查;
  5. 集群和分布式的系统需要查看多个服务器的日志,效率极低,排查困难。

需求

  1. 不需要开发人员登录生产服务器就能查看日志;
  2. 实现统一规范日志配置和输出格式;
  3. 实时的将日志文件从服务器中迁出;
  4. 提供日志的检索和统计分析的平台;
  5. 实现对特定关键日志的告警推送;
  6. 不需要暴露服务器权限给各业务开发人员,保证生产服务器安全以及数据安全;

目标

        提供统一查看日志信息平台,实时了解系统、业务、数据库的运行情况。提升问题排查效率,提升预警能力,降低故障率 ,提高SLA百分比。

技术选型

        采用业界通用的日志数据管理解决方案ELK (Elasticsearch 、 Logstash 和 Kibana) + Filebeat的架构构建日志采集分析平台,为了支持日志的高并发和高可靠引入kafaka 解耦Filebeat、Logstash。同时引入 Prometheus、Grafana 进行指标搜集、展示和预警;

日志收集系统架构_第1张图片

日志系统机构逻辑图

日志收集系统架构_第2张图片 

 

 

你可能感兴趣的:(LINUX,系统架构,服务器,数据库)