在Amazon S3中实时备份日志的最佳方式是什么?

我想实时备份所有在Amazon S3中的日志,我应该使用哪个工具?

问题是,S3 不允许你追加到一个现有的S3对象,所以突然之间,从一台机器的日志中的一千行,现在是一千个S3对象 – 吞噬! S3不能很好地处理很多小文件,而且你的成本也会迅速上升。 您可以replace对象(获取现有的对象,添加新行,重新提交),但是这同样昂贵。

那么让我们再来扩大这个问题 – 如果我们改变“实时”更像“大约一个小时”呢? 或者可以这样说, 当你每小时转动一次日志,你可以把它们转换成S3 。

为了回答“实时”日志的问题,已经有了多种解决scheme,但是需要一些组装。 想到两个伟大的想法:

  • Splunk :昂贵,但令人惊叹。 他们有一个免费的IIRC层,但是这取决于你有多less数据。
  • Fluentd :直接集中数据收集,可以输出到S3(通过汇总数据)。