始于日志,不止于日志,Elastic Stack全面介绍

news2024/11/17 23:33:37

1、Elastic Stack是什么?

说Elastic Stack之前,先说一下ELK Stack。这个词相信很多人都是耳熟能详的,作为一个著名的日志系统解决方案,应用非常广泛。

“ELK”是三个开源项目的首字母缩写词:Elasticsearch、Logstash 和 Kibana。 其中Elasticsearch 是一个开源、分布式、RESTful、基于 JSON 的搜索和分析引擎;Logstash 是一个服务器端数据处理管道,它同时从多个来源摄取数据,对其进行转换,然后将其发送到 Elasticsearch存储;Kibana 则允许用户在 Elasticsearch 中使用图表和图形来可视化数据。

其中Logstash除了可以收集多个来源的数据,还具备丰富的插件,可以用于数据分析过滤,但是占用资源比较多,使用起来比较重。由于有用户提出只需要跟踪某一个文件这种单一的轻量级场景,所以2015 年Elastic又开发出了各种轻量级单一用途的数据收集器,这就是Beats,其中非常著名的例如FileBeat。Beats出现以后,通常做法是使用Beats收集数据上传到Kafka等消息队列,然后Logstash订阅消息队列的数据,经过分析过滤以后上传到Elasticsearch。

当Beats加入ELK这个组合以后,再叫ELK显然就不合适了,那么不能叫做"EBLK"或者叫做"ELKB"吧,不然以后再加一个组件进来又得再改名字了。所以官方想了Elastic Stack这个新名字,具备“弹性”倒是非常贴切,所以以后不要再说ELK啦,就叫Elastic Stack。

2、Elastic Stack应用场景远不止于日志

Elastic Stack是公认的日志监测领域的领导者,以提供日志解决方案而闻名,但是实际上其应用场景却远远不止于日志,在基础架构监测、APM、客户旅程监测、企业内部搜索、地理位置信息应用、SIEM、终端安全、商业分析等方面都有比较完善的解决方案。下面举几个应用场景案例进行说明:

2.1、使用Elastic Stack构建APM

应用性能监测(APM)是现代微服务架构下非常重要的部分,掌握应用的性能数据、调用链路、依赖关系,能够方便、快速地对应用地运行系统进行掌握,出现故障能够快速分析定位。

Elastic Stack支持包括 OpenTelemetry、W3C 跟踪上下文和 Jaeger 在内的开放标准,通过采集由 OpenTelemetry agent收集的应用程序遥测数据,能够快速收集各类应用程序的性能数据,支持各类语言,通过Kibana、APM Server集成构建用户可观测的用户界面,就能非常方便实现APM的能力。

OpenTelemetry(也称为 OTel)是一个开源可观测能力框架,由一系列工具、API 和 SDK 组成,使 IT 团队能够检测、生成、收集和导出远程监测数据以进行分析和了解软件性能和行为,它是云原生地可观测遥测数据收集的一个标准;Jaeger 也是一个著名的分布式链路追踪框架。Elastic Stack对于这些框架的集成支持,使得构建APM是一件比较轻松的事情。

收集到的数据通过Kibana集成的APM能力能够以图形化的形式展示出来,例如调用链路跟踪、应用程序依赖关系等。

另外,Elastic Stack还具备Machine Learning 以及延迟和错误相关性的自动异常检测的能力,能够更加智能地协助问题排查。

2.2、使用Elastic Stack构建基础架构监测

Elastic Stack提供了Elastic Agent支持从各种地方收集需要进行监控的数据,这些数据可以是日志、指示、操作轨迹等,为了方便进行各类Elastic Agent的管理,Elastic Stack还提供了Fleet,可以统一对Agent进行配置、管理。

Elastic Agent 和 Fleet 为常用服务和平台提供了多种开箱即用的组件,包括一些常用的仪表板、可视化工具,免除大量的人工操作成本。

Kibana中有大量可以集成的现成应用,这些集成的组件超过200个,只需要简单安装即可完成集成接入,非常方便。

2.3、使用Elastic Stack构建用户体检监测

系统表现出的性能与实际的用户体验之间是可能存在较大的差距的,用户实际体验会受到浏览器类型、网络、区域、操作系统类型等多个因素的影响,如果不能有效掌握用户的体验受阻情况,就无法针对性的进行优化。

通过收集用户体验埋点信息,用户受挫信息等,基于URL、地理位置信息、浏览器类别等进行相关的数据统计分析,使用Elasticsearch存储所有的类型数据,使用Kibana相关集成对数据进行分析展示,了解不同地域、分层的用户的体验情况。

以上只是一些例子,实际上Elastic Stack在可观测性方面已经有了非常全面的解决方案,并且被广泛采用,在2022 年度 Gartner® APM 与可观测性 Magic Quadrant™评选中被评为visionary(“有远见者”)。

3、为什么选择Elastic Stack?

