使用流利的,elsasticsearch和kibana获取运行在kubernetes pods中的tomcat容器的日志

时间:2016-03-22 07:52:39

标签: elasticsearch docker kubernetes fluentd

我们正在使用Kubernetes,我们在多个pod上运行多个tomcat / jws容器。使用流利,Elasticsearch和Kibana进行集中式日志记录的最佳方法是什么。 的主要目的是获取在pods中运行的tomcat日志(例如:access.log和catalina.log),以及部署在tomcat上的应用程序日志。 此外,我们需要区分来自不同pod的日志(tomcat容器)。 我按照下面的链接 的 https://access.redhat.com/documentation/en/red-hat-enterprise-linux-atomic-host/7/getting-started-with-containers/chapter-11-using-the-atomic-rsyslog-container-image 从这里我只能获得容器日志但无法获取tomcat日志。

-Praveen

1 个答案:

答案 0 :(得分:0)

看一下这个例子:

https://github.com/kubernetes/contrib/tree/master/logging/fluentd-sidecar-es

基本思想是在您的pod中部署一个额外的流畅容器,并在容器之间共享一个卷。应用程序容器将日志写入卷中,而流畅的容器只读取相同的卷并将日志提供给elasticsearch。在默认配置中,日志事件会获得类似“file.application.log”的标记。

我们目前正在评估此设置,但我们有更多具有相同日志文件名的应用程序容器。所以还有工作要做。