繁体   English   中英

如何在mesos中聚合所有docker容器的日志

[英]How to aggregate logs for all docker containers in mesos

我有多个微服务编写在节点中,微服务安装到docker容器中,我们使用Mesos + Marathon进行聚类。

如何在不同实例上聚合所有容器(微服务)的日志。

我们也在使用Docker + Mesos,并将所有日志发送到日志分析服务(这是我工作的公司提供的服务, http://logz.io )。 有几种方法可以实现这一目标:

  • 在每个docker中有一个日志托运代理 - 像rsyslog,nxlog,logstash,logstash-forwarder这样的代理 - 该代理会将数据发送到中央日志记录解决方案
  • 创建一个运行托运代理的Docker(如rsyslog,nxlog,logstash,logstash-forwarder),该代理从每台机器上的所有Docker读取日志并将它们运送到中心位置 - 这就是我们要走的路径

这是一个广泛的问题,但我建议您设置弹性搜索,Logstash,Kibana堆栈(ELK)

https://www.elastic.co/products/elasticsearch

https://www.elastic.co/products/logstash

https://www.elastic.co/products/kibana

然后,在每个容器上,您可以运行logstash转发器/发货人将日志发送到您的logstash前端。

日志存储在Elastic Search中,然后使用Kibana或Elastic Search API搜索它们

希望能帮助到你。

我也在做一些Docker + Mesos + Marathon工作,所以,我想,我将面临同样的疑问。

我不知道是否有任何原生解决方案。 但是有一篇关于elastic.io的人们关于他们如何解决这个问题的博客。

这是链接 - Mesos / Marathon集群中Docker容器的日志聚合

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM