什么是 ELK Stack?
ELK Stack 是一个缩略词,用来描述由三个常见项目组成的堆栈:Elasticsearch、Logstash 和 Kibana。ELK Stack 通常被称为 Elasticsearch,它使您能够聚合来自所有系统和应用程序的日志,分析这些日志,并创建可视化来进行应用程序和基础设施监控、更快的故障排除、安全分析等。
E = Elasticsearch
Elasticsearch 是在 Apache Lucene 上构建的分布式搜索和分析引擎。对各种语言、高性能和无架构 JSON 文档的支持使 Elasticsearch 成为各种日志分析和搜索使用案例的理想选择。 了解更多 »
2021 年 1 月 21 日,Elastic NV 宣布,他们将改变软件许可策略,不在 Apache 2.0 版本 (ALv2) 许可下发布 Elasticsearch 和 Kibana 的新版本。相反,将在 Elastic 许可下使用 Elastic 许可或 SSPL 下提供的源代码提供新版本的软件。这些许可证不是开源的,不会为用户提供同样的自由。要获得一个安全、高质量且完全开源的搜索和分析套件,您可以使用 OpenSearch 项目,该项目是开源 Elasticsearch 和 Kibana 的社区驱动、ALv2 许可的分支。
L = Logstash
Logstash 是一个开源数据摄取工具,允许您从各种来源收集数据,转换数据,并将数据发送到您希望的目标。通过预构建的筛选器和对 200 多种插件的支持,Logstash 使用户能够轻松摄取数据,无论数据源或类型如何。 了解更多 »
K = Kibana
Kibana 是一种数据可视化和挖掘工具,用于审查日志和事件。Kibana 提供易于使用的交互式图表、预构建的聚合和筛选器以及地理空间支持,使其成为可视化 Elasticsearch 中存储的数据的首选。 了解更多 »
ELK Stack 的工作原理?
-
Logstash 将摄取、转换数据并将其发送到正确的目的地。
-
Elasticsearch 将为摄取的数据编制索引,并且分析和搜索这些数据。
-
Kibana 会将分析结果可视化。
为什么 ELK Stack 很重要?
ELK Stack 满足了日志分析空间的需求。随着越来越多的 IT 基础设施转移到公有云中,您需要一个日志管理和分析解决方案来监控此基础设施,并处理任何服务器日志、应用程序日志和点击流。ELK Stack 为您的开发人员和开发运维工程师提供了一个简单但稳固的日志分析解决方案,以较低的价格便可获得关于故障诊断、应用程序性能和基础设施监控的宝贵见解。
如何为 ELK Stack 选择正确的解决方案?
您可以选择使用 Apache 2.0 许可版本的 Elasticsearch 和 Kibana(直到版本 7.10.2)自行部署和管理 ELK Stack,或者使用 OpenSearch、OpenSearch 控制面板和 Logstash 自行管理 ELK Stack 的开源替代方案。但是,您是希望开发人员或开发运维工程师把时间花在构建创新应用程序上,还是花在管理部署、升级、软件安装和补丁、备份和监控等运营任务上? 此外,通过向上和向下扩展来满足您的业务要求,或者实现安全性和合规性,对于自我管理选项来说也是一个挑战。
AWS 提供哪些适用于 ELK Stack 的产品/服务?
Amazon OpenSearch Service 提供最新版本的 OpenSearch,支持 19 个版本的 Elasticsearch(1.5 到 7.10 版本),并支持由 OpenSearch Dashboards 和 Kibana(1.5 到 7.10 版本)提供的可视化功能。该服务与 Logstash 以及 Amazon Kinesis Data Firehose、Amazon CloudWatch Logs 和 AWS IoT 等其他 AWS 服务集成,从而让您可以灵活地选择满足您使用案例要求的数据摄取工具。