Flume内置了大量的Sourece,其中Avro Source、Thrift Source、Spooling Directory Source、Kafka Source具有较好的性能和较广泛的使用场景,下面主要介绍这几种Source。
| 类型 | 说明 |
|---|---|
| Avro Source | 支持Avro协议(实际上是Avro RPC),内置支持。 |
| Thrift Source | 支持Thrift协议,内置支持。 |
| Exec Source | 基于Unix的command在标准输出上生产数据。 |
| JMS Source | 从JMS系统(消息、主题)中读取数据,该Source目前只在ActiveMQ中测试。 |
| Spooling Directory Source | 监控指定目录内数据变更。 |
| Twitter 1% firehose Source | 通过API持续下载Twitter数据,试验性质。 |
| Netcat Source | 监控某个端口,将流经端口的每一个文本行数据作为Event输入。 |
| Sequence Generator Source | 序列生成器数据源,生产序列数据。 |
| Syslog Sources | 读取syslog数据,产生Event,支持UDP和TCP两种协议。 |
| HTTP Source | 基于HTTP POST或GET方式的数据源,支持JSON、BLOB表示形式。 |
| Kafka Source | 从Kafka Topic中读取数据。 |
| Stress Source | 压力测试用。 |
| Legacy Sources | 兼容老的Flume OG中Source(0.9.x版本) |
| Custom Source | 自定义Source |
| Scribe Source |
Avro Source
Avro Source监听Avro端口,接收外部Avro客户端发送过来的Avro Event数据。在多级流中,Avro Source可以和前一个Flume Agent的Avro Sink配对,建立分层收集拓扑。Avro Source的配置如下表所示,表中只列出必填项,更多配置项请参考官方用户手册。
| 配置项 | 默认值 | 说明 |
|---|---|---|
| channels | 与Source连接的通道名称。 | |
| type | Source的类型名称,值为avro。 | |
| port | Source监听的端口 | |
| bind | 服务器主机名或者IP地址 |
Avro Source配置参考如下,a1为Agent的实例名称。
a1.sources = r1 #a1中的Source
a1.channels = c1 #a1中的Channel
a1.sources.r1.type = avro #Source的类型
a1.sources.r1.channels = c1 #指定Source r1数据发送到的Channel
a1.sources.r1.bind = 0.0.0.0
Flume数据源详解:Avro, Thrift, Exec, JMS, Spooling Directory, Kafka, NetCat, HTTP

这篇博客详细介绍了Flume的多种数据源,包括Avro Source、Thrift Source、Exec Source、JMS Source、Spooling Directory Source、Kafka Source、NetCat Source和HTTP Source。Avro与Thrift Source用于构建多级流,Exec Source易导致数据丢失,JMS Source适用于ActiveMQ,Spooling Directory Source提供高可靠性,Kafka Source作为Kafka的消费者,NetCat Source监听端口,HTTP Source接收HTTP请求。
最低0.47元/天 解锁文章
955

被折叠的 条评论
为什么被折叠?



