我尝试使用带有syslogs源和hbase接收器的flume
当我运行flume代理时,我收到此错误:Failed to start agent because dependencies were not found in classpath. Error follows. java.lang.NoClassDefFoundError: org/apache/hadoop/hbase/HBaseConfiguration
,这意味着(来自那个question)某些hbase lib缺失,要解决它我需要在flume-env.sh文件中设置路径对于这些lib,我做了什么,并且运行了水槽但是这里持续存在的错误是我用来运行水槽代理的命令:bin/flume-ng agent --conf ./conf --conf-file ./conf/flume.properties --name agent -Dflume.root.logger=INFO,console
所以我的问题是,如果我使用的解决方案是正确的(我需要添加lib到flume)为什么我仍然会得到相同的错误,如果不是如何解决该问题
修改
从我读到的文档:The flume-ng executable looks for and sources a file named "flume-env.sh" in the conf directory specified by the --conf/-c commandline option.
。
我还没有测试它,但我认为这是解决方案(我只需要确认)
答案 0 :(得分:1)
我建议您下载HBase full tar ball并将环境变量(如HBASE_HOME等)设置到正确的位置。然后Flume可以自动从HBase repo中选择库。