flume使用四个案例(监听端口,监听文件并传到另外一台电脑,监听文件夹,监听文件夹并将数据保存到hdfs)
2021/10/27 23:40:45
本文主要是介绍flume使用四个案例(监听端口,监听文件并传到另外一台电脑,监听文件夹,监听文件夹并将数据保存到hdfs),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
flume4个学习案例
- 1.案例一监听端口到界面
- 1.1监听端口配置信息
- 1.2 执行
- 1.3 监听端口测试
- 2监听文件并传到另外一台电脑上界面
- 2.1配置信息(监听文件->avro->nodez001->logger)
- 2.2 执行
- 2.3 测试
- 3 监听文件夹到界面
- 3.1 配置信息
- 3.2 执行
- 3.3 测试
- 4 监听文件到hdfs
- 4.1 配置信息
- 4.2 执行
- 3.3 测试
- 未完待续
1.案例一监听端口到界面
1.1监听端口配置信息
## 配置信息 ## 文件名 example-netcat.conf a1.sources = r1 a1.sinks = k1 a1.channels = c1 a1.sources.r1.type = netcat a1.sources.r1.bind = localhost a1.sources.r1.port = 7000 a1.sinks.k1.type = logger a1.channels.c1.type = memory a1.channels.c1.capacity = 1000 a1.channels.c1.transactionCapacity = 100 a1.sources.r1.channels = c1 a1.sinks.k1.channel = c1
1.2 执行
flume-ng agent -n a1 -c /opt/bdsp/apache-flume-1.6.0-bin/conf/ -f /opt/bdsp/conf/flume/example-netcat.conf -Dflume.root.logger=INFO,console
1.3 监听端口测试
telnet localhost 7000
2监听文件并传到另外一台电脑上界面
2.1配置信息(监听文件->avro->nodez001->logger)
## nodez001 ## 文件名 example-avro_node1.conf a1.sources = r1 a1.sinks = k1 a1.channels = c1 a1.sources.r1.type = cmd a1.sources.r1.command = tail -F /root/flume.txt a1.sinks.k1.type = avro a1.sinks.k1.hostname = nodez002 a1.sinks.k1.port = 45454 a1.channels.c1.type = memory a1.channels.c1.capacity = 1000 a1.channels.c1.transactionCapacity = 100 a1.sources.r1.channels = c1 a1.sinks.k1.channel = c1 ## nodez002 ## example-avro_node2.conf a2.sources = r1 a2.sinks = k1 a2.channels = c1 a2.sources.r1.type = avro a2.sources.r1.hostname = nodez002 a2.sources.r1.port = 45454 a2.sinks.k1.type = logger a2.channels.c1.type = memory a2.channels.c1.capacity = 1000 a2.channels.c1.transactionCapacity = 100 a2.sources.r1.channels = c1
2.2 执行
## nodez002上执行 flume-ng agent -n a2 -c /opt/bdsp/apache-flume-1.6.0-bin/conf/ -f /opt/bdsp/conf/flume/example-avro_node2.conf -Dflume.root.logger=INFO,console ## nodez001上执行 flume-ng agent -n a1 -c /opt/bdsp/apache-flume-1.6.0-bin/conf/ -f /opt/bdsp/conf/flume/example-avro_node1.conf
2.3 测试
## nodez001 echo "xxxx" >> /root/flume.txt # 查看nodez001 界面
3 监听文件夹到界面
3.1 配置信息
## example-dir.conf a1.sources = r1 a1.sinks = k1 a1.channels = c1 a1.sources.r1.type = spooldir a1.sources.r1.spoolDir = /opt/bdsp/logs a1.sources.r1.fileHeader = true a1.sinks.k1.type = logger a1.channels.c1.type = memory a1.channels.c1.capacity = 1000 a1.channels.c1.transactionCapacity = 100 a1.sources.r1.channels = c1 a1.sinks.k1.channel = c1
3.2 执行
## nodez002上执行 flume-ng agent -n a1 -c /opt/bdsp/apache-flume-1.6.0-bin/conf/ -f /opt/bdsp/conf/flume/example-dir.conf -Dflume.root.logger=INFO,console
3.3 测试
mv xxx.txt /opt/bdsp/logs/ # 移动文件到指定位置 观察窗口变化
4 监听文件到hdfs
4.1 配置信息
## example-hdfs.conf a1.sources = r1 a1.sinks = k1 a1.channels = c1 a1.sources.r1.type = spooldir a1.sources.r1.spoolDir = /opt/bdsp/logs a1.sources.r1.fileHeader = true a1.sinks.k1.type = hdfs a1.sinks.k1.hdfs = hdfs://bdsp/flume/%y-%m-%d/%H%M ##每隔60秒或者文件大小超过10M的时候产生新文件 ##hdfs有多少消息是新建文件,0不基于消息个数 a1.sinks.k1.hdfs.rollCount = 0 ##hdfs创建多长时间新建文件,0不基于时间 a1.sinks.k1.hdfs.rollInterval = 60 ##hdfs多大时创建新建文件,0不基于文件带下 a1.sinks.k1.hdfs.rollSize = 10240 ##当目前被打开的临时文件在改参数指定时间(秒)内,没有目标文件 a1.sinks.k1.hdfs.idleTimeout = 3 a1.sinks.k1.hdfs.fileType = DataStream a1.sinks.k1.hdfs.useLocalTimeStamp = true ##每五分钟生产一个目录 ##是够启用时间上的舍弃,这里的舍弃,类似于四舍五入所有时间表达式 a1.sinks.k1.hdfs.round = true ##时间上进行舍弃的值 a1.sinks.k1.hdfs.roundValue = 5 ##时间上舍弃的单位,包含second,minute,hour a1.sinks.k1.hdfs.roundUnit = minute a1.channels.c1.type = memory a1.channels.c1.capacity = 1000 a1.channels.c1.transactionCapacity = 100 a1.sources.r1.channels = c1 a1.sinks.k1.channel = c1
4.2 执行
flume-ng agent -n a1 -c /opt/bdsp/apache-flume-1.6.0-bin/conf/ -f /opt/bdsp/conf/flume/example-hdfs.conf
3.3 测试
mv xxx.txt /opt/bdsp/logs/ # 移动文件到指定位置 观察 hdfs://bdsp/flume 文件夹
未完待续
如果有谬误,请指出来,希望共同学习,共同进步,day day up!
这篇关于flume使用四个案例(监听端口,监听文件并传到另外一台电脑,监听文件夹,监听文件夹并将数据保存到hdfs)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解
- 2024-11-23Java对接阿里云智能语音服务入门教程
- 2024-11-23JAVA对接阿里云智能语音服务入门教程
- 2024-11-23Java副业入门:初学者的简单教程
- 2024-11-23JAVA副业入门:初学者的实战指南