本帖最后由 howtodown 于 2014-4-27 15:25 编辑
问题导读:
1.Hbase sink的作用是什么?
2.需要修改那些配置文件?
阅读本文首先需要知道什么是flume,同时需要知道fFlume内置channel,source,sink三个组件。
在下载好的Flume-0.9.4里面有两个用于测试Hbase sink的插件类,但是默认情况下,这个插件类是没有被启用的,读完这篇文章你将会了解到如何配置Hbase sink。
1、修改$FLUME_HOME/conf/flume-site.xml的配置文件,在里面添加以下配置:
- <property>
- <name>flume.plugin.classes</name>
- <value>com.cloudera.flume.hbase.HBaseSink,
- com.cloudera.flume.hbase.Attr2HBaseEventSink</value>
- <description>Comma separated list of plugin classes</description>
- </property>
复制代码
其中value属性配置的是Hbase sink类,需要将包名添加进去。
如果你需要编写自己的Hbase Sink类,只需要使你的类继承自EventSink.Base类,并按要求重写其中的一些方法,具体可以参照Flume源码自带的HBaseSink和Attr2HBaseEventSink类的写法。
2、拷贝Hbase sink jar文件到$FLUME_HOME/plugins文件夹里面
- [wyp@master plugins] cp ~/flume-plugin-hbasesink-0.9.4-cdh3u3.jar \
- $FLUME_HOME/plugins
复制代码
其实不需要拷贝到$FLUME_HOME/plugins里面,你随便放都行,这里主要是为了便于以后的管理而这样配置的。
3、修改$FLUME_HOME/bin/flume-env.sh文件,在里面添加如下内容
- export FLUME_CLASSPATH= \
- /home/q/flume-0.9.4-cdh3u3/plugins/flume-plugin-hbasesink-0.9.4-cdh3u3.jar
复制代码
4、重启Flume master节点
重启完Flume master节点之后,可以在http://master:35871/masterext.jsp页面中的Sinks表格里面看到attr2hbase和hbase两个Hbase sink,这样你就可以在collector里面用到这个Sink。当然,如果默认的Hbase sink不能满足你的要求,可以自己写一个Hbase sink。
附上源码地址:源码地址
过往记忆还
|