学习思路
- 名词解释
- 资料连接
目前生产上使用ELK已经很成熟,本文只是搜索部分资料,了解其原理即可
一、名词解释
ELK分别为:
Elasticsearch
: 核心中的核心组件,基于著名的全文检索引擎lucence
的一个分布式版本。由于扩展成分布式,容量和性能得到极大的提升,使得Elasticsearch
得以成为目前许多大数据产品和大数据架构的核心组件。Logstash
: 一个灵活的数据传输和处理系统,在beats出来之前,还负责进行数据收集。Logstash
的任务,就是将各种各样的数据,经过配置转化规则,统一化存入Elasticsearch
。使用Ruby
开发的Logstash
在灵活性上,确实非常出色。不过性能一直是被诟病的问题。Kibana
: 展示组件,基于angularjs
。从Elasticsearch
中读取数据并展示。具有强大而且灵活的界面配置。
由于Logstash
在数据收集上并不出色,而且作为agent,性能并不达标。elastic
发布了beats
系列轻量级采集组件。至此,elastic
形成了一个完整的生态链和技术栈,成为大数据市场的佼佼者。本文我们重点来谈一谈beats
。
beats
beats是一组轻量级采集程序的统称,这些采集程序包括并不限于:
- filebeat: 进行文件和目录采集,主要用于收集日志数据。
- metricbeat: 进行指标采集,指标可以是系统的,也可以是众多中间件产品的,主要用于监控系统和软件的性能。
- packetbeat: 通过网络抓包、协议分析,对一些请求响应式的系统通信进行监控和数据收集,可以收集到很多常规方式无法收集到的信息。
- Winlogbeat: 专门针对windows的event log进行的数据采集。
- Heartbeat: 系统间连通性检测,比如icmp, tcp, http等系统的连通性监控
二、参考资料
公众号记录,源码,微服务系列,请帮忙关注