1、在配置hbase之后,启动报错,如下:
-
2015-08-21 07:36:34,057 FATAL org.apache.hadoop.hbase.regionserver.HRegionServer: ABORTING region server serverName=slave1,60020,1440142592333, load=(requests=0, regions=0, usedHeap=23, maxHeap=983): Unhandled exception: Protocol org.apache.hadoop.hdfs.protocol.ClientProtocol version mismatch. (client = 42, server = 41)
-
org.apache.hadoop.ipc.RPC$VersionMismatch: Protocol org.apache.hadoop.hdfs.protocol.ClientProtocol version mismatch. (client = 42, server = 41)
-
at org.apache.hadoop.ipc.RPC.getProxy(RPC.java:364)
-
at org.apache.hadoop.hdfs.DFSClient.createRPCNamenode(DFSClient.java:113)
-
at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:215)
-
at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:177)
-
at org.apache.hadoop.hdfs.DistributedFileSystem.initialize(DistributedFileSystem.java:82)
-
at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:1378)
-
at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:66)
-
at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:1390)
-
at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:196)
-
at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:95)
-
at org.apache.hadoop.hbase.regionserver.HRegionServer.handleReportForDutyResponse(HRegionServer.java:885)
-
at org.apache.hadoop.hbase.regionserver.HRegionServer.tryReportForDuty(HRegionServer.java:1509)
-
at org.apache.hadoop.hbase.regionserver.HRegionServer.run(HRegionServer.java:568)
-
at java.lang.Thread.run(Thread.java:745)
报错信息中有
Protocol org.apache.hadoop.hdfs.protocol.ClientProtocol version mismatch
估计是hadoop和hbase的jar包的版本不一致造成的。
2、替换jar
-
grid@slave1:/usr/local/hbase/lib$ mv hadoop-core-0.20-append-r1056497.jar hadoop-core-0.20-append-r1056497.jar.bak
-
grid@slave1:/usr/local/hbase/lib$ cp /usr/local/hadoop/hadoop-0.20.2-core.jar .
替换之后启动hbase正常
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/12219480/viewspace-1778711/
,如需转载,请注明出处,否则将追究法律责任。