分享

CDH安装的flume1.5.0怎么添加自定义插件

为了集群的管理Cloudera Manager,并安装CDH的flume1.5.0,现在我需要把第三方插件加入flume1.5.0中并引用,该怎么做呢?我直接把第三方插件jar扔到lib下但是还是出错?还需要配置什么吗?
lib=/opt/cloudera/parcels/CDH-5.1.0-1.cdh5.1.0.p0.53/lib/flume-ng/lib/

已有(8)人评论

跳转到指定楼层
hyj 发表于 2014-7-23 19:53:12
配置文件该了吗?
参考flume 插件开发介绍
回复

使用道具 举报

shadowhtx 发表于 2014-7-23 21:09:41
hyj 发表于 2014-7-23 19:53
配置文件该了吗?
参考flume 插件开发介绍

我用CDH安装的啊,配置文件之类都是CDH自动完成,agent也是在CM上配置,所以我不知道怎么用第三方插件,如果是独立apach flume,很好配置。
回复

使用道具 举报

hyj 发表于 2014-7-24 02:57:19
它们之间的原理应该都是一样的。flume启动之后,肯定读取配置文件
需要解决下面两个问题
1.自定义jar包放到什么位置
2.位置对了,该如何配置
你说放到lib里面没有生效,你的配置文件修改了吗?
回复

使用道具 举报

hyj 发表于 2014-7-24 03:27:05
shadowhtx 发表于 2014-7-23 21:09
我用CDH安装的啊,配置文件之类都是CDH自动完成,agent也是在CM上配置,所以我不知道怎么用第三方插件, ...
提供下你的安装文档,如果是flume你会开发的,cdh的也是一样,只不过cdh做了一下封装,原理都是一样的。
回复

使用道具 举报

sstutu 发表于 2014-7-24 03:40:25

至于放在什么位置,你可以自己找找。比如hdfs、hbase的插件放到什么位置了,配置文件使用的是那个类。
然后开发,你就参考这个Flume 1.5.0 Developer Guide官网文档。

回复

使用道具 举报

shadowhtx 发表于 2014-7-24 13:56:46
谢谢各位的解答,已经找到答案,需要根据CM的配置路径,在flume页面下的进程选项里可以找到环境变量。
回复

使用道具 举报

zhanggl 发表于 2016-1-11 11:03:18
楼主你好,我也遇到跟你类似的问题,在cm 下配置flume。日志提示成功,但是hdfs 上就是没有数据
配置文件如下
[mw_shl_code=java,true]# Define a memory channel called ch1 on agent1
agent1.channels.ch1.type = memory
agent1.channels.ch1.capacity = 100000
agent1.channels.ch1.transactionCapacity = 100000
agent1.channels.ch1.keep-alive = 30

# Define an Avro source called avro-source1 on agent1 and tell it
# to bind to 0.0.0.0:41414. Connect it to channel ch1.
#agent1.sources.avro-source1.channels = ch1
#agent1.sources.avro-source1.type = avro
#agent1.sources.avro-source1.bind = 0.0.0.0
#agent1.sources.avro-source1.port = 41414
#agent1.sources.avro-source1.threads = 5

#define source monitor a file
agent1.sources.avro-source1.type = exec
agent1.sources.avro-source1.shell = /bin/bash -c
agent1.sources.avro-source1.command = tail -n +0 -F node13:/home/d12
agent1.sources.avro-source1.channels = ch1
agent1.sources.avro-source1.threads = 5

# Define a logger sink that simply logs all events it receives
# and connect it to the other end of the same channel.
agent1.sinks.log-sink1.channel = ch1
agent1.sinks.log-sink1.type = hdfs
agent1.sinks.log-sink1.hdfs.path = hdfs://node12:8020/flume
agent1.sinks.log-sink1.hdfs.writeFormat = Text
agent1.sinks.log-sink1.hdfs.fileType = DataStream
agent1.sinks.log-sink1.hdfs.rollInterval = 0
agent1.sinks.log-sink1.hdfs.rollSize = 1000000
agent1.sinks.log-sink1.hdfs.rollCount = 0
agent1.sinks.log-sink1.hdfs.batchSize = 1000
agent1.sinks.log-sink1.hdfs.txnEventMax = 1000
agent1.sinks.log-sink1.hdfs.callTimeout = 60000
agent1.sinks.log-sink1.hdfs.appendTimeout = 60000

# Finally, now that we've defined all of our components, tell
# agent1 which ones we want to activate.
agent1.channels = ch1
agent1.sources = avro-source1
agent1.sinks = log-sink1[/mw_shl_code]
回复

使用道具 举报

sundays98 发表于 2018-3-2 15:41:05
shadowhtx 发表于 2014-7-24 13:56
谢谢各位的解答,已经找到答案,需要根据CM的配置路径,在flume页面下的进程选项里可以找到环境变量。

请问您最终是怎么解决的?能说的稍微详细一点吗
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条