多级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.sources = r1
a1.sinks = k1
a1.channels = c1 # Describe/configure the source
a1.sources.r1.type = exec
a1.sources.r1.command = tail -F /home/hadoop/log/test.log
a1.sources.r1.channels = c1 # Describe the sink
#绑定的不是本机, 是另外一台机器的服务地址, sink端的avro是一个发送端, avro的客户端, 往shizhan3这个机器上发
a1.sinks = k1
a1.sinks.k1.type = avro
a1.sinks.k1.channel = c1
a1.sinks.k1.hostname = shizhan3
a1.sinks.k1.port = 4141
a1.sinks.k1.batch-size = 2 # 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

2.在shizhan3虚拟上配置采集方案:avro-hdfs.conf(从avro端口接收数据,下沉到logger)

# Name the components on this agent
a1.sources = r1
a1.sinks = k1
a1.channels = c1 # Describe/configure the source
#source中的avro组件是接收者服务, 绑定本机
a1.sources.r1.type = avro
a1.sources.r1.channels = c1
a1.sources.r1.bind = 0.0.0.0
a1.sources.r1.port = 4141 # Describe the sink
a1.sinks.k1.type = logger # 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

启动shizhan3的Agent采集方案采集数据:将日志信息打印输出到屏幕

  bin/flume-ng agent -c conf -f conf/avro-hdfs.conf -n al -Dflume.root.logger=INFO,console

往日志文件中不断输入内容,并启动启动shizhan2的Agent采集方案采集数据

  

 

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

  1. Flume原理分析与使用案例

    1.flume的特点: flume是一个分布式.可靠.和高可用的海量日志采集.聚合和传输的系统.支持在日志系统中定制各类数据发送方,用于收集数据:同时,Flume提供对数据进行简单处理,并写到各种数据 ...

  2. Java基础知识强化之IO流笔记50:IO流练习之 复制多级文件夹的案例

    1. 复制多级文件夹的案例 需求:复制多级文件夹       数据源:E:\JavaSE\day21\code\demos     目的地:E:\   分析:         A:封装数据源File ...

  3. Flume的Agent

    Flume的Agent text(“filename”):将文件filename作为数据源,按行发送 tail(“filename”):探测filename新产生的数据,按行发送出去 fsyslogT ...

  4. 大数据学习——实现多agent的串联,收集数据到HDFS中

    采集需求:比如业务系统使用log4j生成的日志,日志内容不断增加,需要把追加到日志文件中的数据实时采集到hdfs,使用agent串联 根据需求,首先定义以下3大要素 第一台flume agent l  ...

  5. 04_ Flume采集文件到HDFS案例

    采集需求:比如业务系统使用log4j生成的日志,日志内容不断增加,需要把追加到日志文件中的数据实时采集到hdfs 根据需求,首先定义以下3大要素 采集源,即source——监控文件内容更新 :  ex ...

  6. Flume的四个使用案例

    一.Flume监听端口 1,在linux机器上下载telnet工具 yum search telnet yumm install telnet.x86_64 2.编写flume的配置文件,并将文件复制 ...

  7. SqoopFlume、Flume、HDFS之间比较

    Sqoop Flume HDFS Sqoop用于从结构化数据源,例如,RDBMS导入数据 Flume 用于移动批量流数据到HDFS HDFS使用 Hadoop 生态系统存储数据的分布式文件系统 Sqo ...

  8. BEvent_客制化Event Agent通道(案例)(待整理)

    2014-09-09 Created By BaoXinjian

  9. python关于多级包之间的引用问题

    首先得明确包和模块. 包:在一个目录下存在__init__.py,那么该目录就是一个包. 模块:一个.py文件就是一个模块. 我们可以通过from 包 import 模块来引入python文件, 也可 ...

随机推荐

  1. Spring Aop(三)——Pointcut表达式介绍

    转发地址:https://www.iteye.com/blog/elim-2395255 3 Pointcut表达式介绍 3.1 表达式类型 标准的Aspectj Aop的pointcut的表达式类型 ...

  2. Unity动态批处理和静态批处理学习

    本文转自:http://blog.csdn.net/lyh916/article/details/45725499,请点击链接查看楼主大神原文,尊重楼主版权. 参考链接:Unity圣典:http:// ...

  3. 使用Optioanl优雅的处理空值

    业务中的空值 场景 存在一个UserSearchService用来提供用户查询的功能: public interface UserSearchService{ List listUser(); Use ...

  4. Session服务器之Memcached与Redis

    安装Memcached[root@nginx ~]# yum -y install libevent memcached 指定用户大小等信息,工作环境中常指定大小一般为4到8G,此信息测试使用.[ro ...

  5. LAG函数实现环比

    ,)OVER(ORDER BY 年月) 环比金额 from( 年, 季度, 年月 ,SUM(金额本位币) 金额 FROM ( SELECT * FROM [dbo].[T_output] ) cb_v ...

  6. 44.python排序算法(冒泡+选择)

    一,冒泡排序: 是一种简单的排序算法.它重复地遍历要排序的数列,一次比较两个,如果他们的排序错误就把他们交换过来. 冒泡排序是稳定的(所谓稳定性就是两个相同的元素不会交换位置) 冒泡排序算法的运作如下 ...

  7. 洛谷 题解 P1196 【[NOI2002]银河英雄传说】

    并查集大难题. 看了题解之后才有思路,调了很久很久才AC,当然要写一篇题解来纪念一下. 先来分析一下这些指令的特点,很容易发现对于每个M指令,只可能一次移动整个队列,并且是把两个队列首尾相接合并成一个 ...

  8. STM32PWM之——定时器(1)

    定时器功能简介 STM32 一共有 8 个都为 16 位的定时器.其中 TIM6. TIM7 是基本定时器:TIM2.TIM3. TIM4. TIM5 是通用定时器: TIM1 和 TIM8 是高级定 ...

  9. Guava 工具类之 Splitter的使用

    Splitter可以对字符串进行分割,在分割时的方式有2种, 1.按字符/字符串分割 2.按正则进行分割 Splitter在分割完成时可以转换成list和map 一.按字符进行分割 //1.用指定字符 ...

  10. vue中使用第三方插件animate.css实现动画效果

    vue中使用第三方插件animate.css实现动画效果1.首先先引入第三方类animated.css2.将你所需要动画的标签用包裹起来3.在transition元素中添加enter-active-c ...