在前面的博客上我说了flume就是三个最重要的地方,分别是分别是source、channel、sink,source是获取数据,channel是通道,传输数据的,sink是把数据给谁的,这里显而易见的是把数据给hdfs的,所以我们只需要在前面的基础上改sink就可以了
在之前的基础上修改a.conf文件中的sink

修改完后启动hadoop

查看进程是否开启,其实这里只需开dfs就行了,不需要启动yarn

接着启动flume

新建一个文件,因为我们配置的时候是监控目录的,所以复制一个文件到那个文件夹下

写入一些数据在test文件中

接着把文件移动到a1_test文件夹下

然后我们会发现flume有变化

前面那个箭头是指我们移动过去的文件传输到了一个目录下面去了,并且改了一个名字,这是因为我在配置中写了以时间来命名的,相关配置可以去官网上看,而后面那个箭头指向的文件的后缀是tmp,这是因为文件还在写入,写完后它自动会把tmp去掉
然后登录我的hadoop

直接进入目录/user/hadoop/flumedir

接着就会发现我刚刚移动过去的文件的信息

跟着箭头一直点,这个目录我也不知道是什么

接着会发现一个00的目录,我猜是以编号来命名文件夹的吧

最后终于发现了我们的文件,是以FlumeData为前缀,这个前缀是默认的,自己也可修改,后缀是一串数字,这串数字是时间的信息。

本文介绍如何使用 Flume 将数据从源端收集并通过简单的配置修改将数据发送到 HDFS 中。通过实例演示了从创建监控目录、移动文件到观察 Flume 处理过程直至最终在 HDFS 中查看到文件的全过程。
2933





