ELK是由 Elasticsearch、Logstash和Kibana 三部分组件组成。
- Elasticsearch 是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。
- Logstash 是一个完全开源的工具,它可以对你的日志进行收集、分析,并将其存储供以后使用。
- kibana 是一个开源和免费的工具,它可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助您汇总、分析和搜索重要数据日志。
- Filebeat 是用于单用途数据托运人的平台。它们以轻量级代理的形式安装,并将来自成百上千台机器的数据发送到 Logstash 或 Elasticsearch。
Docker 镜像统一从 https://hub.docker.com/ 下载 (安装时请使用统一版本)。保险起见我安装的是7.17.1版本
一、Docker 安装镜像
官网镜像地址:
https://hub.docker.com//elasticsearch
https://hub.docker.com//kibana
https://hub.docker.com//logstash
https://hub.docker.com//filebeat
- Docker 安装启动 Elasticsearch
访问:http://IP:9200 Elasticsearch 安装启动完成
- Docker 安装启动 Kibana
- Docker 安装启动 logstash
- Docker 安装启动 filebeat
二、创建索引,查看ELK抓取日志
- 进入Stack management
- 选择 Kibana->索引模式->创建索引
可以看到右侧已经自动获取到我在logstash配置文件下简建立的index索引:/usr/share/logstash/conf.d/my.conf
- 选择Discovre
可以看到监控的/var/log/messages以及/usr/local/nginx/logs/日志文件都显示出来了。