05_ Flume多级Agent之间串联案例】的更多相关文章

多级agent之间串联: 从tail命令获取数据发送到avro端口,另一个节点可配置一个avro源来获取数据,发送外部存储 启动两个Agent节点: 使用scp命令拷贝flume安装包到另一台虚拟机;scp -r /usr/local/src/flume/ shizhan3:$PWD 1.在shizhan2虚拟上配置采集方案:tail-avro-avro-logger.con ################## # Name the components on this agent a1.so…
1.flume的特点: flume是一个分布式.可靠.和高可用的海量日志采集.聚合和传输的系统.支持在日志系统中定制各类数据发送方,用于收集数据:同时,Flume提供对数据进行简单处理,并写到各种数据接受方(比如文本.HDFS.Hbase等)的能力 . flume的数据流由事件(Event)贯穿始终.Event是Flume的基本数据单位,它携带日志数据(字节数组形式)并且携带有头信息,这些Event由Agent外部的Source生成,当Source捕获事件后会进行特定的格式化,然后Source会…
1. 复制多级文件夹的案例 需求:复制多级文件夹       数据源:E:\JavaSE\day21\code\demos     目的地:E:\   分析:         A:封装数据源File         B:封装目的地File         C:判断该File是文件还是文件夹                     a:是文件夹                             就在目的地目录下创建该文件夹                             获取该Fil…
Flume的Agent text(“filename”):将文件filename作为数据源,按行发送 tail(“filename”):探测filename新产生的数据,按行发送出去 fsyslogTcp(5140):监听TCP的5140端口,并且接收到的数据发送出去 tailDir(“dirname”[, fileregex=".*"[, startFromEnd=false[, recurseDepth=0]]]):监听目录中的文件末尾,使用正则去选定需要监听的文件(不包含目录),…
采集需求:比如业务系统使用log4j生成的日志,日志内容不断增加,需要把追加到日志文件中的数据实时采集到hdfs,使用agent串联 根据需求,首先定义以下3大要素 第一台flume agent l  采集源,即source——监控文件内容更新 :        exec  ‘tail -F file’ l  下沉目标,即sink——数据的发送者,实现序列化  :  avro sink l  Source和sink之间的传递通道——channel,可用file channel 也可以用 内存ch…
采集需求:比如业务系统使用log4j生成的日志,日志内容不断增加,需要把追加到日志文件中的数据实时采集到hdfs 根据需求,首先定义以下3大要素 采集源,即source——监控文件内容更新 :  exec  ‘tail -F file’ 下沉目标,即sink——HDFS文件系统  :  hdfs sink Source和sink之间的传递通道——channel,可用file channel 也可以用内存channel 1.配置采集方案: # Name the components on this…
一.Flume监听端口 1,在linux机器上下载telnet工具 yum search telnet yumm install telnet.x86_64 2.编写flume的配置文件,并将文件复制到flume/conf文件夹下 #.agent a1.sources = r1 a1.sinks = k1 a1.channels = c1 #.source netcat表示监视端口.localhost监视本机(也可以写本机名如hd1-) #44444端口号(随便写,注意不要与常用的端口号重复即可…
Sqoop Flume HDFS Sqoop用于从结构化数据源,例如,RDBMS导入数据 Flume 用于移动批量流数据到HDFS HDFS使用 Hadoop 生态系统存储数据的分布式文件系统 Sqoop具有连接器的体系结构.连接器知道如何连接到相应的数据源并获取数据 Flume 有一个基于代理的架构.这里写入代码(这被称为“代理”),这需要处理取出数据 HDFS具有分布式体系结构,数据被分布在多个数据节点 HDFS 使用 Sqoop 将数据导出到目的地 通过零个或更多个通道将数据流给HDFS…
首先得明确包和模块. 包:在一个目录下存在__init__.py,那么该目录就是一个包. 模块:一个.py文件就是一个模块. 我们可以通过from 包 import 模块来引入python文件, 也可以使用from 包.模块 import 模块中的函数或类. 具体看一下例子. 假设我们现在有以下的目录: 我们想在main.py中使用package_a和package_b里面额模块,可以这么使用: from package_a import tmp2 from package_b import t…