首先解压flume,然后执行授权命令:sudo chmod 777 -R flume
一.普通配置
vim conf/netcat-logger.conf
插入以下内容:
#三个组件名称
a1.sources = r1
a1.sinks = k1
a1.channels = c1
#类型
a1.sources.r1.type = netcat
a1.sources.r1.bind = localhost
a1.sources.r1.port = 8088
#定义数据下沉类型
a1.sinks.k1.type = loggger
#定义数据传输的方式
a1.channels.c1.type = memory
a1.channels.c1.capacity = 1000
a1.channels.c1.transactionCapacity = 100
#指定数据传输的通道
a1.sources.r1.channels = c1
a1.sinks.k1.channels = c1
启动命令:
bin/flume-ng agent --conf conf --conf-file conf/netcat-logger.conf --name a1 -Dflume.root.logger-INFO.console
二. Flume + Hadoop HDFS实时采集日志
执行命令:vim tail-hdfs.conf
配置文件:
#指定事件参数
a1.channels.c1.type = memory
a1.channels.c1.capacity = 1000
a1.channels.c1.transactioncapacity = 100
#指定使用的通道
a1.sources.r1.channels = c1
a1.sinks.k1.channels = c1
bogon:conf legend$ vim tail-hdfs.conf
bogon:conf legend$ vim tail-hdfs.conf
#文件滚动的大小限制
a1.sinks.k1.hdfs.rollsize = 20
#指定多少个事件滚动一次
a1.sinks.k1.hdfs.rollcount = 5
#缓存多少内存写入一个事件
a1.sinks.k1.hdfs.batchSize = 1
#根据本地的时间
a1.sinks.k1.hdfs.useLocalTimeStamp = true
#生成文件的类型指定
a1.sinks.k1.hdfs.fileType = DataStream
#指定事件参数
a1.channels.c1.type = memory
a1.channels.c1.capacity = 1000
a1.channels.c1.transactioncapacity = 100
#指定使用的通道
a1.sources.r1.channels = c1
a1.sinks.k1.channels = c1
执行启动命令:
bin/flume-ng agent -c conf -f conf/tail-hdfs.conf -n a1