我已安装 HBase
以及 Flume
使用 Apache Cloudera
. 我有一个 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_HOME HADOOP_HOME
,但什么也没变。
我成功地写信给 HDFS
,但是 HBase
正在制造问题。
1条答案
按热度按时间z9gpfhce1#
我可以通过将hbase库的路径添加到conf/flume-env.sh中的flume\u类路径来解决此问题,即,在我的示例中,该文件如下所示:
希望有帮助。