安装flume
1、去官网下载flume安装包,注意版本,下载完成后放到服务器上做好安装前准备。
2、直接解压安装即可。如图:
3、进入安装后的根目录,找到其目录中的conf文件夹,如图:
4、找到模板配置文件,复制一个并更改文件名为:flume-*.properties,修改其中的配置。
配置flume
#命名Agent a1的组件,a1为agent的名称,r1、k1、c1分别为source、sinks、channels的名称
a1.sources = r1
a1.sinks = k1
a1.channels = c1
#描述/配置Source
#配置source的类型
a1.sources.r1.type = avro
#配置source监听的ip地址
a1.sources.r1.bind = 0.0.0.0
#配置source监听的端口
a1.sources.r1.port = 22222
#描述Sink
#配置sinks的输出类型
a1.sinks.k1.type = hdfs
#配置sinks的输出路径
a1.sinks.k1.hdfs.path = hdfs://hadoop01:9000/flume/data
#配置hdfs最小副本数量
a1.sinks.k1.hdfs.minBlockReplicas=1
#默认值:SequenceFile,文件格式,包括:SequenceFile, DataStream,CompressedStream当使用DataStream时候,文件不会被压缩,不需要设置hdfs.codeC。当使用CompressedStream时候,必须设置一个正确的hdfs.codeC值。
#a1.sinks.k1.hdfs.fileType=DataStream
#文件压缩格式,包括:gzip, bzip2, lzo, lzop, snappy
#a1.sinks.k1.hdfs.codeC=gzip
#写 sequence 文件的格式。包含:Text, Writable(默认)
#a1.sinks.k1.hdfs.writeFormat=Text
#sinks写入时间隔多长将临时文件滚动成最终目标文件,单位:秒
a1.sinks.k1.hdfs.rollInterval=7200
#当临时文件达到多少(单位:bytes)时,滚动成目标文件;如果设置成0,则表示不根据临时文件大小来滚动文件
a1.sinks.k1.hdfs.rollSize=100000000
#当 events 数据达到该数量时候,将临时文件滚动成目标文件;如果设置成0,则表示不根据events数据来滚动文件
a1.sinks.k1.hdfs.rollCount=0
#当目前被打开的临时文件在该参数指定的时间(秒)内,没有任何数据写入,则将该临时文件关闭并重命名成目标文件
a1.sinks.k1.hdfs.idleTimeout=300
#描述内存Channel
#配置channel类型,类型有memory、jdbc、file、Spillable Memory
a1.channels.c1.type = memory
#事件存储在信道中的最大数量
a1.channels.c1.capacity = 1000
#每个事务中的最大事件数
a1.channels.c1.transactionCapacity = 100
#为Channle绑定Source和Sink
#a1的r1和c1绑定
a1.sources.r1.channels = c1
#a1的c1和k1绑定
a1.sinks.k1.channel = c1
以上就是一个完整的配置案列,详情请参见:flume简介及原理概述。
启动flume
在conf目录下启动,启动命令:
# ../bin/flume-ng agent -c ./ -f ./flume-avro.properties -n a1 -Dflume.root.logger=INFO,console
参数说明:
-c --conf配置目录 ./当前路径
-f --config-file 配置文件
-n --name 指定agent的名称
启动结果:
2017-11-07 19:58:03,708 (lifecycleSupervisor-1-2) [INFO - org.apache.flume.source.AvroSource.start(AvroSource.java:253)] Avro source r1 started.
启动后出现类似以上提示则flume配置启动成功。
版权所有,转载请说明转载地址