Elastic Stack简介

本文内容参考了田雪松老师编著的《Elastic Stack应用宝典》

从ELK到Elastic Stack

ELK是三个单词的首字母缩写,即Elasticsearch、Logstash和Kibana。

  • Elasticsearch用于数据存储与检索
  • Logstash用于数据传输与清洗
  • Kibana则用于数据可视化等领域

Elasticsearch的第一个版本叫Compass,是Elastic创始人Shay Banon在2004年创建的一个搜索引擎。

第二个版本基于Apache Lucene开发,并在2010年以Elasticsearch为名开源。

Shay Banon在2012年创办了Elasticsearch公司,并于2015年更名为Elastic。

由于Elasticsearch的影响不断扩大,催生了两个与其相关的开源项目,它们就是Logstash和Kibana。由于这两个项目填补了Elasticsearch在数据传输、数据可视化等方面的欠缺,所以不久之后这两个项目也加入了Elastic公司,于是ELK就这样诞生了。

在2015年,一个名为Packetbeat(以一种轻量级方式将网络数据发送到Elasticsearch)的开源项目引起了Elastic公司的重视。它是由一对德国夫妻设计的。Elastic开发团队由此引申,计划开发出一组专门用于数据传送的轻量级组件,可以将网络、日志、指标、审计等各种数据从不同的数据源头发送到Logstash或Elasticsearch。Elastic公司给这种组件起了一个统一的名字,这就是Beats组件。

Beats组件的加入,使得ELK这个名称不能再概括Elastic的所有开源项目了,于是ELK就自然而然地更名为ELK Stack。但ELK这个名称本身又有一定的缩写含义,依然容易引起误会,所以最终它们被统一称为Elastic Stack。

2018年10月6日,Elastic公司在纽约证券交易所挂牌上市。

版本演变

早期,每个项目都有一套自己管理版本的办法。Kibana使用betas, Logstash使用里程碑,Elasticsearch则使用数字,这使得Elastic Stack家族成员的版本异常混乱。不仅如此,由于这些开源项目的不同版本之间又无法自动处理兼容问题,使得用户必须要了解并处理不同版本之间的兼容问题。

2015年ELK 2.0作为一个整体同时发布,解决了版本协调同步与兼容问题。

到2016年,ELK 5.0发布时,ELK整体变得更加友好、更加稳定,同时还提供了丰富的文档,使用户在入门时更加容易掌握。

许可授权

在ELK 5.0版本以后,Elastic将所有的商用插件捆绑到一个名为X-Pack的扩展中,它包含了类似安全、监控、报警等扩展功能,这应该是Elastic Stack商业化的一次尝试。

在2018年2月,Elastic将这些商用X-Pack开放了源代码,但依然需要商用授权许可。在Elastic Stack文档中也有多处提及X-Pack,读者可以将它们理解为Elastic Stack的扩展组件。

至2017年,Elastic发布了名为ECE(Elastic Cloud Enterprise)的云服务平台,这应该是Elastic在商业化道路上的又一次尝试。

从Elastic Stack 6.8和7.1版本开始,Elasticsearch的核心安全功能(TLS加密、原生和基于文件的身份验证,以及基于角色的访问控制)已经可以免费使用了。

应用场景

Beats组件从分布式环境中的主机节点上采集数据发送给Logstash,而Logstash根据配置将数据过滤、清洗后再发送给Elasticsearch并编入索引,最后在Kibana中配置仪表盘、画布等并从Elasticsearch中读取数据将它们可视化。最典型的应用场景就是使用Elastic Stack从文件中收集日志。

除了组合在一起使用,Elastic Stack中的每一种组件又可以独立使用,或者是与第三方应用结合在一起使用。一种典型的应用场景是与Kafka等第三方MQ组件结合使用,以防止瞬间流量爆发导致的系统崩溃。

Logstash也可以脱离Beats和Elasticsearch作为一个数据传输管道单独使用,比如可以使用Logstash从关系型数据库中收集表格中的数据,然后将它们传输到类似MogonDB这样的NoSQL数据库中,这其实就是结构化数据实现全文检索的典型应用场景。与此同时,还可以将这些结构化数据存储到S3、HDFS等分布式文件系统中,这其实就实现了海量结构化数据的备份功能。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AnaTraf | 网络性能监控系统NPM:提升网络性能与业务连续性

AnaTraf 网络性能监控系统NPM | 全流量回溯分析 | 网络故障排除工具 网络系统非常复杂,管理和维护它们也越来越具有挑战性。为了确保网络性能和业务的持续稳定运行,IT运维团队需要对网络进行实时监控、优化和快速排查故障。本文将围绕网络性能监控系统&…

raidrive 访问搭建的ftp服务报错超时的情况

尝试了很久,包括改用户权限和密码,后面根据ftp日志,查到用户登录是正常的 /var/log/vsftpd.log 就知道,不是密码问题也不是服务器端的问题,通过多次尝试发现是被动模式的问题,被动模式会通过其他端口进行交…

ChatGPT实现旅游推荐微信小程序

随着旅游行业的快速发展,个性化推荐已成为提升用户体验的重要手段。通过AI技术,提供一个智能旅游推荐小程序,使用户能够轻松获取定制化的旅行建议。 项目概述 项目目标 开发一个AI旅游推荐小程序,基于用户输入的旅行偏好&#…

前后端请求、返回数据的多种方式

Springboot项目的业务逻辑 🌙项目基本结构: 通常情况下,我们在搭建后端项目的时候,处理业务逻辑我们需要用到Controller,Service,Mapper(mybatis,mybatis-plus),Entry各层之间的相互调用来完成,还有就是我…

