【问题标题】:Flume to HBase dependencie failureFlume 到 HBase 依赖失败
【发布时间】:2015-02-19 07:31:01
【问题描述】:

我使用Apache Cloudera 安装了HBaseFlume。我有一个flume 代理在linux 服务器上运行,HBase 当前主服务器正在该服务器上运行。 我正在尝试从spooldir 写入HBase,但出现以下错误:

...
ERROR org.apache.flume.node.PollingPropertiesFileConfigurationProvider: Failed to start agent because dependencies were not found in classpath. Error follows.
java.lang.NoClassDefFoundError: org/apache/hadoop/hbase/HBaseConfiguration
at  org.apache.flume.sink.hbase.HBaseSink.<init>(HbaseSink.java:116)
...

Flume 配置:

...
#Sinks
tier1.sinks.hbase-sink.channel          = memory-channel
tier1.sinks.hbase-sink.type             = org.apache.flume.sink.hbase.HBaseSink
tier1.sinks.hbase-sink.table            = FlumeTable
tier1.sinks.hbase-sink.columnFamily     = FlumeColumn

我尝试修改flume-env.sh并设置HBASE_HOMEHADOOP_HOME,但没有任何改变。

我已成功写信给HDFS,但HBase 出现问题。

【问题讨论】:

    标签: hadoop hbase flume-ng


    【解决方案1】:

    我可以通过将 hbase-libraries 的路径添加到 conf/flume-env.sh 中的 FLUME_CLASSPATH 来解决这个问题,即,在我的情况下,文件看起来像:

    FLUME_CLASSPATH="/home/USERNAME/hbase-1.0.1.1/lib/*"
    

    希望对你有帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-27
      • 2014-07-01
      • 2017-09-16
      • 1970-01-01
      • 2017-07-31
      • 2016-06-12
      相关资源
      最近更新 更多