fluem读取文件并写入到hadoop的hdfs
接上一章,本章介绍使用 crontab 像指定文件定时写入,使用fluem 读取并写入到hadoop的hdfs 前提准备已安装好fluem ,和hadoop(推荐单机即可毕竟做实验)
一、进入终端执行命令查看 crond 服务状态
service crond status
如下表示服务正常运行,如无服务或服务关闭,需自行安装启动(略)
二 、执行命令 crontab –e 配置定时任务
crontab –e
写入 如下内容(表示每分钟向opt/software/test.log 插入一条数据)
*/1 * * * * /bin/echo "test===================>flume" >> /opt/software/test.log
三、配置fluem agent配置文件 读取/opt/software/test.log 并写出到hdfs
进入job目录下创建file-flume-hdfs.conf
cd /usr/local/flume/job/
mkidr file-flume-hdfs.conf
添加如下内容
# example.conf: 一个单节点的 Flume 实例配置 # 配置Agent a1各个组件的名称
a1.sources = r1
a1.sinks = k1
a1.channels = c1 # 配置Agent a1的source r1的属性
a1.sources.r1.type = exec
a1.sources.r1.command = tail -F /opt/software/test.log # 配置Agent a1的sink k1的属性
a1.sinks.k1.type = hdfs
# 配置hdfs地址加要生成的目录和文件格式,此处按时间生成
a1.sinks.k1.hdfs.path = hdfs://10.0.2.66:9001/flume/%Y%m%d/%H # 文件前缀
a1.sinks.k1.hdfs.filePrefix = logs-
# 滚动生成
a1.sinks.k1.hdfs.round = true
# 每分钟
a1.sinks.k1.hdfs.roundValue = 1
a1.sinks.k1.hdfs.roundUnit = minute a1.sinks.k1.hdfs.useLocalTimeStamp = true a1.sinks.k1.hdfs.batchSize = 100
a1.sinks.k1.hdfs.fileType = DataStream
a1.sinks.k1.hdfs.rollInterval = 30
a1.sinks.k1.hdfs.rollSize = 134217700
a1.sinks.k1.hdfs.rollCount = 0
# 配置Agent a1的channel c1的属性,channel是用来缓冲Event数据的
a1.channels.c1.type = memory
a1.channels.c1.capacity = 1000
a1.channels.c1.transactionCapacity = 100 # 把source和sink绑定到channel上
a1.sources.r1.channels = c1
a1.sinks.k1.channel = c1
四、启动flume agent(要确保hadoop在线并且网络通畅)
bin/flume-ng agent --conf conf/ --conf-file ../job/file-flume-hdfs.conf --name a1
执行成功,日志打印如下
进入到flume安装目录的conf下查看flume.log,可以看到已经生成文件
五、 访问hadoop的web控制台查看
文件已生成,可下载查看
fluem读取文件并写入到hadoop的hdfs的更多相关文章
- VS读取文件或写入文件时出现中文乱码问题
最近我发现我从文本文档中读取文件处理后再存入新文本文档后,只要是有中文的都显示乱码了~~当我把中文去掉后一切又都正常了,而在我处理过程中,很确定没有对中文进行处理.使用记事本打开发现没有乱码现象,但是 ...
- 小白日记40:kali渗透测试之Web渗透-SQL手工注入(二)-读取文件、写入文件、反弹shell
SQL手工注入 1.读取文件[load_file函数] ' union SELECT null,load_file('/etc/passwd')--+ burpsuite 2.写入文件 ' unio ...
- IOS开发-UI学习-NSBundle和NSURL的区别(读取文件以及写入文件)
NSBundle和NSURL的区别: 在项目的工程中添加一个文件,本例程添加的是aa.txt,文件的内容为百度: www.baidu.com,现在要使用NSBundle和NSURL分别去获取内容,代码 ...
- Java NIO 读取文件、写入文件、读取写入混合
前言 Java NIO(new/inputstream outputstream)使用通道.缓冲来操作流,所以要深刻理解这些概念,尤其是,缓冲中的数据结构(当前位置(position).限制(limi ...
- FileInputStream读取文件&FileOutputStream写入文件
概念摘自:http://jingyan.baidu.com/article/5552ef473ab5f2518ffbc98e.html Java的流式输入输出建立在4个抽象类的基础上:InputStr ...
- java/kotlin 读取文件、写入文件
package dh.btb.backend.utils import java.io.*object FileUtil { /** * 创建文件 * @param filePath 文件路径(不要以 ...
- java读取文件和写入文件的方式
https://www.cnblogs.com/fnlingnzb-learner/p/6011324.html
- c++读取文件操作和写入文件
在C++中与读取文件和写入文件简单操作有关的类分别有ifstream(文件读入).ofstream(文件写出).fstream (文件读入和写出). 名称 作用 ifstream 文件读入 ofstr ...
- 【Hadoop】HDFS - 创建文件流程详解
1.本文目的 通过解析客户端创建文件流程,认知hadoop的HDFS系统的一些功能和概念. 2.主要概念 2.1 NameNode(NN): HDFS系统核心组件,负责分布式文件系统的名字空间管理.I ...
随机推荐
- Git差异并列显示
默认的git diff命令只会将文件的修改差异使用"+","-"符号标注出来,并不直观. 最理想的方式应该是使用诸如"DiffMerge"这 ...
- 缓存系统redis操作、mongdb、memeche
mongdb :默认数据持久化,存在内存的同时也向硬盘写数据. redis:可配置数据持久化,默认数据在内存中 memeche:only support 内存模式 redis操作 https://ww ...
- 七种可能 | Linux丢包故障的定位与解决
出处[云英公众号]:https://mp.weixin.qq.com/s?__biz=MzI1NzM3NTYxMw==&mid=2247483685&idx=1&sn=95c8 ...
- SpringBoot项目使用Nacos作为配置中心
前置条件:jdk.SpringBoot项目.Nacos.Linux服务器(可无) 具体版本:jdk11.SpringBoot 2.3.5.RELEASE.Nacos 2.0.3.Centos 6 目标 ...
- SpringBoot 设置服务一启动就执行、初始化数据
定义一个类实现ApplicationRunner接口,然后Override这个ApplicationRunner接口的run方法 @Component public class TaskRunner ...
- js(JQuery)引入select2
官方项目地址:https://select2.org/ 引入css和js <link href="https://cdnjs.cloudflare.com/ajax/libs/sele ...
- Codeforces 1076G Array Game 题解
目录 题目大意 做法 代码 不想写昨天晚上cf的比赛题目所以来写题解摸摸鱼 题目大意 有一个在长度为\(k\)的正整数序列\(b\)上进行的游戏,一开始一个棋子放在位置\(1\),假如当前棋子的位置为 ...
- 防止 jar 包被反编译
1.隔离Java程序 最简单的方法就是让用户不能够访问到Java Class程序,这种方法是最根本的方法,具体实现有多种方式.例如,开发人员可以将关键的Java Class放在服务器端,客户端通过访问 ...
- 第四十八个知识点:TPM的目的和使用方法
第四十八个知识点:TPM的目的和使用方法 在检查TPM目的之前,值得去尝试理解TPM设计出来的目的是为了克服什么样的问题.真正的问题是信任.信任什么?首先内存和软件运行在电脑上.这些东西能直接的通过操 ...
- Chapter 9 Measurement Bias
目录 9.1 Measurement Error The structure of measurement error 9.3 Mismeasured confounders 9.4 Intentio ...