根据提示,将 /opt/flume/flumedata 目录下的 aa.txt (平台已经帮你创建完毕) 采集到 Hdfs,你只需在Begin-End区域内配置配置文件即可,其余步骤后台会自动完成(平台后台向 aa.txt 文件中发送一条消息 From introduction to mastery,因为本实训中 source 源为 exec,学员在自己电脑环境中可以使用命令行发送,命令为echo " From introduction to mastery" >> /opt/flume/flumedata/aa.txt)。 aa.txt文件中的内容如下: Hadoop JAVA Flume 配置文件要求 : Agent命名为 a1 ; source选用 exec 采集所有文件; Channel选用 memery; 文件保存到 hdfs有如下要求 : hdfs路径名称: hdfs://localhost:9000; 保存到 flume 目录下; 文件前缀命名为 wcm; 文件后缀命名为 .wsy; 每 6s 回滚一次文件; 文件格式使用DataStream。
时间: 2024-02-21 22:57:23 浏览: 164
以下是配置文件的示例,您可以将其粘贴到Begin-End区域内进行配置:
```
# 定义Agent名称和组件
a1.sources = r1
a1.channels = c1
a1.sinks = k1
# 配置source组件
a1.sources.r1.type = exec
a1.sources.r1.command = tail -F /opt/flume/flumedata/aa.txt
a1.sources.r1.channels = c1
a1.sources.r1.batchSize = 1000
a1.sources.r1.interceptors = i1
a1.sources.r1.interceptors.i1.type = timestamp
# 配置channel组件
a1.channels.c1.type = memory
a1.channels.c1.capacity = 10000
a1.channels.c1.transactionCapacity = 1000
# 配置sink组件
a1.sinks.k1.type = hdfs
a1.sinks.k1.hdfs.path = hdfs://localhost:9000/flume
a1.sinks.k1.hdfs.filePrefix = wcm
a1.sinks.k1.hdfs.fileSuffix = .wsy
a1.sinks.k1.hdfs.rollInterval = 6
a1.sinks.k1.hdfs.fileType = DataStream
a1.sinks.k1.channel = c1
```
配置文件说明:
- Agent名称为a1,包含一个source组件r1、一个channel组件c1和一个sink组件k1。
- source组件选用exec类型,用于采集/opt/flume/flumedata/aa.txt文件中新添加的内容。
- channel组件选用memory类型,用于缓存采集到的数据。
- sink组件选用hdfs类型,用于将数据保存到HDFS中,配置了HDFS路径名称、文件前缀、文件后缀、回滚时间和文件格式等参数。
请注意,为了保证能够正确运行配置文件,您还需要确保以下几点:
- Flume已经正确安装并启动。
- HDFS已经正确安装并启动。
- aa.txt已经正确创建,并且其中已经包含了一条消息。
- 如果您没有按照提示手动发送消息到aa.txt中,可以将配置文件中的command参数修改为`tail -F /opt/flume/flumedata/*.txt`,这样就可以采集所有以txt结尾的文件了。
阅读全文