ELK 实时日志平台搭建并在 Spring Boot 和 Nginx 项目中使用
目录:
- ELK简介
- ELK的工作原理
- Elasticsearch
- Logstash
- Kibana
- Spring Boot 中使用 ELK
- Nginx 中使用 ELK
一. ELK简介
ELK 是一个开源的实时日志分析平台,它主要由 Elasticsearch、Logstash 和 Kiabana 三部分组成。
-
Elasticsearch是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等
-
Logstash是一个完全开源的工具,他可以对你的日志进行收集、过滤,并将其存储供以后使用(如,搜索)
-
Kibana 也是一个开源和免费的工具,Kibana可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助您汇总、分析和搜索重要数据日志。
二.ELK 的工作原理图
三. Elasticsearch
3.1 Elasticsearch 简介
Elasticsearch (ES)是一个分布式的 Restful 风格的搜索和数据分析引擎,它具有以下特点:
- 查询:允许执行和合并多种类型的搜索 — 结构化、非结构化、地理位置、度量指标 — 搜索方式随心而变。
- 分析:Elasticsearch 聚合让您能够从大处着眼,探索数据的趋势和模式。
- 速度:很快,可以做到亿万级的数据,毫秒级返回。
- 可扩展性:可以在笔记本电脑上运行,也可以在承载了 PB 级数据的成百上千台服务器上运行。
- 弹性:运行在一个分布式的环境中,从设计之初就考虑到了这一点。
- 灵活性:具备多个案例场景。支持数字、文本、地理位置、结构化、非结构化,所有的数据类型都欢迎。
3.2 安装
3.2.1 安装目录:
mkdir -p server/{
application, tools}
cd server/tools
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.3.0-linux-x86_64.tar.gz
下载安装之后进行解压
tar -avxf elasticsearch-7.3.0-linux-x86_64.tar.gz
#进入解压后的文件
cd elasticsearch-7.3.0-linux-x86_64
#可根据自身服务器的配置进行修改jvm的参数
vim /conf/jvm.options
配置修改成功之后,就可以进行启动
cd elasticsearch-7.3.0-linux-x86_64
#!!!!:需要注意的是 elasticSearch 是不允许使用roo用户进启动的, 因此需要创建一个用户
useradd elk
#切换至此目录 分配权限 (注意:如果没有分配权限,在启动时,容易报错)
chown -R elk:elk elasticsearch-7.3.0-linux-x86_64
#一切成功之后进行启动
./bin/elasticsearch
#终端输入
[root@ElasticSearch-Server ~]# curl 127.0.0.1:9200
{
"name" : "ElasticSearch-Server",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "E0ci937JSQ6-SekhOVvJ-g",
"version" : {
"number" :