ELK-ElasticSearch+Logstash+Kibana

ELKElasticSearch+Logstash+Kibana三个组件的缩写,应用场景比较广泛:

1,  用于微服务架构中日志收集、分析、展示功能的基础组件。

2,  用于网站操作动作捕获监控、分析、展示功能的基础组件。



ElasticSearch:承担存储和分析功能,原理和具体操作前面已经花了大量篇幅来介绍。

LogstashELK架构的内容来源,负责收集和简单数据处理。

Kibana:提供友好展示、报表统计功能

 

常用部署模式:(一般用法,变种比较多)



需要强调的是:

1,  3个本质上是完全独立的3个组件,只是这里搭配起来出奇效而已,并不是缺一不可的。

例如我可以直接通过java客户端将日志插入到ElasticSearch中,不要logstash;或者我运维人员直接去ElasticSearch上执行索引命令,不要Kibana;又或者我压根不用分析我的日志,我只是将分布式的日志收集在一起,只使用Logstash

2,  3个组件只是基础,搭配其它组件会产生更大的效益。

例如我日志量巨大Logstash收集时出现瓶颈,我可以在logstash前后搭建一块共享缓存Redis或者消息队列KafkaRabbitMQ

 

Logstash

下载地址https://www.elastic.co/downloads/logstash

ElasticSearch一样属于下载即安装。

wget https://artifacts.elastic.co/downloads/logstash/logstash-5.6.3.zip

unzip logstash-5.6.3.zip

运行文件在:/bin/logstash(or logstash.bat)

配置文件在:/config

Logstash 集成的配置文件需要自己定制,准备一个 logstash.conf 为名的配置文件,里面配置好 input filter output 的集成信息,然后运行 bin/logstash -f logstash.conf 命令启动 logstash

启动信息中可以看到我们配置的信息,outES的地址,input监听日志输入地址。

 

原理图:

Logstash分为3部分:输入、转换、输出3部分,这也是Logstash.conf配置的3部分。

例如:

# For detail structure of this file
# Set: https://www.elastic.co/guide/en/logstash/current/configuration-file-structure.html
input {
  # For detail config for log4j as input, 
  # See: https://www.elastic.co/guide/en/logstash/current/plugins-inputs-log4j.html
  file {
    type => "server"
    path => "C:\spring\workspace\demo-elk-trace1\build\elk-trace1.json"
  }
}
filter {
  #Only matched data are send to output.
}
output {
  # For detail config for elasticsearch as output, 
  # See: https://www.elastic.co/guide/en/logstash/current/plugins-outputs-elasticsearch.html
  elasticsearch {
    action => "index"          #The operation on ES
    hosts  => "192.168.226.133:9200"   #ElasticSearch host, can be array.
    index  => "applog"         #The index to write data to.
  }
}

输入是一个文件,监听文件增量的变化;filter这里什么都没做,可以做一些格式转换、内容添加和删减等工作;输出这里是输出到了一个ElasticSearch,配置了ES的地址信息和索引位置。

输入输出比较灵活,可以对接文件、IP端口服务、RedisMQ等等。

 

ElasticSearch:前面博文有详细介绍

ElasticSearch原理

ElasticSearch单节点安装

ElasricSearch集群搭建

ElasticSearch 命令-(基础篇)

ElasticSearch 命令-(进阶篇)


Kibana:前面博文有安装使用介绍

ElasticSearch 命令-(基础篇)


Kibana这里可以通过ElasticSearch命令直接搜索日志内容:例如搜索Spring Cloud Sleuth中一次调用链经过的结点和日志信息:

该场景使用在ELK作为分布式系统日志收集分析功能使用。


还可以预先配置好索引信息检测数据的增长量:

(该场景使用在ELK作为网站操作动作监控收集分析功能)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值