赞
踩
ELK主要由ElasticSearch、Logstash和Kibana三个开源工具组成,还有其他专门由于收集数据的轻量型数据采集器Beats。
Elasticsearch :分布式搜索引擎。具有高可伸缩、高可靠、易管理等特点。可以用于全文检索、结构化检索和分析,并能将这三者结合起来。Elasticsearch 是用Java 基于 Lucene 开发,现在使用最广的开源搜索引擎之一,Wikipedia 、StackOverflow、Github 等都基于它来构建自己的搜索引擎。
Logstash :数据收集处理引擎。支持动态的从各种数据源搜集数据,并对数据进行过滤、分析、丰富、统一格式等操作,然后存储以供后续使用。
Kibana :可视化化平台。它能够搜索、展示存储在 Elasticsearch 中索引数据。使用它可以很方便的用图表、表格、地图展示和分析数据。
Filebeat:轻量级数据收集引擎。相对于Logstash所占用的系统资源来说,Filebeat 所占用的系统资源几乎是微乎及微。它是基于原先 Logstash-fowarder 的源码改造出来。
Elasticsearch、Logstash、Kibana、Filebeat安装的版本号必须全部一致,不然会出现kibana无法显示web页面。
准备工作:
创建elk目录,并在elk目录下创建四个子文件夹
安装docker及docker-compose
安装方法网上自行搜索,本文不做介绍
分别拉取所需镜像,命令如下
docker pull elasticsearch:7.5.0 docker pull logstash:7.5.0 docker pull kibana:7.5.0 docker pull elastic/filebeat:7.5.0
- 1
- 2
- 3
- 4
进入filebeat目录,创建filebeat.yml文件,内容如下:
filebeat.config:
modules:
path: ${path.config}/modules.d/*.yml
reload.enabled: false
processors:
- add_cloud_metadata: ~
filebeat.inputs:
- type: log
paths:
-/*.log
output.logstash:
hosts: ["logstash:5044"]
进入logstash目录,创建logstash_stdout.conf文件,内容如下:
input {
beats {
port=>5044
host=>"0.0.0.0"
}
}
output {
stdout {codec=>rubydebug}
}
进入到elk文件夹,创建docker-compose.yml文件,文件内容如下
version: "3.0" services: elasticsearch: image: elasticsearch:7.5.0 environment: - "discovery.type=single-node" volumes: - ./es/data:/usr/share/elasticsearch/data - ./es/plugins:/usr/share/elasticsearch/plugins container_name: es restart: always ports: - "9200:9200" - "9300:9300" networks: - elk filebeat: image: elastic/filebeat:7.5.0 volumes: - type: bind source: "./filebeat/test.log" target: "/test.log" - type: bind source: "./filebeat/filebeat.yml" target: "/usr/share/filebeat/filebeat.yml" networks: - "elk" depends_on: - "logstash" logstash: image: logstash:7.5.0 container_name: logstash volumes: - type: bind source: "./logstash/logstash_stdout.conf" target: "/usr/share/logstash/pipeline/logstash.conf" networks: - "elk" kibana: image: kibana:7.5.0 ports: - "5601:5601" networks: - "elk" networks: elk: driver: bridge
在文件夹里运行docker-compose up -d,运行完成后访问:http://localhost:9200 ,显示如下页面表示安装完成
{ "name" : "e6c6ab6978c3", "cluster_name" : "docker-cluster", "cluster_uuid" : "EmFmVBwBQzqHCE3xtDaRYA", "version" : { "number" : "7.5.0", "build_flavor" : "default", "build_type" : "docker", "build_hash" : "e9ccaed468e2fac2275a3761849cbee64b39519f", "build_date" : "2019-11-26T01:06:52.518245Z", "build_snapshot" : false, "lucene_version" : "8.3.0", "minimum_wire_compatibility_version" : "6.8.0", "minimum_index_compatibility_version" : "6.0.0-beta1" }, "tagline" : "You Know, for Search" }
访问http://localhost:5601,显示kibana主界面
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。