Flume+Hadoop2.8遇到的No FileSystem for scheme: hdfs问题

因为项目需求,最近一直在搭建日志存储服务器,初步打算log4j2+hadoop,然而在使用hdfs sink的时候发现问题了。先说一下大体的使用hdfs sink步骤:

  1. 新建xx.conf文件,写入:Flume+Hadoop2.8遇到的No FileSystem for scheme: hdfs问题
  2. 把hadoop的配置文件core-site.xml以及hdfs-site.xml放入flume的conf文件夹
  3. 把图示jar包放入flume的lib文件夹中:Flume+Hadoop2.8遇到的No FileSystem for scheme: hdfs问题
  4. 编辑conf/flume-env.sh文件,指定jdk位置

这个时候启动出现问题了,报错:

Flume+Hadoop2.8遇到的No FileSystem for scheme: hdfs问题

按照*的说法是core-site中加入:

<property>

<name>fs.hdfs.impl</name>

<value>org.apache.hadoop.hdfs.DistributedFileSystem</value>

</property>

这个时候报新错:无法发现类org.apache.hadoop.hdfs.DistributedFileSystem,所以初步怀疑应该是jar包版本的原因,因为hadoop版本为2.8,所以flume中集成的hadoop jar包也为2.8,果断降级使用,换2.7依然报错,换2.6项目顺利启动,删除core-site中fs.hdfs.impl没有任何影响。等有机会跟踪一下源码发现问题吧。特此记录一下。有转载的朋友说明一下出处,谢谢。