elk是三个开源软件的缩写,分别是:Elasticsearch、Logstash、Kibana 。由于Logstash 客户端太占用资源,对服务器的要求比较高,后来FileBeat出现了 ,解决了资源问题,官方也推荐这个工具。
Elasticsearch:实时全文搜索和分析引擎,提供搜集、分析、存储数据三大功能
Logstash:日志收集,分析,过滤并转化到对应的存储库
Kibana:一个基于Web的图形界面,用于搜索、分析和可视化存储在 Elasticsearch指标中的日志数据
Filebeat:监控日志文件、转发。 需要收集数据的服务器端需要安装这个
如上图你可以看出来,FileBeat 将数据 通过队列 发给 Logstash ,然后Logstash 在将数据给 Elasticsearch 存储。kibana结合nginx 提供web界面
一、环境准备
准备工作
设置官方源
## 下载并安装公共签名密钥rpm —import https://artifacts.elastic.co/GPG-KEY-elasticsearch ## 设置repo内容vim /etc/yum.repos.d/elasticsearch.repo ## 在repo中添加如下内容[elasticsearch-6.x]name=Elasticsearch repository for 6.x packagesbaseurl=https://artifacts.elastic.co/packages/6.x/yumgpgcheck=1gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearchenabled=1autorefresh=1type=rpm-md
Java环境安装
elasticsearch 需要java环境支持,执行如下命令
## 安装java 环境yum install java -y## 验证是否安装好java -version
Elasticsearch 安装和配置
yum -y install elasticsearch##设置为自启动systemctl enable elasticsearch
配置
配置文件路径:/etc/elasticsearch/elasticsearch.yml
核心参数
命令介绍
## 启动service elasticsearch {start|restart|reload} ## 停止service elasticsearch stop
验证
curl -X GET http://localhost:9200 输出结果如下{ “name” : “node-1”, “cluster_name” : “app-log”, “cluster_uuid” : “oVk4kUzKTCOsc2zaViOMXA”, “version” : { “number” : “6.8.13”, “build_flavor” : “default”, “build_type” : “rpm”, “build_hash” : “be13c69”, “build_date” : “2020-10-16T09:09:46.555371Z”, “build_snapshot” : false, “lucene_version” : “7.7.3”, “minimum_wire_compatibility_version” : “5.6.0”, “minimum_index_compatibility_version” : “5.0.0” }, “tagline” : “You Know, for Search”}