ELK是由 Elasticsearch、Logstash和Kibana 三部分组件组成。
Elasticsearch 是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。
Logstash 是一个完全开源的工具,它可以对你的日志进行收集、分析,并将其存储供以后使用
kibana 是一个开源和免费的工具,它可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助您汇总、分析和搜索重要数据日志。
Filebeat 是用于单用途数据托运人的平台。它们以轻量级代理的形式安装,并将来自成百上千台机器的数据发送到 Logstash 或 Elasticsearch。
Metricbeat是一个开源和免费的工具,定期收集操作系统或应用服务的指标数据,存储到Elasticsearch中,进行实时分析。Metricbeat组成:Metricbeat有2部分组成,一部分是Module,另一部分为Metricset。
Docker 镜像统一从 https://hub.docker.com/ 下载 (安装时请使用统一版本) 用的是目前最新的版本 7.9.3
本环境部署在测试服务器,关于docker的一些使用请自行百度,安装的时候注意防火墙的端口,我这里直接关闭了防火墙
一、Docker 安装 Elasticsearch
官网镜像地址:https://hub.docker.com/_/elasticsearch
# 下载镜像 查看镜像
docker pull logstash:7.9.3
docker images
在工作目录建立一个 docker 目录 并在里面创建了 logstash 目录,用来存放所有配置
# 创建自定义的网络(用于连接到连接到同一网络的其他服务(例如Kibana))
docker network create somenetwork# 运行 elasticsearch
docker run -d --name elasticsearch --net somenetwork -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.9.3# 查看容器状态
docker ps
# 检测 elastics