- ELK是什么?
- ELK的特点:
- 查看日志的方式:
- ELK搭建完成之后的用法
- 1.1 收集哪些日志
- 1.2 收集到之后如何展示出来
- 1.3 收集到之后该怎么做
- 1.4 ELK的核心组件的功能
- 1.5 ELK日志处理分析的步骤
- 1.6 elasticsearch的介绍
- 1.7Kibana
ELK通俗来讲,是一个Elasticsearch(日志存储和搜索)、Logstash(日志收集)、Kibana(日志查看),三个开源软件的作为主要功能的一个组合体。
ELK的特点:- 实时搜索、实时分析
- 分布式架构、实时文件存储
- 文档导向,所有对象都是文档
- 高可用,易扩展,支持集训,分片与复制
- 接口友好,支持josn
-
cat /var/local/messages
-
journalctl
-n:可以查看尾部十行的日志
-u:后面跟随服务的名字,可以单独查看。–since today是查看当天的日志
直接跟随脚本的路径名字,就能查看该脚本的日志记录
- systemctl status 服务名 #可以查看该服务的最新的五条日志
例如:kafka+zk(zookeeper):这种组合方式,来进行消息队列的统一编排与处理。以消息队列的形式在中间做缓冲、过滤等功能。以及还能兼容各种各样的接口。
ELK搭建完成之后,主要用于日志的收集,收集的条件、处理方式都在下面一一介绍
1.1 收集哪些日志- 系统日志:(可以进行收集tomcat日志)收集系统日志,一方面是为了监控系统的系统状态,资源的使用量等等都来进行监控与收集日志。
- 服务日志:mysql等数据库产生的慢查询日志、错误日志、普通日志。以及数据流向所经过的一些服务所产生的的日志信息。收集到之后,将对这些日志进行分析。
- 业务日志:log4j;程序或者实际跑的业务,都会存储在log4J中。在日程生产环境中,业务日志必须是需要收集的,因为需要分析用户的访问情况。
- kibana:第一种是以kibana的方式显示出来
- 可以将收集到的日志进行分析之后,以的可视化的情况进行展示,减轻管理人员的分析处理的压力。支持以3D的方式进行显示。
- grafana:第二种是以grafana的方式显示出来
- grafana是跟kibana类似,可以将日志以可视化的情况显示出来,相对于kibana,在某些方面更加的完善。支持以3D的方式进行显示。
- 分析日志,分析出错误日志等等可能会导致系统不能正常运转的日志信息
- 给予大数据分析,作为立体化展示的数据源
- 给研发使用(主要用于排障、解决bug等等)
- 统计数据流量、作为分析报告的数据源
收集、输出、格式化是由:Logstash
存储、创建/建立索引:Elasticsearch
作为日志收集之后的一个效果的展示:Kibana
1.5 ELK日志处理分析的步骤-
将日志进行几种化管理(beat)
基于filebeat、topbeat等功能实现
-
将日志格式化(logstash)
将收集到的日志进行翻译
-
对格式化后的数据进行索引和存储(elasticsearch)
基本功能存储,还有索引。
-
前端数据的展示(kibana)
主要是支持的可视化的展示方式,但是不止是kibana这一种
elasticsearch 的特性:
-
接近实时
- elasticsearch是一个搜索时间接近实时的搜索平台,从索引到指定的文档只需要及其轻微的延迟(通常是一秒左右)
-
集群化(cluster)
- 集群是由多个个体集合在一起的一个集合体
- 集群是为了高性能、高可用的一个目的性
-
节点(node)
- 集群中的一个部分,是集群中的一部分,是集群中单台服务器的一个标识作用
-
索引(index)
- 索引就是在里面拥有及其相似的文档的集合。可以非常方便的一次性查看
-
类型(type)
- 类型就是索引中的一个逻辑上的分区。通常是同一种类型的文件放在同一个索引中
-
文档(doucument)
- 在一个索引中的可以准备搜索的基础信息,同一种种类的文档就是一种类型
7. 分片和副本
做分片跟副本主要是为了扩展容量
1. 分割的主要原因
1. 水平分割扩展:横向扩展,可以增大存储容量 2. 分布式并行跨分片 *** 作:提高性能和吞吐量
2. 副本
如图,只是方便理解,实际环境中,可能并不是这种分配的方式。
1. 副本是对分片做的一个复制,在资源不充足的时候,会跟分片进行放在一起 2. 在分片之后,每个分片都会做一个副本,但是在存储的时候,一般不会存放在本地,存放在另外的节点上,提供一定的冗余性1.7Kibana
Kibana是一个针对elasticsearch的开源分析以及可视化的平台,用来搜索、查看等与存储在elasticsearch索引中的数据进行交互的 *** 作。
Kibana的主要功能:
-
elasticsearch无缝之集成:Kibana架构是为elasticsearch定制的架构,可以将任何结构化和非结构化的数据加入elasticsearch索引
-
整合数据:Kibana能够更好的处理海量的数据,并根据这些数据信息进行创建柱状图、折线图、散点图、直方图、饼图和地图等。
-
对复杂数据进行分析:Kibana能够提升elasticsearch分析能力,能够让其更加智能的分析数据,能够执行数学转换并且根据要求对数据切割分块。
-
让更多团队成员受益:强大的数据库可视化接口让各个业务岗位都能够从数据集合受益
-
接口灵活,分享更容易:使用Kibana可以更加方便的创建、保存、分享数据,并将可视化数据进行快速的交流
-
配置简单:Kibana的配置和启用方式都非常简单,用户体验非常友好。Kibana字啊带的Web服务器,可以进行快速启动并且运行。
-
可视化多数据源:Kibana可以非常方便地把来自Logstash、ES-Hadoop、Beats或者第三方技术的数据整合到elasticsearch,支持的第三方技术有:Apache、Flume、Fluentd等。
-
简单数据的发出:Kibana可以方便的导出对其感兴趣的数据,还可以将其与其他数据集合进行融合后再进行快速建模分析,发现新的结果。
上面大致介绍了一些ELK的原理以及部分核心组件的功能,等等现在就简单的介绍一下原理。
架构的搭建等等情况,等有时间再去整理一遍
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)