我有多个用节点编写的微服务,微服务安装到 docker 容器中,我们使用 Mesos+Marathon 进行集群。
如何聚合不同实例上所有容器(微服务)的日志。?
我们也在使用 Docker+Mesos,并将所有日志发送到日志分析服务(这是我工作的公司提供的服务, http: //logz.io)。有几种方法可以实现:
这是一个广泛的问题,但我建议您设置一个 Elastic Search、Logstash、Kibana 堆栈(ELK)
https://www.elastic.co/products/elasticsearch
https://www.elastic.co/products/logstash
https://www.elastic.co/products/kibana
然后在您的每个容器上,您可以运行logstash forwarder/shipper以将日志发送到您的 logstash 前端。
日志存储在 Elastic Search 中,然后您使用 Kibana 或Elastic Search API进行搜索
希望能帮助到你。
我也在做一些 Docker + Mesos + Marathon 的工作,所以,我想,我将面临同样的疑问。
我不知道是否有任何本机解决方案。但是elastic.io上的人们有一篇关于他们如何解决这个问题的博客。