摘要

Flume应用系统的日志监控
构建一个Flume的集群架构实战内容。
Flume的数据持久化使用组件:File Channel
属性名 默认值 说明type file checkpointDir channel/checkpoint检查点文件存放路径dataDirs channel/data日志存储路径,多个路径使用逗号分隔.使用不同的磁盘上的多个路径能提高file channel的性能

使用Exec Soucre:Exec Source通过指定命令监控文件的变化.加粗属性为必须设置的。
存在重复消费的问题:
多文件监控
多个agent组合使用
从多个Web服务器收集日志,发送到一个或多个集中处理的agent,之后再发往日志存储中心:
同样的日志发送到不同的目的地:
拦截器
通过的监控集群节点的性能监控实现对海量集群节点做预测分析和监控。基础的架构原理如图所示
集群节点的部署为:
集群几点node1node2node3IP192.168.25.34192.168.25.35192.168.25.36flumec1 c2 c3c1 c2 c3s1 s2……Flume的部署配置为
这里的配置不正确 后续需要你的确认修改后才能保证
a1.sources = r1
a1.sinks = k1
a1.channels = c1
# Describe/configure the source
a1.sources.r1.type = netcat
a1.sources.r1.bind = localhost
a1.sources.r1.port = 44444
# Describe the sink
a1.sinks.k1.type = logger
# Use a channel which buffers events in memory
a1.channels.c1.type = memory
a1.channels.c1.capacity = 1000
a1.channels.c1.transactionCapacity = 100
# Bind the source and sink to the channel
a1.sources.r1.channels = c1
a1.sinks.k1.channel = c1
采集的结果的数据如图所示
为什么采用这样的架构?这样的架构有什么好处?
为啥采用的三层?而不是两层,或者是四层?
这样的架构有什么问题?遇见过什么问题?你是怎样解决的?
每天采集的数据大概是多少?
如果采集的数据的突然增加?这样的架构是怎么处理的?
如果在架构发生故障的时候,你怎么处理?怎么样保证高可用?和高扩展?