从Mesos Cluster收集日志

时间:2015-06-26 09:08:23

标签: logging apache-spark flume mesos

我的团队正在Amazon EC2实例上部署新群集。 经过一番研究后,我们决定选择Apache Mesos作为集群管理器,使用Spark进行计算。

我们问自己的第一个问题是,对于每个不同的框架,从所有机器收集日志的最佳方法是什么。 到目前为止,我们开发了一些自定义bash / python脚本,它们从预定义位置收集日志,压缩它们并将压缩文件发送到S3。 这种旋转由cron作业激活,该作业每小时运行一次。

我一直在寻找最好的" (或标准)这样做的方式。 我找到了Apache Flume,它也是日志的数据收集器,但我不明白如何将它集成到Mesos集群中以收集日志(以及Spark)。

我找到this"类似"问题,但解决方案不是开源或不再支持。

有没有更好的方法来轮换日志或我错过的标准方式?

非常感谢

1 个答案:

答案 0 :(得分:0)

对此没有完美的答案。如果您正在使用Spark并且有兴趣使用Flume,您将不得不编写自定义Flume - >据我所知,Spark接口就不存在了。但是,你可以做的是:

  1. 使用Flume实时获取日志数据。
  2. 让Flume使用自定义拦截器对日志数据进行预处理。
  3. 在预处理完成后,让Flume写信给Kafka。
  4. 让Spark流读取Kafka队列来处理日志并运行计算。
  5. Spark Streaming据称尚未达到黄金时段的生产等级,但这是一个潜在的解决方案。