flume版本:1.5.0
1、下载安装包:
http://www.apache.org/dyn/closer.cgi/flume/1.5.0/apache-flume-1.5.0-bin.tar.gz
http://www.apache.org/dyn/closer.cgi/flume/1.5.0/apache-flume-1.5.0-src.tar.gz
2、分别解压:
(1):/usr$ sudo tar zxvf apache-flume-1.5.0-bin.tar.gz
(2): /usr$ sudo tar zxvf apache-flume-1.5.0-src.tar.gz
(3): /usr$ sudo cp -ri apache-flume-1.5.0-src/* apache-flume-1.5.0-bin
(4): /usr$ mv apache-flume-1.5.0-bin/ flume
3、配置环境变量:
PATH="/usr/flume/bin:/usr/hive/bin:/usr/hbase/bin:/usr/hadoop/bin"
配置环境变量生效
source /etc/environment
4、建立配置文件
这里面的配置文件还是比较特别的,不同于以往我们安装的软件,我们这里可以自己建立配置文件。
首先我们建立一个example文件
vi example
然后把下面的内容,粘贴到里面就可以了,注意不要有乱码,有乱码的话,可以直接创建一个文件,然后上传。
对于下面红字部分,记得创建文件夹,并且注意它们的权限一直。对于下面的配置项,可以参考flume参考文档(http://www.aboutyun.com/thread-7924-1-1.html),这里面的参数很详细。
agen1表示代理名称
agent1.sources = source1
agent1.sinks = sink1
agent1.channels = channels
#配置source1
agent1.sources.source1.type=spooldir
agent1.sources.source1.spoolDir=/usr/aboutyunlog
agent1.sources.source1.channels = channel1
agent1.sources.source1.fileHeader = false
#配置sink1
agent1.sinks.sink1.type = hdfs
agent1.sinks.sink1.hdfs.path = hdfs://master:8020/abouyunlog
agent1.sinks.sink1.hdfs.fileType = DataStream
agent1.sinks.sink1.hdfs.writeFormat = TEXT
agent1.sinks.sink1.hdfs.rollInterval = 4
agent1.sinks.sink1.channel = channel1
#配置channel1
agent1.channels.channel1.type = file
agent1.channels.channel1.checkPOINTdIR = /usr/aboutyun_tmp123
agent1.channels.channel1.dataDirs = /usr/aboutyun_tmp
5、启动flume
flume -ng agent -n agent1 -c conf -f /usr/flume/conf/example -Dflume.root.logger = DEBUG,console
6、我们启动flume之后,会看到控制台输出信息,并且信息不停的重复。这个其实是在空文件的时候,监控的信息输出。
7、这个控制台不要关闭,我们另外开启一个shell,在监控文件夹中放入要上传的文件。
比如我们在监控文件下,创建一个test1文件,内容如下
hello 1
hello 2
hello aboutyun
这时候flume的监控shell,会有相应的变化。
8、上传成功之后,我们去hdfs上,查看上传文件:
就会发现test1文件已经被上传上来了。这样我们做到了flume上传到hadoop上面。