引言
随着业务量的增长,每天业务服务器将会产生上亿条的日志,单个日志文件达到几个GB,这是我们发现用linux自带的工具,cat,grep,awk分析越来越力不从心了,而且除了服务器日志,还有程序保存日志,分布在不同的服务器,查阅繁琐。
一,ELK简介
ELK是三个软件的统称,即Elasticsearch、Logstash和Kibana三个开源软件的缩写。这三款软件都是开源软件,通常配合使用,并且都先后归于Elastic.co企业名下,故被简称为ELK协议栈。ELK主要用于部署在企业架构中,收集多台设备上多个服务的日志信息,并将其统一整合后提供给用户。它可以从任何来源、任何格式进行日志搜索、分析与可视化展示。
1,ELK日志分析系统的组成
在ELK架构中,elastisearch,logstash和Kibana三款软件作用如下:
elasticsearch:通过搭建群集:存储日志数据,索引日志数据
logstash:收集日志,收集到了后台给es存储
kibana:视图形式展现日志信息,更加人性化
1.1 Elasticsearch(es)
Elasticsearch是一个高度可扩展的全文搜索和分析引擎,基于Apache Lucence(事实上Lucence也是百度所采用的搜索引擎)构建,能够对大容量的数据进行接近实时的存储,搜索和分析操作。
1.2 Logstach
Logstach是一个数据分析和可视化平台,通常与Elasticsearch配合使用,