本文将介绍Flume(Spooling Directory Source) + HDFS,关于Flume 中几种Source详见文章 http://www.cnblogs.com/cnmenglang/p/6544081.html

1.资料准备 : apache-flume-1.7.0-bin.tar.gz

2.配置步骤:

    a.上传至用户(LZ用户mfz)目录resources下

    b.解压

tar -xzvf apache-flume-1.7.-bin.tar.gz 

    

    c.修改conf下 文件名

    

mv flume-conf.properties.template flume-conf.properties
mv flume-env.sh.template flume-env.sh

    d.修改flume-env.sh 环境变量,添加如下:

export JAVA_HOME=/usr/java/jdk1.8.0_102
FLUME_CLASSPATH="/home/mfz/hadoop-2.7.3/share/hadoop/hdfs/*"

     e.新增文件 hdfs.properties

LogAgent.sources = apache
LogAgent.channels = fileChannel
LogAgent.sinks = HDFS #sources config
#spooldir 对监控指定文件夹中新文件的变化,一旦有新文件出现就解析,解析写入channel后完成的文件名将追加后缀为*.COMPLATE
LogAgent.sources.apache.type = spooldir
LogAgent.sources.apache.spoolDir = /tmp/logs
LogAgent.sources.apache.channels = fileChannel
LogAgent.sources.apache.fileHeader = false #sinks config
LogAgent.sinks.HDFS.channel = fileChannel
LogAgent.sinks.HDFS.type = hdfs
LogAgent.sinks.HDFS.hdfs.path = hdfs://master:9000/data/logs/%Y-%m-%d/%H
LogAgent.sinks.HDFS.hdfs.fileType = DataStream
LogAgent.sinks.HDFS.hdfs.writeFormat=TEXT
LogAgent.sinks.HDFS.hdfs.filePrefix = flumeHdfs
LogAgent.sinks.HDFS.hdfs.batchSize = 1000
LogAgent.sinks.HDFS.hdfs.rollSize = 10240
LogAgent.sinks.HDFS.hdfs.rollCount = 0
LogAgent.sinks.HDFS.hdfs.rollInterval = 1
LogAgent.sinks.HDFS.hdfs.useLocalTimeStamp = true #channels config
LogAgent.channels.fileChannel.type = memory
LogAgent.channels.fileChannel.capacity =10000
LogAgent.channels.fileChannel.transactionCapacity = 100

   

3.启动:

    1.在 apache-flume 目录下执行

bin/flume-ng agent --conf-file  conf/hdfs.properties -c conf/ --name LogAgent -Dflume.root.logger=DEBUG,console

启动出错,Ctrl+C 退出,新建监控目录/tmp/logs

mkdir -p /tmp/logs

重新启动:

启动成功!

4.验证:

   a.另新建一终端操作;

   b.在监控目录/tmp/logs下新建test.log目录

vi test.log

#内容
test hello world

     c.保存文件后查看之前的终端输出为

看图可得到信息:

1.test.log 已被解析传输完成且名称修改为test.log.COMPLETED;

2.HDFS目录下生成了文件及路径为:hdfs://master:9000/data/logs/2017-03-13/18/flumeHdfs.1489399757638.tmp

3.文件flumeHdfs.1489399757638.tmp 已被修改为flumeHdfs.1489399757638

那么接下里登录master主机,打开WebUI,如下操作

或者打开master终端,在hadoop安装包下执行命令

bin/hadoop fs -ls -R /data/logs/--/

查看文件内容,命令:

bin/hadoop fs -cat /data/logs/2017-03-13/18/flumeHdfs.1489399757638

OK,完成!

最新文章

  1. 回车与换行 ---编码等相关讨论----由notepad++ 批量替换 引发的讨论,转义字符也是人为硬性规定的。
  2. 数据库 Linux下的MySQL数据库管理
  3. 最牛逼android上的图表库MpChart(二) 折线图
  4. django基于正则的url匹配
  5. phantomjs 另类用法
  6. Hibernate开始上手总结
  7. Error 18000 during outlook 2011 rebuild
  8. 8个必备的PHP功能开发 (转)
  9. Python 基础【第一篇】环境部署
  10. Linux查看文件夹大小du
  11. Spring源码学习-容器BeanFactory(五) Bean的创建-探寻Bean的新生之路
  12. MySQL binlog_format中sbr 和rbr(Statement-Based and Row-Based Replication)的优缺点
  13. python3 第二十八章 - 内置函数之List相关
  14. [UE4]Window Title Bar Area
  15. tomcat 、NIO、netty 本质
  16. 汇编 sub减法指令 比较指令CMP JZ条件跳转指令
  17. 关于spark ui中executor显示的内存量与设置的内存量不符的问题
  18. svm小问题
  19. ArcMap2SLD使用
  20. Dictionary<Tkey.TValue>与SortedList

热门文章

  1. 使用karma+jasmine做单元测试
  2. Oracle 11gR2 RAC ohasd failed to start 解决方法
  3. Java 原型模式
  4. IIS 启用w3wp.exe调试 没有找到w3wp进程
  5. 怎样在iis中发布asp.net网站
  6. 搭建Minisipserve服务器实现局域网内IOS客户端idoubs的通信
  7. EntityFramework 简单入个门
  8. 转:Spring FactoryBean源码浅析
  9. C# 6 与 .NET Core 1.0 高级编程 - 37 章 ADO.NET
  10. css3 3d 与案例分析