AFei00 2020-07-26
说起ELK相信大家都不陌生,他可不是一个软件,是三个软件 logstash,elasticsearch,Kibana 组成的可以打造大规模日志实时处理的系统。
Elasticsearch 是一个基于 Lucene 的、支持全文索引的分布式存储和索引引擎,主要负责将日志索引并存储起来,方便业务方检索查询。
Logstash是一个日志收集、过滤、转发的中间件,主要负责将各条业务线的各类日志统一收集、过滤后,转发给 Elasticsearch 进行下一步处理。
Kibana是一个可视化工具,主要负责查询 Elasticsearch 的数据并以可视化的方式展现给业务方,比如各类饼图、直方图、区域图等。
这里我们就先说elasticsearch的安装和简单的应用。
首先我们要安装Java jdk (注意:要1.8以上版本的。),然后配置环境变量。
Java jdk的安装和配置我就不多说了,下面是Java jdk 下载:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html
安装Javajdk后,下载logstash 下载:https://www.elastic.co/cn/downloads/logstash 我用的是logstash 7.8 版本的,怎么选择版本看个人了。
解压后:
然后找到bin文件下elasticsearch.bat 双击运行:
运行完后:
然后到网页上输入 http://localhost:9200/ 如果出现下面内容说明你安装成功了。
安装成功后,有些人会问,如何往elasticsearch中写入日志呢?不急,后面我会介绍。
我们最好要安装一个head插件,因为它能让我们的elasticsearch简单的可视化。
head插件的下载:https://github.com/mobz/elasticsearch-head/archive/master.zip
在安装head之前我们还要下载一个node.js 辅助
node.js下载:https://nodejs.org/en/
下载完成后,接下来先安装node.js
点击安装程序,下一步,下一步即可:
检查是否真的安装成功 win+R 输入cmd ,输入 node -v 可以查看到版本
然后进入 head文件夹下:
按住shift键,然后右击,选择在此处打开命令:
进入输入界面:
输入 npm install -g grunt-cli 等待。。。。。。。。 然后在输入 npm insall 等待。。。。。。。。
如果出现以下显示说明执行成功:
在elasticsearch文件夹下的config文件夹下找到elasticsearch.yml ,打开添加
http.cors.enabled: true
http.cors.allow-origin: "*"
然后输入 npm run start.....
注意:node.js 的版本不一样,输入连接的命令也不一样 版本低的输入 grunt server 版本高的输入 npm run start
然后打开网页输入上面的路径 http://localhost:9100
这就是elasticsearch利用head插件的简单的可视化,利用这个可视化界面可以进行索引的创建和删除,数据的查找。
新建索引:
添加:
其他的就不多说了。。。。。。
我这里要说的是另一个创建索引的工具。postman测试工具。
点击安装,需要注册一下。安装完成后打开,利用postman工具创建索引并插入一条数据,点击发送:
查看可视化工具上的创建的索引信息:
查看插入的数据:
到这里elasticsearch和辅助工具都安装完了。但是我们可以看到所有的都是在本地完成的,那如何在服务器上安装,并且支持外网访问呢,这个我下一篇会做详细介绍!
另外一部分,则需要先做聚类、分类处理,将聚合出的分类结果存入ES集群的聚类索引中。数据处理层的聚合结果存入ES中的指定索引,同时将每个聚合主题相关的数据存入每个document下面的某个field下。