Flume配置案例——多sink

系统环境

Linux Ubuntu 14.04
jdk-7u75-linux-x64
hadoop-2.6.0-cdh5.4.5
flume-ng-1.5.0-cdh5.4.5

实验内容

在这里插入图片描述
说明:
1、创建Agent 具体如下:
(1)采用syslogtcp类型的source,使用nc命令产生Syslog日志,发送到6868端口。
(2)创建二个Channel,Channel1、Channel,用于暂存Syslog日志。
(3)创建二个Sink,Sink1是将数据传入到HDFS文件系统中,Sink2是将数据以logger的形式,发送到console界面上。

实验步骤

1.首先检查Hadoop相关进程,创建Flume配置文件,名为:syslogtcp_mem_threesink.conf 和avro_mem_logger.conf,使用vim编辑这些conf文件,

cd /apps/flume/conf
cp ./flume-conf.properties.template ./syslogtcp_mem_twosink.conf

2.配置agent1:

vim syslogtcp_mem_twosink.conf

在该文件中写入如下配置:

##定义各个组件  
agent1.sources  = src  
agent1.channels = ch1 ch2
agent1.sinks    = des1 des2

##配置source  
agent1.sources.src.type = syslogtcp  
agent1.sources.src.bind = localhost  
agent1.sources.src.port = 6868  

##配置channel  
agent1.channels.ch1.type = memory  
agent1.channels.ch2.type = memory   

##配置sink
#配置hdfs sink  
agent1.sinks.des1.type = hdfs  
agent1.sinks.des1.hdfs.path = hdfs://localhost:9000/myflume/syslogtcp_mem_twosink/  
agent1.sinks.des1.hdfs.useLocalTimeStamp = true  
#设置flume临时文件的前缀为 . 或 _ 在hive加载时,会忽略此文件。  
agent1.sinks.des1.hdfs.inUsePrefix=_  
#设置flume写入文件的前缀是什么  
agent1.sinks.des1.hdfs.filePrefix = q7  
agent1.sinks.des1.hdfs.fileType = DataStream  
agent1.sinks.des1.hdfs.writeFormat = Text  
#hdfs创建多久会新建一个文件,0为不基于时间判断,单位为秒  
agent1.sinks.des1.hdfs.rollInterval = 20  
#hdfs写入的文件达到多大时,创建新文件 0为不基于空间大小,单位B  
agent1.sinks.des1.hdfs.rollSize = 10  
#hdfs有多少条消息记录时,创建文件,0为不基于条数判断  
agent1.sinks.des1.hdfs.rollCount = 5  
#hdfs空闲多久就新建一个文件,单位秒  
agent1.sinks.des1.hdfs.idleTimeout = 20  

#配置logger sink  
agent1.sinks.des2.type = logger  

##下面是把上面设置的组件关联起来(把点用线连起来)  
agent1.sources.src.channels = ch1 ch2
agent1.sinks.des1.channel   = ch1  
agent1.sinks.des2.channel   = ch2  

3.启动Flume,执行收集工作。

cd /apps/flume  

flume-ng agent -c /conf -f /apps/flume/conf/syslogtcp_mem_twosink.conf -n agent1 -D flume.root.logger=DEBUG,console 

5.新打开一个窗口,执行nc命令,向6868端口发送消息。

echo "can you help me?" | nc localhost 6868 

flume-ng界面输出:在这里插入图片描述
查看HDFS上的输出:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

极地星光

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值