【摘要】本文从组件的基本概念入手,结合企业诉求,介绍了两种常见的日志平台架构的使用场景、以及生命周期管理。同时也详细描述了我们比较头痛的分布式架构中网络带宽问题的解决思路,是一篇非常具有参考价值的文章。
一、引言
在实际搭建日志中心的过程中,实施人员往往对于架构选项有很多疑惑,甚至技术栈不清楚用哪些。由于本身是日志模块,属于系统的侧面,该场景下,大部分用户对于日志数据的专业性要求并不是很多,故而会一味的使用传统的ELK(Elasticsearch+logstash+kibana)的架构模式,来构建日志模块或简易的日志中心。若只是小系统还好,场景有限,传统的ELK架构模式影响也有限,但一些系统随着规模的扩大会出现日志量激增,新增对日志数据的检索要求,此时旧有架构可能就不足以支撑当前的诉求,因此在做日志模块或日志中心搭建时,建议根据自己的实际诉求规划好整体日志模块框架。
二、日志模块常见组件介绍
1.Logstash
Logstash是一个用于数据收集、转换和传输的开源工具,属于Elastic Stack(以前称为ELK Stack)的一部分。它的设计目标是处理各种不同来源的日志和事件数据,使其能够被存储、搜索和分析。
Logstash具有以下主要特点:
-
输入(Input):Logstash支持多种输入源,包括文件、标准输入、TCP/UDP、Syslog、Beats等。这使得它能够从各种来源收集日志和事件数据。