Elastic Stack之所以能够被广泛地采用,一是这个套件中各组件的功能强大,二是经过Elastic的整合,各套件完美搭配。

以可观测性系统构建为例,主要涉及三大步骤:数据采集、数据存储、数据分析和展示。

3.1、Logstash和Beats构建了最强大灵活的数据采集能力

Logstash 能够动态地采集、转换和传输数据,支持非结构化的数据,强大的Grok表达式可以轻松从非结构化数据中解析出所需要的数据,支持各种数据源,拥有近200种插件,数据过滤和转换能力十分强大,并且具备可信的交付管道,通过持久化队列保障事件至少被发送一次。

Beats则集合了多种单一用途数据采集器,包括Filebeat、Metricbeat、Heartbeat等等,轻松地从虚拟机、Docker或kubernetes容器平台收集数据,所有的Beats基于libbeat,这意味着开发者能根据自己的需要灵活地构建新地Beats。

3.2、Elasticsearch构建了强大的存储和搜索能力

Elasticsearch 是一个分布式、免费和开放的搜索和分析引擎,它几乎适用于所有类型的数据,包括文本、数字、地理空间、结构化和非结构化数据,搜索速度快、分布式扩展性强、功能强大。

**搜索速度很快。**因为 Elasticsearch 建立在 Lucene 之上,所以它擅长全文搜索。Elasticsearch 也是一个近乎实时的搜索平台,这意味着从文档被索引到变得可搜索的延迟非常短——通常是一秒。因此,Elasticsearch 非常适合对时间敏感的用例,例如安全分析和基础设施监控。

**Elasticsearch 是自然分布的。**存储在 Elasticsearch 中的文档分布在称为shard的不同容器中,这些容器被复制以在硬件故障时提供数据的冗余副本。Elasticsearch 的分布式特性使其能够扩展到数百(甚至数千)台服务器并处理 PB 级的数据。

**Elasticsearch 具有广泛的功能。**除了速度、可扩展性和弹性之外,Elasticsearch 还具有许多强大的内置功能,可以更加高效地存储和搜索数据,例如数据汇总和索引生命周期管理。

3.3、Kibana构建强大的展示能力

Kibana 则提供了强大的数据可视化和管理工具,提供常用的直方图、折线图、饼图和地图等。它还包括了高级应用程序,例如允许用户根据数据创建自定义动态信息图表的Canvas,以及用于可视化地理空间数据的 Elastic Maps。

目前为止,在UI展示功能和灵活性方面,除了Grafana,Kibana可以说是首屈一指。

4、Elastic Stack的服务提供方式

Elasticsearch相关的服务可以通过 Elasticsearch Service(可在 Amazon Web Services (AWS)、Google Cloud 和阿里云上使用)部署为托管的托管服务。

对于希望从单个控制台配置、管理和监控其部署但不想使用公共云平台的用户,Elastic 还提供 Elastic Cloud Enterprise,可以以私有云的形式进行部署。

对于自主掌控能力较强,有相关维护团队的企业来说,可以自行下载Elasticsearch、Kibana等组件自行进行部署和维护,高级非免费功能通过付费购买方式使用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/349987.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

第五章.与学习相关技巧—Batch Normalization

第五章.与学习相关技巧 5.3 Batch Normalization Batch Norm以进行学习时的mini_batch为单位,按mini_batch进行正则化,具体而言,就是进行使数据分布的均值为0,方差为1的正则化。Batch Norm是调整各层激活值的分布使其拥有适当的广…

进程组和用处

进程组:一个或多个进程的集合,进程组id是一个正整数。组长进程:进程组id 进程id组长进程可以创建一个进程组,创建该进程组的进程,终止了,只要进程组有一个进程存在,进程组就存在,与…

卷积神经网络(CNN)

目录The Basic Usage of CNNPadding(填充)Weights(权重)PoolingThe Basic Usage of CNN What are Convolutional Neural Networks? They’re basically just neural networks that use Convolutional layers(卷积层…

家政服务小程序实战教程13-接入客服

小程序在微信里使用,以其无需安装随用随走为特点。但是有个问题是,如果提供商品或者服务的,用户如果有问题往往希望平台的运营方给出专业的解答。为了满足这类需求,就需要我们提供客服接入的功能,用户可以点击客服图标…

Linux使用定时任务监控java进程并拉起

需求描述: 设计一个脚本,通过Linux定时任务,每分钟执行一次,监控jar包进程是否存在,存在则不做动作,不存在则重新拉起jar包程序。 定时任务配置: */1 * * * * bash -x /root/myfile/jars/che…

stk 根据六根数文件生成卫星轨迹(一)

先简单介绍下上面的参数。 Propagator预报轨道模型。 TwoBody为二体(开普勒运动模型)。HPOP为高精度轨道模型。目前只用到这两个。 下图为六根数参数 Orbit Epoch:为根数时间(UTC) Semimajor Axis:长半…

软考高项——第五章进度管理

范围管理进度管理总线索规划进度管理定义活动活动排序估算活动资源估算活动时间制定进度管理计划控制进度进度管理总线索 进度管理的总线索包括: 1)规划进度管理 2)定义活动 3)活动排序 4)估算活动资源 5)…

