ELK日志分析系统
ELK日志分析系统
日志主要包括系统日志/var/log
应用日志
安全日志secure,
rsyslog远程传输日志进行汇总集中化管理,日志统计和检索又成为一件比较麻烦的事情,、
1、完整日志系统基本特征
收集:能够采集多种来源的日志数据
传输:能够稳定的把日志数据解析过滤并传输到存储系统
存储:存储日志数据
分析:支持 UI 分析
警告:能够提供错误报告,监控机制
集中式管理日志
服务器数量较少时,rsyslog/脚本来统一收集日志,汇总到一个专门存放日志的日志服务器保存管理,把需要的日志文件传到windows上,使用专业的文本打开分析日志
服务器数量较多时,ELK,收集日志,存储日志,展示日志(缺点服务器至少3-5台。
ELK是一套完整的日志集中处理方案,将elasticsearch,logstash和kiabana三个开源工具配合使用
elasticsearch:存储检索搜索引擎,存储各类日志
kiabana:数据可视化dashbord,kibana提供图形化的web界面浏览。
Logstash:作为数据收集引擎。它支持动态的从各种数据源搜集数据,并对数据进行过滤、分析、丰富、统一格式等操作,然后存储到用户指定的位置,一般会发送给 Elasticsearch。
Logstash 由 Ruby 语言编写,运行在 Java 虚拟机(JVM)上,是一款强大的数据处理工具, 可以实现数据传输、格式处理、格式化输出。Logstash 具有强大的插件功能,常用于日志处理。
filebeat代替logstash以减轻对服务器对业务内存的消耗,轻量级的开源日志数据搜集器。通常需要采集数据的客户端安装filveat,并指定目录与日志格式,filebeat就能快速收集数据,并发送给logstash进行解析,或直接发送给elsticsearch存储,常用于EFLk的架构中
消息队列(kafka,rabbitMQ)来解决高蜂日志进行晓峰和缓冲
对整个应解耦(你该发发,我需要再拿)
elicticsearch服务器要用4G以上
elk原理
logstash作为日志搜捕其,从数据源采集数据,并对数据进行过滤,格式化处理,然后交给Elasticsearch存储,kibanan对日志进行可视化处理
如果master挂掉一半集群会瘫痪三台以上奇数台
data数据节点负责数据的写入和查询,要求内存大
client客户端节点负责任务分发,数据汇总和查询分担数据几点压力
mixed混的节点默认为true
如何发现节点
通过zen discover 用elasticserch默认单播 ping来发现节点
transport.tcp.port:9300集群内部用9300通信
http.port:9200对外端口
-f根据配置文件输入
-e命令行输入
-l指定日志文件名称
创建索引