Docker部署MySQL主从复制

1. 主从复制概念及优势 1.1 概念 MySQL主从复制是一种数据库复制技术,它允许将一个数据库服务器(主服务器)上的数据更改复制到一个或多个数据库服务器(从服务器)。这种技术在数据库管理和维护中扮演着重要的角色&…

Ubuntu 2张4090,显卡安装,无法双屏显示

项目场景: 提示:这里简述项目相关背景: Ubuntu20.04 安装nvidia显卡 在已经安装好nvidia显卡的情况下: 单屏幕无法修改屏幕分辨率 无法双屏显示 问题描述 提示:这里描述项目中遇到的问题: 单屏幕无法…

【Origin科技绘图】最新Origin2024中文版软件安装教程

Origin是由OriginLab公司开发的一个科学绘图、数据分析软件,支持在MicrosoftWindows下运行。Origin支持各种各样的2D/3D图形。Origin中的数据分析功能包括统计,信号处理,曲线拟合以及峰值分析。Origin中的曲线拟合是采用基Levernberg-Marquardt算法(LMA)的非线性最小二乘法拟合…

理工科考研想考计算机,湖南大学、重大、哈工大威海、山东大学,该如何选择?

C哥专业提供——计软考研院校选择分析专业课备考指南规划 计算机对理工科同学来说,还是性价比很高的,具有很大的优势! 一、就业前景广阔 高需求行业 在当今数字化时代,计算机技术几乎渗透到了各个领域,无论是互联网…

LabVIEW提高开发效率技巧----插入式架构

随着LabVIEW项目规模的扩大和系统复杂性的增加,传统的单一代码架构难以应对后期维护和功能扩展的需求。插入式架构(Plug-In Architecture)作为一种模块化设计方式,通过动态加载和运行子VI,使系统功能更加灵活、模块化&…

Django从请求到响应

视图 一个视图函数,简称视图,是一个简单的Python函数 def view_name() 定义视图函数view_name() URL的常用配置 path函数: path(route,view,name,**kwargs) route:RUL匹配规则 view:视图函数 name&#xf…

【部署篇】RabbitMq-03集群模式部署

一、准备主机 准备3台主机用于rabbitmq部署,文章中是在centos7上安装部署rabbitmq3.8通过文章中介绍的方式可以同样在centos8、centos9上部署,只需下载对应的版本进行相同的操作。 主机IP角色说明192.168.128.31种子节点192.168.128.32普通节点192.16…

React 分装webSocket

背景 AI 实时对话 需要流式数据 React Hooks 写法。新建WebSocket.tsx 放在根目录components import { useCallback, useRef, useState } from react;type MessageHandler (message: MessageEvent) > void; type ErrorHandler (event: Event) > void;export functi…

技术成神之路:设计模式(二十二)命令模式

介绍 命令模式(Command Pattern)是一种行为设计模式,允许将请求(命令)封装为对象,从而使您可以使用不同的请求、队列或记录请求日志,以及支持可撤销操作。 1. 定义 命令模式将一个请求封装为一个…

S32DS for ARM GPIO实践

S32DS操作: 一、新建项目 打开S32DS,FIle–>NEW–> S32DS Application Project选择对应芯片,写入项目名然后下一步 选择对应的SDK,Debugger选带有PE字眼的,点击完成 配置GPIO,双击Components界面下的…

【MySQL】详解MySQL数据类型

一、数据类型 各类型的数值范围: 在MySQL中,整型可以指定是有符号的和无符号的,默认是有符号的。 可以通过UNSIGNED来说明某个字段是无符号的。对于int类型可能存放不下的数据,尽量不使用unsigned,unsigned int 同样可…

pytorch dataloader学习

import torch from torch.utils.data import Dataset, DataLoader import numpy as np torch.manual_seed(1) # 自定义数据集 class CustomDataset(Dataset):def __init__(self):# 创建一些示例数据(100个样本,每个样本包含10个特征)self.dat…

推荐一个开源非线性视频编辑器:Kdenlive

Kdenlive是一个开源的视频编辑软件,项目始于约2003年。它基于Qt和KDE框架库构建,大部分视频处理由MLT框架完成,同时依赖其他开源项目如FFmpeg、frei0r、movit、ladspa、sox等。 软件特点: - 多轨视频编辑:支持多个音频…

MongoDB Shell 基本命令(三)生成学生脚本信息和简单查询

一、生成学生信息脚本 利用该脚本可以生成任意个学生信息,包括学号、姓名、班级、年级、专业、课程名称、课程成绩等信息,此处生成2万名学生,学生所有信息都是给定范围后随机生成。 生成学生信息后,再来对学生信息进行简单查询。…

论文阅读:Guided Linear Upsampling

今天介绍一篇有趣的文章,Guided Linear Upsampling,基于引导的线性上采样,这是发表在 ACM transaction on Graphic 的一篇工作。 Abstract 引导上采样是加速高分辨率图像处理的一种有效方法。在本文中,文章作者提出了一种简单而…

【2024】【字节青训营】:字节青训营入营测试题——Java版本(已提交通过)

目录 简单题目 计算x到y的最小步数 环状 DNA 序列的最小表示法 Base32 解码和编码 打点计时器 兔群繁殖之谜 完美整数 找出整数数组中占比超过 一半 的数 找出最长的神奇数列 找单独的数 字符串最短循环字串 二进制反码转换问题 中等题目 简单四则运算 数字翻译…