天天看点

容器云平台No.9~kubernetes日志收集系统EFK

scofield 菜鸟运维杂谈

EFK,全称Elasticsearch Fluentd Kibana ,是kubernetes中比较常用的日志收集方案,也是官方比较推荐的方案。

通过EFK,可以把集群的所有日志收集到Elasticsearch中,然后可以对日志做分析。一般用于故障排查,数据分析等。。。

数据流示意图

容器云平台No.9~kubernetes日志收集系统EFK

https://github.com/kubernetes/kubernetes/tree/master/cluster/addons/fluentd-elasticsearch

小技巧,如果只希望下载github项目的某一个目录,可以使用svn,这里就只下载fluentd-elasticsearch目录,

这里因为是学习,一步步安装,感兴趣的可以看官方项目

存储服务是基础,需要先部署,其他两个服务运行的时候需要连接es。

1、编写efk-es-statefulset.yaml

2、执行部署命令

这里需要注意,如果长时间下载不下来镜像,可以自行先将镜像下载,要不然可能会一直不成功

本文把服务都部署到命名空间:efk

3、验证es是否正常运行

以上, elasticsearch就部署好了,接下来部署kibana

1、编写efk-kibana.yaml

3、验证kibana

服务以及通过NodePort暴露,通过IP+32352,可以访问到kibana web界面,如图所示

容器云平台No.9~kubernetes日志收集系统EFK

下一步,我们来部署日志收集客户端Fluentd

1、使用configmap创建fluentd配置文件

配置比较长,可以查看链接,这里就不贴出来了

https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/fluentd-elasticsearch/fluentd-es-configmap.yaml

2、执行部署

3、创建fluentd-es-ds.yaml

4、执行部署

5、查看部署结果

从输出信息可以看到,整套日志收集系统已经全部正常运行,现在就可以使用kibana查看收集到的日志了

容器云平台No.9~kubernetes日志收集系统EFK

至此日志收集系统搭建完毕,EFK更多用途后面会陆续介绍,也可以自行前往官网查看。

容器云平台No.9~kubernetes日志收集系统EFK

注:文中图片来源于网络,如有侵权,请联系我及时删除。