flume的高可用(忠实备胎上任记)

flume的高可用(忠实备胎上任记)

flume是一个日志采集系统,他本来可以直接连接hdfs,将自己采集到的的日志数据直接写入到hdfs中,但是会有两个问题:
1.如果你有100台agent直接往hdfs写日志数据,每一次采集日志数据比较小,但是是agent的台数比较多,说以hdfs的namenode比较忙,就会降低hdfs的工作效率.
2.hdfs有个毛病,接收的最大数据是128M,但是我们无法保障agent每次产生的日志数据都比128M小所有可能会等很久才能达到hdfs的上传标准,所以很久才能产生一个日志数据写入hdfs中.
**

解决问题办法:failover(不行就换)

**
我们将100台agint中的其中20台汇总到一台collector,我们就只用操作5台collector就可以了,但是collector挂掉了怎么办?这个时候忠实的备胎 k2 就来了,在最后配置文件中添加这三行代码,

#对两个sink分配不同的优先级
a1.sinkgroups.g1.processor.priority.k1 = 200
a1.sinkgroups.g1.processor.priority.k2 = 100
#主sink失败后,停用惩罚时间
a1.sinkgroups.g1.processor.maxpenalty = 5000

正室挂了 k2 (备胎)顶上忠实的备胎就走马上任了,为什么说 k2 忠实因为 k2 每隔5秒钟看看正室有没活过来,如果没有继续干活,如果正室活过来了,就立马下位让贤.
这就是flume的高可用,就是保证flume在高危情况下也可以用.
(备注:如果agint挂了,那就真的挂了.)

发布了48 篇原创文章 · 获赞 11 · 访问量 1552

猜你喜欢

转载自blog.csdn.net/weixin_45896475/article/details/103931885
今日推荐