Description
This problem is usually not encountered because hadoop-mapreduce-historyserver is usually installed on a host where hadoop-hdfs is also installed.
The hadoop-mapreduce-historyserver package does not have any dependency (direct or indirect) on hadoop-hdfs. If hadoop-hdfs is not installed, however, the hadoop-mapreduce-historyserver service will fail to start, due to:
2013-04-04 14:15:25,083 FATAL org.apache.hadoop.mapreduce.v2.hs.JobHistoryServer: Error starting JobHistoryServer java.lang.RuntimeException: java.lang.ClassNotFoundException: Class org.apache.hadoop.fs.Hdfs not found at org.apache.hadoop.conf.Configuration.getClass(Configuration.java:1571) at org.apache.hadoop.fs.AbstractFileSystem.createFileSystem(AbstractFileSystem.java:142) at org.apache.hadoop.fs.AbstractFileSystem.get(AbstractFileSystem.java:233) at org.apache.hadoop.fs.FileContext$2.run(FileContext.java:321) at org.apache.hadoop.fs.FileContext$2.run(FileContext.java:319) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:396) at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1332) at org.apache.hadoop.fs.FileContext.getAbstractFileSystem(FileContext.java:319) at org.apache.hadoop.fs.FileContext.getFileContext(FileContext.java:432) at org.apache.hadoop.fs.FileContext.getFileContext(FileContext.java:454) at org.apache.hadoop.mapreduce.v2.hs.HistoryFileManager.init(HistoryFileManager.java:392) at org.apache.hadoop.mapreduce.v2.hs.JobHistory.init(JobHistory.java:87) ...
Installing the hadoop-hdfs package solves the problem.