ELK平台调研:
正在总结一波操作
介绍
ELK由ElasticSearch、Logstash和Kiabana三个开源工具组成,用于集中化管理日志、分析、可视化。
- Elasticsearch是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。
- Logstash是一个完全开源的工具,他可以对你的日志进行收集、过滤,并将其存储供以后使用(如,搜索)。
- Kibana 也是一个开源和免费的工具,它Kibana可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助您汇总、分析和搜索重要数据日志。
场景应用
根据不同日志类型,有不同应用。日志有三种分类,包括:系统日志、应用程序日志、安全日志。系统运维和开发人员可以通过日志了解服务器软硬件信息、检查配置过程中的错误及错误发生的原因。经常分析日志可以了解服务器的负荷,性能安全性,从而及时采取措施纠正错误。
原理
Logstash收集AppServer产生的Log,并存放到ElasticSearch集群中,而Kibana则从ES集群中查询数据生成图表,再返回给Browser。
logstash它就是一个收集器而已,我们需要为它指定Input和Output(当然Input和Output可以为多个)。由于我们需要把Java代码中Log4j的日志输出到ElasticSearch中,因此这里的Input就是Log4j,而Output就是ElasticSearch。
Logstash工作原理
Logstash使用管道方式进行日志的搜集处理和输出。有点类似*NIX系统的管道命令 xxx | ccc | ddd,xxx执行完了会执行ccc,然后执行ddd。
在logstash中,包括了三个阶段:
输入input --> 处理filter(不是必须的) --> 输出output
每个阶段都由很多的插件配合工作,比如file、elasticsearch、redis等等。
每个阶段也可以指定多种方式,比如输出既可以输出到elasticsearch中,也可以指定到stdout在控制台打印。由于这种插件式的组织方式,使得logstash变得易于扩展和定制。
ELK平台搭建(查看下我们系统的环境、配置文件、启动方法)
搭建环境:java1.8
配置文件:
Es:
文件:config/elasticsearch.yml
Logstash:
文件:config/logstash.conf
Input{}、fileter{}、output{}三部分,{}配置插件
Ngix 配置:
log_format main '$remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent "$http_referer" "$http_user_agent" "$http_x_forwarded_for"';
正则
https://www.cnblogs.com/huangll99/p/6646859.html
Kibana:
文件:config/kibana.yml
启动方法:
先启动收集器logstash,然后启动ES,最后启动kibana
Es
l 启动:./bin/elasticsearch
l 停止:ctrl+C 页面:ip:http的node,
l ip1:9200 , 显示集群name和版本
l ip1:9200/_cluster/health?pretty, 查看es集群状态
Logstash
l 启动 ./bin/logstash agent -f config/logstash.conf
Kibana:
l 启动 ./bin/kibana 对应界面128.196.246.6:5601
ip2:5601/status
使用介绍
https://www.cnblogs.com/yiwangzhibujian/p/7137546.html
服务器地址:
el服务器地址128.196.246.6 u – p elsearch Zlg
cis :128.196.182.2 pfspeis logstash
参考:
https://www.cnblogs.com/beautiful-code/p/6125584.html
"constant_score" : {
------未完待续----