首页 > 其他 > 详细

日志系统重构之多源聚合的采集器

时间:2016-02-10 10:56:58      阅读:274      评论:0      收藏:0      [点我收藏+]

最近对日志系统的采集机制进行了重构,增强了对单一主机上多个日志源采集的便捷性。

重构之前

重构之前的设计以日志类型为中心,一个日志类型对应一个独立的flume的配置模板,一个日志类型的一个日志源(具体到某个节点上特定的日志文件)对应一个flume配置文件(也即一个flume agent)。flume配置模板主要针对这个日志类型的日志文件名称是否存在多行日志日志首字符目标接收方有关的配置等固定属性。光靠这些配置还不够,因为这些日志类型所对应的日志会存在于各个具体的主机节点以及可能不同的文件系统路径下,所以针对某个日志类型的日志源还需要配置日志文件路径日志文件名称的模式采集器元数据存储路径等动态属性。

这里管控台的设计完全没有按照flume里sourcechannelsink区分开来。sink的配置是混合在flume配置模板里。

管控台的功能逻辑图:

技术分享

重构前zk Path设计:

技术分享

重构前采集器的物理部署图:

技术分享

重构之后

我们的目标是减少同一个物理主机上采集器的部署成本,最好能一个物理主机部署一个采集器,而这个采集器支持多个日志源的采集。正好在当前版本的flume(v1.6.0)是支持 一个agent里多个日志流。因此,在重构的时候,改为以agent为中心,并重新规划了管控台的功能:

  • 采集源模板
  • 采集器
  • 采集源
  • 采集槽

重构之后管控台的功能逻辑图:

技术分享

重构后的zk path设计:

技术分享

重构后的物理部署图:

技术分享

总结

其实不难看出,管控台的功能逻辑以生成flume配置文件为目标。所以设计的变更主要体现在管控台如何组织和管理这些元数据信息。

日志系统重构之多源聚合的采集器

原文:http://blog.csdn.net/yanghua_kobe/article/details/50649575

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!