大数据教程(13.1)Flume使用

大数据教程(13.1)Flume使用

    上一节介绍了Flume的一个入门案例,本节博主将分享Flume如何将数据收集到hdfs文件系统上。

    操作步骤:

1、进入Flume配置目录
cd ~/apps/apache-flume-1.6.0-bin/conf

2、新建配置文件
vi tail-hdfs.conf

3、在配置文件中添加如下内容
# Name the components on this agent
a1.sources = r1
a1.sinks = k1
a1.channels = c1

#exec 指的是命令
# Describe/configure the source
a1.sources.r1.type = exec
#F根据文件名追中, f根据文件的nodeid追中
a1.sources.r1.command = tail -F /home/hadoop/log/test.log
a1.sources.r1.channels = c1

# Describe the sink
#下沉目标
a1.sinks.k1.type = hdfs
a1.sinks.k1.channel = c1
#指定目录, flum帮做目的替换
a1.sinks.k1.hdfs.path = /flume/events/%y-%m-%d/%H%M/
#文件的命名, 前缀
a1.sinks.k1.hdfs.filePrefix = events-

#10 分钟就改目录
a1.sinks.k1.hdfs.round = true
a1.sinks.k1.hdfs.roundValue = 10
a1.sinks.k1.hdfs.roundUnit = minute

#文件滚动之前的等待时间(秒)
a1.sinks.k1.hdfs.rollInterval = 3

#文件滚动的大小限制(bytes)
a1.sinks.k1.hdfs.rollSize = 500

#写入多少个event数据后滚动文件(事件个数)
a1.sinks.k1.hdfs.rollCount = 20

#5个事件就往里面写入
a1.sinks.k1.hdfs.batchSize = 5

#用本地时间格式化目录
a1.sinks.k1.hdfs.useLocalTimeStamp = true

#下沉后, 生成的文件类型,默认是Sequencefile,可用DataStream,则为普通文本
a1.sinks.k1.hdfs.fileType = DataStream

# Use a channel which buffers events in memory
a1.channels.c1.type = memory
a1.channels.c1.capacity = 1000
a1.channels.c1.transactionCapacity = 100

# Bind the source and sink to the channel
a1.sources.r1.channels = c1
a1.sinks.k1.channel = c1

4、保存上面配置
shift+Z+Z

5、创建Flume监听的文件所在的文件夹
mkdir /home/hadoop/log

6、创Flume监听的文件,并写循环写入数据
while true
do
echo 111111 >> /home/hadoop/log/test.log
sleep 0.5
done

7、新打开个ssh客户端执行下列命令查看日志文件变化【使用大写的-F是追踪文件名进行输出,而小写-f是inode进行追踪】
tail -F test.log

8、启动hdfs
start-dfs.sh

9、检查下hdfs式否是salf模式:
hdfs dfsadmin -report

10、启动Flume
bin/flume-ng agent -c conf -f conf/tail-hdfs.conf -n a1

11、前端页面查看下, http://centos-aaron-h1:50070, 文件目录: /flume/events/19-02-14

12、使用hdfs命令查看
hdfs dfs -ls /flume/events/19-02-14
hdfs dfs -cat /flume/events/19-02-14/0710/events-.1550099967340 

    参考地址:http://flume.apache.org/releases/content/1.6.0/FlumeUserGuide.html

    补充知识:

    linux中的软连接:本质上就是个文件相当于windows中新建了一个快捷方式。rm … 只删除软连接,不会删除真实文件;rm -rf …会删除软连接,同时也会删除真实文件。

    linux中的硬连接:本质上是新建一个引用,需要将所有引用删除才会真实文件。     

    最后寄语,以上是博主本次文章的全部内容,如果大家觉得博主的文章还不错,请点赞;如果您对博主其它服务器大数据技术或者博主本人感兴趣,请关注博主博客,并且欢迎随时跟博主沟通交流。

转载于:https://my.oschina.net/u/2371923/blog/3009852

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/101124.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • macbook如何安装双系统_双系统安装方法

    macbook如何安装双系统_双系统安装方法1.官网https://www.microsoft.com/zh-cn/software-download/windows10ISO进入官网下载win10(因为win10仅支持win10专业版不要下家庭中文版)语言:简体中文64位2.用迅雷下否则直接下载时间会很长Mac迅雷-轻体验,大改变(拖动迅雷至文件夹,即可安装,macOS10.15安装后请到应用程序找到图标,右键打开)点击迅雷的加号新建任务在浏览器复制之后自动弹出迅雷下载对话保存位置至桌面点击下载打开浏览器.

    2022年9月28日
    0
  • pycharm终止程序快捷键_pycharm代码补全快捷键

    pycharm终止程序快捷键_pycharm代码补全快捷键不小心进行了错误的操作,想要回到前一步操作的时候撤销与反撤销操作:Ctrl+z,Ctrl+Shift+z

    2022年8月29日
    2
  • 音视频协议-RTP协议

    音视频协议-RTP协议1协议简介2协议格式介绍3协议解析4协议三方库使用

    2022年6月28日
    40
  • 子网掩码和ip地址的关系_ip地址和子网掩码求网络地址

    子网掩码和ip地址的关系_ip地址和子网掩码求网络地址1、什么是ip地址在网络中,所有的设备都会被分配一个地址。这个地址就相当于某条路上的XX号XX房。其中【号】对应的号码是分配了整个子网的,而【房】对应的号码是分配给子网中的计算机的,这就是网络中的地

    2022年8月1日
    4
  • 定制CentOS5.6系统

    定制CentOS5.6系统

    2021年8月13日
    54
  • springboot zuul网关_ubuntu网关服务器搭建

    springboot zuul网关_ubuntu网关服务器搭建目录一.Zuul网关二.Zuul服务的前期准备2.1注册中心EurekaServer的搭建2.2EurekaService的搭建三.Zuul服务搭建五.Zuul的访问六.Zuul的更多功能前言:博主一直力求做到写博客尽量的详细来减少大家花在踩坑上的时间,若有写的不好或错误的地方,还需各方大佬指正。一.Zuul网关网关,是一种网络关口,既然是…

    2022年8月15日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号