一、ELK介绍

  ELK是Elasticsearch、Logstash、Kinbana的简称,是为了解决当下分布式系统中对日志难以收集、分析,针对系统中出现问题后需要分析日志,而顺势产生的一种较好的解决方案。ELK满足服务化系统的日志分析的需求,且由于是开源的项目,所以变得越来越流行。另外的一款日志分析系统是Splunk企业级日志分析系统,只是使用成本较高。

ElasticSearch:是搜索服务器,基于lucene搜索引擎的NoSQL数据库。在企业中,有些数据量较大,搜索频率较高的场景,关系型数据库无法满足需要,比如订单表数据量比较大,不考虑分库分表的情况下,频繁从单表中查询订单,会影响性能。

Logstash:主要负责日志数据的采集,从日志源(如,应用服务器)采集日志,然后传输给Elasticsearch,可理解为一条管道。另外还可以过滤、处理和转换数据。

Kinbana:是以JavaScript实现的可视化界面展示系统,用来展示ElasticSearch数据。丰富的图表和可视化能力,可用它对日志进行汇总、搜索、可视化、分析、查询。

二、安装

官网的安装包下载网速忒慢,往往都是等到崩溃,所以我有百度云盘的链接,包含了三个,版本是6.2.2。

链接: https://pan.baidu.com/s/1-FcKzO_HWp7REXDbS0qfrw 提取码: yb46

Logstash安装:

先把压缩文件zip解压到指定目录,比如我的是D:\sortwareLocation\programSoftwareLocation\ELK\logstash-6.2.3。并把logstash-6.2.3/bin加入到环境变量,目的是为了能自动获取执行命令。新建配置文件apache_to_Elasticsearch.conf,输入内容为:

input{
    stdin{}
}
output {
elasticsearch {
hosts => ["localhost:9200"]
index => "test-logstash-%{+YYYY-MM}"         
}
}


通过logstash的input=>file读取指定日志文件,通过output=>elasticsearch写入的elasticsearch中

执行命令:logstash -f  apache_to_Elasticsearch.conf,等待启动成功后,输入比如“电视剧肯德基”,如下显示

日志微服务如何设计 日志服务系统_elasticsearch

 

 

 

elasticsearch安装:

解压文件,配置环境变量,按默认配置启动双击elasticsearch.bat即可。打开http://localhost:9200/,如图所示

日志微服务如何设计 日志服务系统_日志微服务如何设计_02

 

 

 

 

Kibana 安装:

解压文件,配置环境变量,按默认配置启动双击kibana.bat即可。打开http://localhost:5601/,如图所示。新建一个index pattern,命名规则需要和elasticsearch中存在的index保持一致,如我之前设置的是test-logstash-%{+YYYY-MM}。新建好了之后重新回到Discover,即能看到数据。

日志微服务如何设计 日志服务系统_日志微服务如何设计_03

 

 

 

日志微服务如何设计 日志服务系统_数据_04

 

 

 

 到此算是成功安装,不过这三个服务中还有很多细节需要后期不断去深入学习。

总结得有点乱,不值得参考,我仅是为了做一个笔记!