概述
kubernetes官方插件使用EFK来处理容器日志, 其中F指代Fluentd(Fluentd属于CNCF项目), 用于收集容器的日志。但是由于Fluentd用起来的确不怎么舒服(Ruby风格配置文件), 而Logstash又过于重量级(光启动就需要消耗大约500M内存), 而Elatic家族的Beats系列中的Filebeat既轻量又无依赖, 因此是作为DaemonSet部署的不二之选。
架构
在进行日志收集的过程中, 我们首先想到的是使用Logstash, 因为它是ELK stack中的重要成员, 但是现在的ELK家族的产品有了新的变化:
从中可以看出Logstash的定位变了, 它用于日志的原始数据的分析和转换(grok), 因此在轻量级的方案中首选Beats系列, 下面是基于ELK改造过后的基于Filebeat的容器日志处理方案:
依赖部署
在Kubernetes中以DaemonSet部署Filebeat之前, 我们需要先做如下准备:
- 安装Elasticsearch, Kibana
- 安装Filebeat用于测试EFK已经能正常工作
- 以DaemonSet部署Filebeat
部署Elasticsearch和Kibana
在部署Filebeat之前需要先部署Elasticsearch和Kibana, 关于这2部分的部署请参考:
最后
以上就是风趣水蜜桃为你收集整理的使用filebeat收集kubernetes容器日志的全部内容,希望文章能够帮你解决使用filebeat收集kubernetes容器日志所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复