一、Logger Sink
记录指定级别的日志,通常用于调试。
二、File Roll Sink
在本地文件系统中存储事件,每隔指定时长生成文件保存这段时间内收集到的日志信息。
配置Agent
三、HDFS Sink
- 此Sink将事件写入到Hadoop分布式文件系统HDFS中。
- 它支持创建文本文件和序列化文件,对这两种格式都支持压缩。
- 这些文件可以分卷,按照指定的时间或数据量或事件的数量为基础。
- 使用这个Sink要求hadoop必须已经安装好,以便Flume可以通过hadoop提供的jar包与HDFS进行通信。注意,此版本hadoop必须支持sync()调用。
- 它还通过类似时间戳或机器属性对数据进行 buckets/partitions 操作 ,HDFS的目录路径可以包含将要由HDFS替换格式的转移序列用以生成存储事件的目录/文件名。
配置Agent
四、Avro Sink
和AvroSource配置使用,是实现复杂流动的基础。
a.实现多级流动
配置Hadoop01
配置Hadoop02
配置Hadoop03
b.实现扇入流动
配置Hadoop01
配置Hadoop02/Hadoop03
c.实现扇出流动
配置Hadoop01
配置Hadoop02/Hadoop03
注:一个Channel能连接多个Source,但只能连接一个Sink
五、Custom Sink
- 如果以上内置的Sink都不能满足需求,可以自己开发Sink.
- 按照Flume要是写一个类实现相应接口。
- 将类打成jar放置到flume的lib目录下。
- 在配置文件中通过类的全路径名加载Sink。