ElasticSearch实战-日志监控平台
1.概述
在项目业务倍增的情况下,查询效率受到影响,这里我们经过讨论,引进了分布式搜索套件——ElasticSearch,通过分布式搜索来解决当下业务上存在的问题。下面给大家列出今天分析的目录:
- ElasticSearch 套件介绍
- ElasticSearch 应用场景和案例
- 平台架构
下面开始今天的内容分享。
2.ElasticSearch 套件
2.1LogStash
LogStash是一个开源的、免费的日志收集工具,属于Elastic家族的一员,负责将收集的日志信息输送到ElasticSearch,为ElasticSearch提供数据源。
2.2ElasticSearch
ElasticSearch是一个开源的分布式搜索引擎,具备高可靠性,支持非常多的企业级搜索用例。像Solr4一样,是基于Lucene构 建的。支持时间索引和全文检索。官网:https://www.elastic.co 它对外提供一系列基于Java和HTTP的API,用于索引、检索、修改大多数配置。
2.3 Kibana
Kibana也是开源和免费的工具,同样也是Elastic家族的一员,它可以帮助我们汇总、分析和搜索重要数据日志,并且提供友好的Web可视化界面。它可以为LogStash和ElasticSearch提供一个可视化的Web界面。
下面我们来看看ElasticSearch的应用场景和案例。
3.ElasticSearch 应用场景和案例
在面对实时海量数据查询,实时搜索,全文搜索,ElasticSearch 都能够很好的去胜任,它是基于 Lucene、RESTful、分布式、面向云计算设计、实时搜索、全文搜索、稳定、高可靠、可扩展、安装和使用方便。下面给大家介绍一些场景的案例。
- Github
这个开源的托管平台,对于我们开发者来说,并不陌生,我们基本每天都会去访问Github,而Github使用ElasticSearch来实 现搜索,运行在多个集群上。由于代码搜索索引很大,Github专门指定一个集群。Github使用Elasticsearch搜索20TB的数据,包括 13亿的文件和1300亿行的代码。
- Mozilla
Mozilla公司因Firefox而闻名,它目前使用Elasticsearch将测试的结果以JSON的格式进行存储,开发人员可以非常方便的查找BUG。
- Sony
Sony公司使用Elasticsearch作为信息搜索引擎,以提供对外界的查询响应。
另外,还有很多企业也用到了ElasticSearch去作为一个分布式搜索引擎,这里就不一一列举了。
4.平台架构
下面,我给大家用一个图来说明日志监控平台的架构,如下图所示:
通过上图,我们可以清晰的看到日志平台整个流向过程,下面我给大家来解释图中的各个环节的含义。首先,多个独立的Agent,这里就是图左边的 三个LogStash节点,他们负责收集不同来源的数据,由一个Indexer负责进行汇总和分析数据,在这个当中有一个中间过程,这里我们使用了 Broker,用Redis来实现这部分功能,其作用充当一个缓冲区,之后由ElasticSearch负责存储和搜索数据,最后由前段的Kibana可 视化我们收集的数据。
这里说明几点需要注意的地方:
- 采用LogStash收集各种日志数据,其类型可以是:系统日志、文件、Redis、MQ等等。
- Broker作为远程代理和中心代理的缓冲区,使用Redis进行实现,原因有二:其一,可以提高系统的性能;其二,可以提高系统的高可用性,当中心代理提取数据失败时,数据保存在Redis中,可以规避数据丢失的风险。
- 中心代理使用LogStash,负责从Broker中获取数据,可以执行相关的分析和处理,它提供有Filter功能。
- ElasticSearch用于存储最终的数据,并对外提供搜索功能,基于Restful。
- Kibana提供一个简单、丰富的Web View可视化界面,用于可视化ElasticSearch集群中的数据,支持各种查询、统计和展示。
5.总结
这篇博客只是给大家入个门,让大家通过一个日志监控平台的案例去熟悉ElasticSearch套件的使用,以及它的背景。后面我会专门用于一 个ElasticSearch实战系列,来给大家分析这部分内容,包括平台的搭建部署,到平台的实现这一整个流程,这篇文章大家能够有个印象,熟悉各个套 件的作用即可。
6.结束语
这篇博客就和大家分享到这里,如果大家在研究学习的过程当中有什么问题,可以加群进行讨论或发送邮件给我,我会尽我所能为您解答,与君共勉!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Kafka实战-Kafka到Storm
1.概述 在《Kafka实战-Flume到Kafka》一文中给大家分享了Kafka的数据源生产,今天为大家介绍如何去实时消费Kafka中的数据。这里使用实时计算的模型——Storm。下面是今天分享的主要内容,如下所示: 数据消费 Storm计算 预览截图 接下来,我们开始分享今天的内容。 2.数据消费 Kafka的数据消费,是由Storm去消费,通过KafkaSpout将数据输送到Storm,然后让Storm安装业务需求对接受的数据做实时处理,下面给大家介绍数据消费的流程图,如下图所示: 从图可以看出,Storm通过KafkaSpout获取Kafka集群中的数据,在经过Storm处理后,结果会被持久化到DB库中。 3.Storm计算 接着,我们使用Storm去计算,这里需要体检搭建部署好Storm集群,若是未搭建部署集群,大家可以参考我写的《Kafka实战-Storm Cluster》。这里就不多做赘述搭建的过程了,下面给大家介绍实现这部分的代码,关于KafkaSpout的代码如下所示: KafkaSpout类: package cn.hadoop.hdfs.storm; import...
- 下一篇
ElasticSearch实战-入门
1.概述 今天接着《ElasticSearch实战-日志监控平台》一文来给大家分享后续的学习,在《ElasticSearch实战-日志监控平台》中给大家介绍一个日志监控平台的架构方案,接下来给大家分享如何去搭建部署这样一个平台,给大家做一个入门介绍。下面是今天的分享目录: 搭建部署 Elastic 套件 运行集群 截图预览 下面开始今天的内容分享。 2.搭建部署 Elastic 套件 搭建 Elastic 套件较为简单,下面我们开始去搭建部署相关套件,首先我们准备必要的环境。 2.1 基础软件 大家可以 Elastic 的官方网站下载对应的安装包,地址如下所示: [下载地址] 另外,一个基础环境就是需要用到 JDK,ES 集群依赖 JDK,地址如下所示: [下载地址] 2.2Logstash 部署 这里我们将 Logstash 的服务部署在中心节点中,其核心配置文件如下所示: central.conf input { redis { host => "10.211.55.18" port => 6379 type => "redis-input" data_type ...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Docker安装Oracle12C,快速搭建Oracle学习环境
- SpringBoot2全家桶,快速入门学习开发网站教程
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- CentOS关闭SELinux安全模块
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- CentOS6,CentOS7官方镜像安装Oracle11G
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Hadoop3单机部署,实现最简伪集群