Flume_Selector
一:扇出模式(复制模式)
- Selector的默认模式,将Source内容复制,发送给多个Sink
- 参数配置
演示
- 结构图为:
Hadoop01节点作为数据扇出点,Hadoop02,Hadoop03节点作为数据接收点
Hadoop01节点:shanchu.conf
# 配置sources # Source类型 获取到的数据类型 a1.sources.s1.type = netcat a1.sources.s1.bind = 0.0.0.0 # 被监听端口 a1.sources.s1.port = 8090 # 配置Channel # Channel类型 a1.channels.c1.type = memory # channel大小 单位 几条日志 a1.channels.c1.capacity = 10000 # 配置Channel给sink发生的数据的数据量大小 a1.channels.c1.transcationCapacity = 100 a1.channels.c2.type=memory a1.channels.c2.capacity = 10000 a1.channels.c2.transcationCapacity = 100 #配置sink # 配置sink类型 a1.sinks.k1.type = avro a1.sinks.k1.hostname=hadoop02 a1.sinks.k1.port=8070 a1.sinks.k2.type=avro a1.sinks.k2.hostname=hadoop03 a1.sinks.k2.port=8070
Hadoop02节点:shanchu.conf
# 给flume配置agent 给Agent随意起名 # 给source起名 多个 逗号分隔开 a1.sources = s1 # 给channel起名 a1.channels = c1 # 给sink起名 a1.sinks = k1 # 配置sources # Source类型 获取到的数据类型 a1.sources.s1.type = avro a1.sources.s1.bind = 0.0.0.0 # 被监听端口 a1.sources.s1.port = 8070 # 配置Channel # Channel类型 a1.channels.c1.type = memory # channel大小 单位 几条日志 a1.channels.c1.capacity = 10000 # 配置Channel给sink发生的数据的数据量大小 a1.channels.c1.transcationCapacity = 100 #配置sink # 配置sink类型 a1.sinks.k1.type = logger #将source和channel班定 source可对于多个channel a1.sources.s1.channels = c1 #将channel和sink绑定 每个channel对应一个sink a1.sinks.k1.channel = c1
Hadoop03节点:shanchu.conf
# 给flume配置agent 给Agent随意起名 # 给source起名 多个 逗号分隔开 a1.sources = s1 # 给channel起名 a1.channels = c1 # 给sink起名 a1.sinks = k1 # 配置sources # Source类型 获取到的数据类型 a1.sources.s1.type = avro a1.sources.s1.bind = 0.0.0.0 # 被监听端口 a1.sources.s1.port = 8070 # 配置Channel # Channel类型 a1.channels.c1.type = memory # channel大小 单位 几条日志 a1.channels.c1.capacity = 10000 # 配置Channel给sink发生的数据的数据量大小 a1.channels.c1.transcationCapacity = 100 #配置sink # 配置sink类型 a1.sinks.k1.type = logger #将source和channel班定 source可对于多个channel a1.sources.s1.channels = c1 #将channel和sink绑定 每个channel对应一个sink a1.sinks.k1.channel = c1
注意:
- 启动顺序:先启动接收信息的节点,再启动发送信息的节点
- 启动命令:
进入Flume安装目录,下的bin下的flume-ng
../bin/flume-ng agent -n a1 -c ../conf/ -f shanchu.conf -Dflume.root.logger=INFO,console
agent
-n a1
-n:指定运行的agent的名字
a1:agent名字
-c ../conf/ -f shanchu.conf
-c:指向Flume安装目录下,conf目录的绝对路径
-f:指向此时Flume的配置文件
-Dflume.root.logger=INFO,console启动日志打印到当前控制台
二:路由模式(多路复用模式)
- Selector根据用户指定的规定转发信息
- 参数