Elastic:Elastic部署架构介绍
Elastic Stack是一套完整的从数据采集,解析,分析,丰富,到搜索,检索,数据程序等一套完整的软件栈。在具体的实践中,我们应该如何搭建我们的系统呢?
下图描述了常用的Elastic Stack的部署架构:
该图描述了三种可能的体系结构:
- 将操作指标直接发送到Elasticsearch:如上图所示,您将在要从其发送操作指标/日志的边缘服务器上安装各种类型的Beats,例如Metricbeat,Filebeat,Packetbeat等。 如果不需要进一步处理,那么可以将生成的事件直接传送到Elasticsearch集群。 一旦数据出现在Elasticsearch中,就可以使用Kibana对其进行可视化/分析。 在这种体系结构中,事件流将是Beats→Elasticsearch→Kibana。当然如果您需要做进一步的处理,您也可以通过ingest node的pipleline帮助实现。
- 将操作指标发送到Logstash:Beats捕获并安装在边缘服务器上的操作指标/日志将发送到Logstash进行进一步处理,例如解析日志或丰富日志事件。 然后,已解析/丰富的事件被推送到Elasticsearch。 为了提高处理能力,您可以扩展Logstash实例,例如,通过配置一组Beats将数据发送到Logstash实例1,并配置另一组Beats将数据发送到Logstash实例2,依此类推。 在这种架构中,事件流将是Beats→Logstash→Elasticsearch→Kibana。
- 将操作指标发送到弹性队列:如果生成的事件发生率很高,并且Logstash停机时Logstash无法应付负载或防止数据/事件丢失,则可以使用诸如以下的弹性队列 Apache Kafka,以便将事件排队。 然后,Logstash可以以自己的速度处理它们,从而避免丢失Beats捕获的操作指标/日志。 在这种体系结构中,事件流将是Beats→Kafka→Logstash→Elasticsearch→Kibana。
提示:从Logstash 5.x开始,您可以使用Logstash的持久队列设置,也可以将其用作队列。 但是,它不像Kafka一样提供高度的弹性。
也有一些应用场景是这样部署的:
同样的,在这里,我们可以通过radis或Kafaka来提供一个弹性队列来缓冲高发生率事件。
在实际的使用中,如果我们不把Elasticsearch当做唯一的数据库来存储的话,那么,我们可以采用如下的方案:
在这种架构中,您有两个数据存储,必须找到一种使它们保持同步的方法。 根据您的主要数据存储区和数据布局方式,您可以部署Elasticsearch插件以使两个实体保持同步。
如下的是另外一中有外部数据,物联网等的一种架构:
或者一个更加全面的架构图:
在Elastic的官方文档中,有更多关于部署架构的描述。详细文档:https://www.elastic.co/assets/blt2614227bb99b9878/architecture-best-practices.pdf
Elastic:Elastic部署架构介绍的更多相关文章
- LNMP架构介绍与部署
一.LNMP架构介绍 LNMP:Linux系统下Nginx+MySQL+PHP这种网站服务器架构.Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器.My ...
- MemSQL分布式架构介绍(一)
最近在了解MemSQL架构,看了些官方文档,在这里做个记录,原文在这里:http://docs.memsql.com/latest/concepts/distributed_architecture/ ...
- IIS负载均衡-Application Request Route详解第四篇:使用ARR实现三层部署架构(转载)
IIS负载均衡-Application Request Route详解第四篇:使用ARR实现三层部署架构 系列文章链接: IIS负载均衡-Application Request Route详解第一篇: ...
- 大型网站技术架构介绍--squid
一.大型网站技术架构介绍 1.pv高 ip高 并发量 2.大型网站架构重点 1. 高性能:响应时间,TPS,系统性能计数器.缓存,消息队列等. 高可用性High Availabilit ...
- Azure环境中Nginx高可用性和部署架构设计
前几篇文章介绍了Nginx的应用.动态路由.配置.在实际生产环境部署时,我们需要同时考虑Nginx的高可用性和部署架构. Nginx自身不支持集群以保证自身的高可用性,商业版本的Nginx+推荐: T ...
- 微服务架构介绍和RPC框架对比
微服务架构介绍和RPC框架对比 1.微服务架构 1.1 特征 自动化部署,端点智能化,语言和数据的去中心化控制. 1.2架构 一种将一个单一应用程序开发为一组小型服务的方法,每个服务运行在自己的进程中 ...
- Mysql双主互备+keeplived高可用架构介绍
一.Mysql双主互备+keeplived高可用架构介绍 Mysql主从复制架构可以在很大程度保证Mysql的高可用,在一主多从的架构中还可以利用读写分离将读操作分配到从库中,减轻主库压力.但是在这种 ...
- Nginx技术研究系列7-Azure环境中Nginx高可用性和部署架构设计
前几篇文章介绍了Nginx的应用.动态路由.配置.在实际生产环境部署时,我们需要同时考虑Nginx的高可用性和部署架构. Nginx自身不支持集群以保证自身的高可用性,商业版本的Nginx+推荐: T ...
- 远程服务调用RPC框架介绍,微服务架构介绍和RPC框架对比,dubbo、SpringClound对比
远程服务调用RPC框架介绍,微服务架构介绍和RPC框架对比,dubbo.SpringClound对比 远程服务调用RPC框架介绍,RPC简单的来说就是像调用本地服务一样调用远程服务. 分布式RPC需要 ...
随机推荐
- 万字干货|Java基础面试题(2022版)
目录 概念常识 Java 语言有哪些特点? JVM.JRE和JDK的关系 什么是字节码? 为什么说 Java 语言是"编译与解释并存"? Oracle JDK 和OpenJDK的区 ...
- while and do while
package study5ran2yl.study; public class deno14 { public static void main(String[] args) { //计算1+2+. ...
- SQL练习六--More JOIN operations
movie Field name Type Notes id INTEGER An arbitrary unique identifier title CHAR(70) The name of the ...
- 作业一、安装Ubuntu系统
Ubuntu1804安装 一.安装环境 1.VMware Workstation 16 Pro 2.Ubuntu 18.04.6 LTS 二.部署系统 步骤1.进入VMware,点击创建新的虚拟机 步 ...
- .NET Core 实现后台任务(定时任务)Longbow.Tasks 组件(三)
原文链接:https://www.cnblogs.com/ysmc/p/16512309.html 在上两篇文章中,简单介绍了怎么使用 IHostedService 与 BackgroundServi ...
- impl和dyn用法
先推荐一个链接 理解 Rust 2018 edition 的两个新关键字 -- impl 和 dyn 官方文档中,impl是限定泛型的语法糖,所以 trait Trait {} fn foo<T ...
- 《Python编程:从入门到实践》第十八章笔记:Django最基本用法笔记
最近在看Python编程:从入门到实践,这是这本书"项目3 Web应用程序"第18章的笔记.记录了django最基本的一些日常用法,以便自己查阅. 可能是我的这本书版本比较老,书上 ...
- MySQL建表DDL规范(欢迎补充)
MySQL建表DDL规范(欢迎补充) 基本规范: 表名和字段名全大写,一般表名以T开头 脚本需支持可重复执行,带IF NOT EXISTS ,但不可带DROP语句 字符集使用utf8mb4 (CHAR ...
- SkiaSharp 之 WPF 自绘 投篮小游戏(案例版)
此案例主要是针对光线投影法碰撞检测功能的示例,顺便做成了一个小游戏,很简单,但是,效果却很不错. 投篮小游戏 规则,点击投篮目标点,就会有一个球沿着相关抛物线,然后,判断是否进入篮子里,其实就是一个矩 ...
- Flask像Jenkins一样构建自动化测试任务
flask这个框架很轻量,做一些小工具还是可以很快上手的. 1.自动化 某一天你入职了一家高大上的科技公司,开心的做着软件测试的工作,每天点点点,下班就走,晚上陪女朋友玩王者,生活很惬意. 但是美好时 ...