Flume 代理不包含任何有效通道

Posted

技术标签:

【中文标题】Flume 代理不包含任何有效通道【英文标题】:Flume agent does not contain any valid channels 【发布时间】:2018-06-27 19:34:32 【问题描述】:

我是 Flume 的新手。我试图从 Twitter 中提取数据,但我没有成功。 (我正在使用 Cloudera 快速入门)

我的 conf 文件如下所示:

TwitterAgent.sources = Twitter
TwitterAgent.channels = MemChannel
TwitterAgent.sinks = HDFS

TwitterAgent.sources.Twitter.type = com.cloudera.flume.source.TwitterSource
TwitterAgent.sources.Twitter.channels = MemChannel 

我已经添加了所有这些值,这些值来自 Twitter 帐户 consumerKey、consumerSecret、accessToken、accessTokenSecret、关键字和路径

TwitterAgent.sinks.HDFS.channel = MemChannel
TwitterAgent.sinks.HDFS.type = hdfs
TwitterAgent.sinks.HDFS.hdfs.fileType =  DataStream
TwitterAgent.sinks.HDFS.hdfs.writeFormat = Text
TwitterAgent.sinks.HDFS.hdfs.batchSize = 1000
TwitterAgent.sinks.HDFS.hdfs.rollsize = 0
TwitterAgent.sinks.HDFS.hdfs.rollCount = 10000

我用来执行conf文件的命令是:

flume-ng agent --conf conf --conf-file flume.conf -Dflume.root.logger=DEBUG,console -name TwitterAgent

我得到的错误是:

18/06/27 12:17:18 WARN conf.FlumeConfiguration: Agent configuration for 'TwitterAgent' does not contain any valid channels. Marking it as invalid.
18/06/27 12:17:18 WARN conf.FlumeConfiguration: Agent configuration invalid for agent 'TwitterAgent'. It will be removed.
18/06/27 12:17:18 INFO conf.FlumeConfiguration: Post-validation flume configuration contains configuration for agents: []
18/06/27 12:17:18 WARN node.AbstractConfigurationProvider: No configuration found for this host:TwitterAgent
18/06/27 12:17:18 INFO node.Application: Starting new configuration: sourceRunners: sinkRunners: channels: 

请给我建议。

【问题讨论】:

【参考方案1】:

我认为你的执行命令有问题,错误是关于查找配置文件。

命令应该是

flume-ng agent -c conf -f conf/flume.conf -Dflume.root.logger=DEBUG,console -n TwitterAgent

您必须指定配置文件路径。您可以尝试 -f conf/flume.conf 而不是 -f flume.conf

【讨论】:

以上是关于Flume 代理不包含任何有效通道的主要内容,如果未能解决你的问题,请参考以下文章

Flume学习之路 Flume的配置方式

Flume拦截器 & 测试Flume-Kafka通道

Flume拦截器 & 测试Flume-Kafka通道

Flume拦截器 & 测试Flume-Kafka通道

flume与kafka集成配置

如何在不更改其他通道的情况下有效地将 cv::Mat 的给定通道设置为给定值?