Flume负载均衡概述
负载均衡是用于解决一台机器(一个进程)无法解决所有请求而产生的一种算法。Load balancing Sink Processor能够实现load balance功能,如下图。将Agent1的Event均衡地传输到其他两个Agent2和Agent3上,Event分配的算法有两种,一种是轮询,另一种是随机。
Flume负载均衡实现
使用Flume采集数据,首先要编写配置文件,我这里有三台服务器,所以要配置三个配置文件,但是从图中可以看出,Agent2和Agent3的配置基本一致的,所以它们的配置文件修改一下端口号或者主机号就可以了。配置文件有必要的注释,也可以通过官网查看配置文件的编写方式。
Agent1配置文件:
#agent1 name
agent1.channels = c1
agent1.sources = r1
agent1.sinks = k1 k2
#set gruop
agent1.sinkgroups = g1
#agent source
agent1.sources.r1.channels = c1
# 指定使用exec source
agent1.sources.r1.type = exec
# 指定配合exec source使用的命令
agent1.sources.r1.command = tail -F /root/logs/nginx.log