pandas基本操作

df.head()/tail() 查看头/尾5条数据;df.info 查看表格简明概要;df.dtypes 查看字段数据类型;df.index 查看表格索引;df.columns 查看表格列名;df.values 以array形式返回指定数据的取值;list(dt.groupby(&q…

vue2 使用 cesium 篇

vue2 使用 cesium 篇 今天好好写一篇哈,之前写的半死不活的。首先说明:这篇博文是我边做边写的,小白也是,实现效果会同时发布截图,如果没有实现也会说明,仅仅作为技术积累,选择性分享&#xff0…

远程管理时代,还得是智能化PDU才靠得住!

在如今这个信息技术高速发展的时代,数据中心IDC机房服务器数量与日俱增,提供DNS域名服务、主机托管服务、虚拟主机服务等服务的服务器是IDC最基本的功能之一。服务器需要7*24小时不间断持续工作,但当服务器数量很大,服务器工作、重…

.net6API使用AutoMapper和DTO

AutoMapper,是一个转换工具,说到AutoMapper时,就不得不先说DTO,它叫做数据传输对象(Data Transfer Object)。 通俗的来说,DTO就是前端界面需要用的数据结构和类型,而我们经常使用的数据实体,是数…

华为ensp模拟校园网/企业网实例(同城灾备及异地备份中心保证网络安全)

文章简介:本文用华为ensp对企业网络进行了规划和模拟,也同样适用于校园、医院等场景。如有需要可联系作者,可以根据定制化需求做修改。作者简介:网络工程师,希望能认识更多的小伙伴一起交流,私信必回。一、…

多元回归分析 | CNN-LSTM卷积长短期记忆神经网络多输入单输出预测(Matlab完整程序)

多元回归分析 | CNN-LSTM卷积长短期记忆神经网络多输入单输出预测(Matlab完整程序) 目录 多元回归分析 | CNN-LSTM卷积长短期记忆神经网络多输入单输出预测(Matlab完整程序)预测结果评价指标基本介绍程序设计参考资料预测结果 评价指标 训练集平均绝对误差MAE:0.69559 训练…

宝塔搭建实战php源码人才求职管理系统后台端thinkphp源码(一)

大家好啊,我是测评君,欢迎来到web测评。 在开源社区里看到了这一套系统,骑士人才系统SE版,搭建测试了,感觉很不错。能够帮助一些想做招聘平台的朋友降低开发成本,就是要注意,想商业使用的话&…

QT+OpenGL光照2

QTOpenGL材质 本篇完整工程见gitee:QtOpenGL 对应点的tag,由turbolove提供技术支持,您可以关注博主或者私信博主 材质 在现实世界中,每个物体会对光照产生不同的反应 在OpenGL中模拟多种类型的物体,必须为每种物体分别定义一个…

IO模型--从BIO、NIO、AIO到内核select、poll、epoll剖析

IO基本概述 IO的分类 IO以不同的维度划分,可以被分为多种类型;从工作层面划分成磁盘IO(本地IO)和网络IO; 也从工作模式上划分:BIO、NIO、AIO;从工作性质上分为阻塞式IO与非阻塞式IO&#xff1b…

低代码/零代码的快速开发框架

目前国内主流的低代码开发平台有:宜搭、简道云、明道云、云程、氚云、伙伴云、道一云、JEPaaS、华炎魔方、搭搭云、JeecgBoot 、RuoYi等。这些平台各有优劣势,定位也不同,用户可以根据自己需求选择。 一、阿里云宜搭 宜搭是阿里巴巴集团在20…

分布式文件存储Minio学习入门

文章目录一、分布式文件系统应用场景1. Minio介绍Minio优点2. MinIO的基础概念、3. 纠删码ES(Erasure Code)4. 存储形式5. 存储方案二、Docker部署单机Minio三、minio纠删码模式部署四、分布式集群部署分布式存储可靠性常用方法冗余校验分布式Minio优势运行分布式minio使用dock…

如何设置股票接口版交易软件的指标涨跌家数?

如何设置股票接口版交易软件指标涨跌家数?今天小编就以通达信为例给大家介绍一下,很多人其实不知道通达信里面有个很厉害的股票情绪的指标,叫做通达信涨跌家数,打开在通达信软件k线界面,然后输入880005就可以找到了。下…

如何解决 Python 中 TypeError: unhashable type: ‘dict‘ 错误

Python “TypeError: unhashable type: ‘dict’ ” 发生在我们将字典用作另一个字典中的键或用作集合中的元素时。 要解决该错误,需要改用 frozenset,或者在将字典用作键之前将其转换为 JSON 字符串。 当我们将字典用作另一个字典中的键时&#xff0c…