`

Flume: avro source and sink

阅读更多

In order to flow the data across multiple agents or hops, the sink of the previous agent and source of the current hop need to be avro type with the sink pointing to the hostname (or IP address) and port of the source.

Two agents communicating over Avro RPC

 

 

Hop 1:

a1.channels.ch1.type = memory

a1.sources.avro-source1.channels = ch1
a1.sources.avro-source1.type = avro
a1.sources.avro-source1.bind = 0.0.0.0
a1.sources.avro-source1.port = 41414

a1.sinks.avro-sink1.channel = ch1
a1.sinks.avro-sink1.type = avro
a1.sinks.avro-sink1.hostname = 192.168.10.204
a1.sinks.avro-sink1.port = 5545
a1.sinks.avro-sink1.batch-size = 1

a1.channels = ch1
a1.sources = avro-source1
a1.sinks = avro-sink1

 

Hop2

a1.channels.ch1.type = memory

a1.sources.avro-source1.channels = ch1
a1.sources.avro-source1.type = avro
a1.sources.avro-source1.bind = 0.0.0.0
a1.sources.avro-source1.port = 5545

a1.sinks.log-sink1.channel = ch1
a1.sinks.log-sink1.type = logger

a1.channels = ch1
a1.sources = avro-source1
a1.sinks = log-sink1

 

 

 

test using avro-client

flume-ng avro-client -H dmining05 --port 41414 -F /etc/passwd

 

 

 

 

 

 

 

 

 

 

 

 

 

 

References

http://flume.apache.org/FlumeUserGuide.html

分享到:
评论

相关推荐

    Flume 构建高可用、可扩展的海量日志采集系统

    Flume提供了多种预定义的source类型,例如简单文件source,允许监控和读取指定目录下的新文件,或者Avro source,用于与其他Avro兼容的系统进行交互。 2. Channel(通道):是Flume内部的数据缓冲区,负责临时存储...

    flume-ng安装

    在 `conf/flume-conf.properties` 文件中配置 Sink: ``` agent.sinks.remotesink.type = avro agent.sinks.remotesink.hostname = master agent.sinks.remotesink.port = 44444 ``` 5. 启动 Flume-NG 使用以下命令...

    flume-avro-java-client:一个简单的java客户端将avro事件发送到flume代理

    在这个Java客户端的场景下,应用生成的Avro事件通过Source进入Flume,然后经过Channel暂存,最终由Sink传输到目的地。 标签“Java”表明这个客户端是用Java语言编写的,因此,开发者需要具备一定的Java编程基础来...

    Flume的channel和sink.docx

    在Flume中,数据流动的核心组件是`Source`、`Channel`和`Sink`。 **Channel**是Flume中的中介存储,它在Source和Sink之间提供缓冲。以下是几种常见的Channel类型: 1. **Memory Channel**:将事件存储在内存中,...

    04、日志收集系统Flume-实时计算1-4:flume简介.pptx

    Flume 提供了多种类型的Source,如Avro Source、Spooling Directory Source、NetCat Source等。对于已存在的日志文件,可以直接使用如Exec Source(通过Linux命令如`tail -F`)或Spooling Directory Source(监视...

    Apache flume1.6_src

    Flume 支持多种类型的 Source,如 TailSource(监听日志文件尾部)、AvroSource(接收 Avro 格式的数据)和 JMSSource(从 JMS 提供者接收消息)。Source 负责读取数据并将其放入 Channel。 2. **Channel**:通道,...

    04、日志收集系统Flume-实时计算4-3:flume配置深入.pptx

    - **单一代理流定义**:一个简单的 Flume 配置由源(Source)、接收器(Sink)和通道(Channel)组成。源负责接收数据,接收器负责输出数据,而通道作为临时存储,保证数据在传输过程中的可靠性。配置文件中,每个...

    Flume1.8安装部署

    2. 配置环境变量:export `FLUME_HOME=/usr/local/apache/flume1.8`,export `PATH=$FLUME_HOME/bin:$PATH`,然后使环境变量配置生效:`source ~/.bashrc`。 3. 配置 flume-env.sh 文件:将 `flume-env.sh.template`...

    Flume安装包、安装文档

    # Bind the source and sink to the channel a1.sources.r1.channels = c1 a1.sinks.k1.channel = c1 ``` 这个配置定义了一个名为`a1`的Agent,它有一个Avro类型的Source(r1)监听本地44444端口,一个HDFS类型的...

    Flume 基础架构.pptx )

    Flume 主要由三个关键组件构成:**Source**、**Channel** 和 **Sink**。这些组件协同工作,完成日志数据从采集到存储的整个过程。 1. **Source 组件**:负责接收来自不同源头的日志数据,这些源头可以是文件系统、...

    java大数据内容_7Flume、Kafka、Sqoop、Lucene

    2. **配置**:编辑 flume/conf 下的配置文件来定义 Flume 的数据流,包括 Source、Channel 和 Sink 的配置。 3. **启动**:使用 flume-ng agent 命令来启动指定的 Agent。 例如,配置一个简单的 Flume 流程可能如下...

    flume配置文件demo

    这些配置文件使用基于 Java 属性的格式,定义了 Flume 的 Agent、Source、Channel 和 Sink 组件。下面我们将深入探讨这些概念: 1. **Agent**: Flume 的基本工作单元,由 Source、Channel 和 Sink 三部分组成。一个...

    Flume1.7.0用户指南

    Avro 客户端与Flume的AvroSource配合使用,而Thrift客户端则提供另一种选择。开发者可以根据需求选择合适的通信方式来构建自定义客户端。 总之,Apache Flume 1.7.0 是一个强大的日志管理和传输工具,其核心特性...

    大数据Flume学习视频-免费

    Flume提供了多种类型的Source,包括Avro Source、Thrift Source、Exec Source等。 - **Channel(通道)**:作为Source和Sink之间的缓冲区,用于临时存储数据。Flume支持Memory Channel、File Channel等多种类型。 - ...

    flume自学手册

    - **AvroSource:** 支持通过Avro协议接收数据。 - **Log4jSource:** 接收Log4j输出的日志数据。 - **SyslogTcpSource:** 监听TCP端口接收syslog消息。 - **HttpSource:** 支持通过HTTP POST请求接收JSON格式...

    Flume学习文档(1){Flume基本概念、Flume事件概念与原理}.docx

    Flume提供了多种类型的Source来适应不同的数据源,例如avro(适用于Flume之间通信)、exec(用于监控命令行输出)、taildir(监控文件夹中的新文件)等。 - **Channel**:作为Source和Sink之间的缓冲区,确保数据...

Global site tag (gtag.js) - Google Analytics