ELK-ElasticSearch+Logstash+Kibana 桃扇骨 2022-06-07 11:49 225阅读 0赞 ELK,ElasticSearch+Logstash+Kibana三个组件的缩写,应用场景比较广泛: 1, 用于微服务架构中日志收集、分析、展示功能的基础组件。 2, 用于网站操作动作捕获监控、分析、展示功能的基础组件。 ElasticSearch:承担存储和分析功能,原理和具体操作前面已经花了大量篇幅来介绍。 Logstash:ELK架构的内容来源,负责收集和简单数据处理。 Kibana:提供友好展示、报表统计功能 常用部署模式:(一般用法,变种比较多) ![Center][] 需要强调的是: 1, 这3个本质上是完全独立的3个组件,只是这里搭配起来出奇效而已,并不是缺一不可的。 例如我可以直接通过java客户端将日志插入到ElasticSearch中,不要logstash;或者我运维人员直接去ElasticSearch上执行索引命令,不要Kibana;又或者我压根不用分析我的日志,我只是将分布式的日志收集在一起,只使用Logstash。 2, 这3个组件只是基础,搭配其它组件会产生更大的效益。 例如我日志量巨大Logstash收集时出现瓶颈,我可以在logstash前后搭建一块共享缓存Redis或者消息队列Kafka、RabbitMQ Logstash: 下载地址[https://www.elastic.co/downloads/logstash][https_www.elastic.co_downloads_logstash] 与ElasticSearch一样属于下载即安装。 wget [ https://artifacts.elastic.co/downloads/logstash/logstash-5.6.3.zip][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 。 ![Center 1][] 启动信息中可以看到我们配置的信息,out到ES的地址,input监听日志输入地址。 原理图: ![Center 2][] 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端口服务、Redis、MQ等等。 ElasticSearch:前面博文有详细介绍 [ElasticSearch原理][ElasticSearch] [ElasticSearch单节点安装][ElasticSearch 1] [ElasricSearch集群搭建][ElasricSearch] [ElasticSearch 命令-(基础篇)][ElasticSearch _-] [ElasticSearch 命令-(进阶篇)][ElasticSearch _- 1] Kibana:前面博文有安装使用介绍 [ElasticSearch 命令-(基础篇)][ElasticSearch _-] Kibana这里可以通过ElasticSearch命令直接搜索日志内容:例如搜索Spring Cloud Sleuth中一次调用链经过的结点和日志信息: 该场景使用在ELK作为分布式系统日志收集分析功能使用。 ![Center 3][] 还可以预先配置好索引信息检测数据的增长量: (该场景使用在ELK作为网站操作动作监控收集分析功能) ![Center 4][] ![Center 5][] [Center]: /images/20220607/9c72850fa92d4d4583583f6ef1f2a5d4.png [https_www.elastic.co_downloads_logstash]: https://www.elastic.co/downloads/logstash [https_artifacts.elastic.co_downloads_logstash_logstash-5.6.3.zip]: https://artifacts.elastic.co/downloads/logstash/logstash-5.6.3.zip [Center 1]: /images/20220607/ac28d30dd62845f48b8fde2c4b5974be.png [Center 2]: /images/20220607/fe781e8e0f0145a8b115be13e63d18bc.png [ElasticSearch]: http://blog.csdn.net/yejingtao703/article/details/78118392 [ElasticSearch 1]: http://blog.csdn.net/yejingtao703/article/details/78126750 [ElasricSearch]: http://blog.csdn.net/yejingtao703/article/details/78129262 [ElasticSearch _-]: http://blog.csdn.net/yejingtao703/article/details/78206284 [ElasticSearch _- 1]: http://blog.csdn.net/yejingtao703/article/details/78228491 [Center 3]: /images/20220607/e4d3dca4d25346dea42ef1ae82301dfc.png [Center 4]: /images/20220607/bcb2f4ab71064802a47be43c774d227c.png [Center 5]: /images/20220607/8a77c991c5f246a0b9ffef8a2db75d1c.png
还没有评论,来说两句吧...