准备工作:
同上一篇 Flume数据采集案例之单数据源多出口(选择器)
本次需求:
使用在机器weekend110上部署的Flume-a1准实时监控本机目标端口44444的数据变动,Flume-a1将变动的内容分别传递给在weekend01上部署的Flume-a2 和 在weekend02上部署的Flume-a3,然后Flume-a2和Flume-a3都是在控制台进行输出。
实现:
- 分别在三台机器上的 /home/hadoop/app/flume-1.7.0-bin/ 下创建一个job目录,用来专门存放要配置的conf配置文件。
- 分别在三台机器的 /home/hadoop/app/flume-1.7.0-bin/job 目录下配置各自的conf文件,如下:
在weekend110上,配置1个接收日志文件的source和1个channel、两个sink,配置文件 flume-netcat-flume.conf 的内容如下:
# Name the components on this agent
a1.sources = r1
a1.channels = c1
a1.sinkgroups = g1
a1.sinks = k1 k2
# Describe/configure the source
a1.sources.r1.type = netcat
a1.sources.r1.bind = localhost
a1.sources.r1.port = 44444
a1.sinkgroups.g1.processor.type = load_balance
a1.sinkgroups.g1.processor.backoff = true
a1.sinkgroups.g1.processor.selector = round_robin
a1.sinkgroups.g1.processor.selector.maxTimeOut=10000
# Describe the sink
a1.sinks.k1.type = avro
a1