啥是ELK
ELK组成
-
Elasticsearch 弹性搜索 分布式、RESTful 风格的搜索和分析。 Elastic 代理,Elastic Cloud,Elastic 企业搜索 -
Logstash 日志藏匿处 采集、转换、充实,然后输出。 -
Kibana 实现数据可视化。在 Elastic Stack 中进行导航。 -
Beats 以轻量化方式收集、解析和传输数据。
ELK工作模式
-
kibana用来调用Elasticearch接口API,查询数据 产生错误日志后,运维、开发、测试都要看日志 -
通过kafka消息列队或者redis缓存服务器缓存产生的日志 -
由logstash从Kafka或者redis取日志后再放到Elasticsearch -
看日志量来部署多个logstash,去kafka或redis消费日志 最好是上万兆和固态 -
可以通过监控去看Kafka或redis上是否有日志堆积,如果长时间日志堆积,需要提高logstash的性能或者增加部署logstash 普罗米修斯在自定义监控项上没有zabbix灵活 -
至少3个,多则7个或者13个Elasticearch做集群,支持上T日志的处理 -
早期没有filebeat的时候都需要装Java,后来引入了轻量级的组件,例如beat,就不需要再装
Elastic search
一个服务的日志会放在一个index全文索引中
大部分公司都是用来搜索日志的,也可以用来搜索商品小炒肉
以文档为导向存储
Logstas
具有实时传输能力的数据收集引擎,通常过插件实现日志的收集和转发
Kibana
为Elasticsearch提供数据可视化查看的界面 柱状图饼图等以每分钟为单位显示显示
使用ELK的好处
内存溢出zabbix可能检测不到,在logstash能看见,一旦出现,则去tomcat上重启
故障自治愈要写脚本吧
nginx加一个用户认证,kibana用户认证要付费
还有一个日志收集客户端,可以配合EFK Fluentd 云原生社区支持的
换不换都无所谓,毕竟额ELK是一个个完整的组合了
|