成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

HBase問題集

企業動態
今天講一講關于HBase的問題、原因以及解決方法。

1、ERROR: org.apache.hadoop.hbase.MasterNotRunningException

問題:

運行hbase的時候發現這個錯誤:

  1. ERROR: org.apache.hadoop.hbase.MasterNotRunningException: Retried 7 times 

原因:

查看log,發現大量的

2012-04-26 08:13:39,600 INFO org.apache.hadoop.hbase.util.FSUtils: Waiting for dfs to exit safe mode...

原來hdfs還處于安全模式

  1. ./hadoop fsck //hbase/.logs/slave1,60020,1333159627316/slave1%2C60020%2C1333159627316.1333159637444: Under replicated blk_-4160280099734447327_1626. Target Replicas is 3 but found 2 replica(s). 
  2. .... 
  3. /home/hadoop/tmp/mapred/staging/hadoop/.staging/job_201203211238_0002/job.jar: Under replicated blk_-7807519084475423360_1012. Target Replicas is 10 but found 2 replica(s). 
  4. ......................................................................Status: HEALTHY 
  5. Corrupt blocks: 0 
  6. Missing replicas: 9 (3.0612245 %) 

Number of data-nodes: 2沒有損壞的block,有9個丟失的replicas,狀態健康

所以可以強制離開安全模式

解決:

  1. hadoop dfsadmin -safemode leave 
  2. Safe mode is OFF 

運行hbase命令成功

[[178940]]

2、HMaster啟動后自動關閉

問題:

一啟動就出了問題,原先調試好的分布式平臺卻提示了錯誤:

  1. Zookeeper available but no active master location found 

原因:

HMaster的問題,JPS查看發現沒有了HMaster進程,進入到hbase-master日志中查看,發現了以下錯誤提示:

  1. Could not obtain block: blk_number... ...file=/hbase/hbase.version 

無法訪問數據塊的原因無非有兩個:一是該數據塊不存在;二是該數據塊沒有權限。自己去HDFS下查看發現了/hbase目錄,也有hbase.version文件,雖然該文件大小為0kb。于是自己首先想到是權限問題,接下來開始為/hbase修改權限:

  1. %hadoop fs -chmod 777 /hbase 
  2. %hadoop fs -chmod -R 777 /hbase (修改目錄權限) 

但是試過之后結果依舊。這時自己確定HMaster自動關閉的問題不是因為目錄權限拒絕訪問,那么是什么呢?之前也發生過HMaster啟動后自動關閉的問題,自己當時的解決辦法是格式化namenode即可:

  1. %hadoop namenode -format 

但是這次試過之后仍舊不成功,于是自己考慮會不會是由于分布式環境下不同節點的hdfs的重復工作導致的不一致使得HMaster無法正常啟動呢?

解決:

抱著這樣的想法刪掉了各個節點和master上的hdfs數據,在master上重新啟動hbase結果成功,HMaster不再自動關閉。

這時我們需要重新復制生成HDFS干凈的HDFS:

  1. %rm -Rf reports/data 
  2. %hadoop fs -copyFromLocal reports /texaspete/templates/reports 
  3. %hadoop fs -put match/src/main/resources/regexes /texaspete/regexes 

3、Caused by: java.lang.IllegalArgumentException: java.net.UnknownHostException: te

問題:

  1. Caused by: java.lang.IllegalArgumentException: java.net.UnknownHostException: te 

原因:

hbase on hadoop2時,配置的hdfs路徑是HA的映射目錄,而這個路徑并不是一個ip:port的格式,hbase在查找主機名的時候并不知道,就把路徑中的目錄當成了一個ip,無法找到

解決:

把hadoop的hdfs-site.xml和core-site.xml 放到hbase/conf下

4、hive+hbase得不到返回結果

問題:

在hive中建立外表鏈接到hbase的表,在做復雜查詢時發現得不到結果返回。都是hive 0.9 版本。

遠程客戶端錯誤:

  1. Caused by: java.sql.SQLException: Query returned non-zero code: 9, cause: FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.MapRedTask 
  2.     at org.apache.hadoop.hive.jdbc.HivePreparedStatement.executeImmediate(HivePreparedStatement.java:177) 
  3.     at org.apache.hadoop.hive.jdbc.HivePreparedStatement.executeQuery(HivePreparedStatement.java:140) 
  4.     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
  5.     at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
  6.     at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
  7.     at java.lang.reflect.Method.invoke(Unknown Source) 
  8.     at org.hibernate.engine.jdbc.internal.proxy.AbstractStatementProxyHandler.continueInvocation(AbstractStatementProxyHandler.java:122) 
  9.     ... 88 more 
  10. Caused by: HiveServerException(message:Query returned non-zero code: 9, cause: FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.MapRedTask, errorCode:9, SQLState:08S01) 
  11.     at org.apache.hadoop.hive.service.ThriftHive$execute_result.read(ThriftHive.java:1318) 
  12.     at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:78) 
  13.     at org.apache.hadoop.hive.service.ThriftHive$Client.recv_execute(ThriftHive.java:105) 
  14.     at org.apache.hadoop.hive.service.ThriftHive$Client.execute(ThriftHive.java:92) 
  15.     at org.apache.hadoop.hive.jdbc.HivePreparedStatement.executeImmediate(HivePreparedStatement.java:175) 
  16.     ... 94 more 

原因:

查看hadoop日志:缺少hbase的包

  1. java.io.IOException: Cannot create an instance of InputSplit class = org.apache.hadoop.hive.hbase.HBaseSplit:org.apache.hadoop.hive.hbase.HBaseSplit >          
  2.     at org.apache.hadoop.hive.ql.io.HiveInputFormat$HiveInputSplit.readFields(HiveInputFormat.java:145) >          
  3.     at org.apache.hadoop.io.serializer.WritableSerialization$WritableDeserializer.deserialize(WritableSerialization.java:67) >          
  4.     at org.apache.hadoop.io.serializer.WritableSerialization$WritableDeserializer.deserialize(WritableSerialization.java:40) >          
  5.     at org.apache.hadoop.mapred.MapTask.getSplitDetails(MapTask.java:348) >          
  6.     at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:364) >          
  7.     at org.apache.hadoop.mapred.MapTask.run(MapTask.java:324) >          
  8.     at org.apache.hadoop.mapred.Child$4.run(Child.java:268) >          
  9.     at java.security.AccessController.doPrivileged(Native Method) >          
  10.     at javax.security.auth.Subject.doAs(Subject.java:415) >          
  11.     at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1115) >          
  12.     at org.apache.hadoop.mapred.Child.main(Child.java:262) 

解決:

把相關的包導入進hive

修改hive-site.xml

添加:

  1. <property>  
  2.     <name>hive.aux.jars.path</name>  
  3.     <value>file:///opt/cloudera/parcels/CDH-4.4.0-1.cdh4.4.0.p0.39/lib/hbase/hbase.jar,file:///opt/cloudera/parcels/CDH-4.4.0-1.cdh4.4.0.p0.39/lib/hive/lib/hive-hbase-handler-0.10.0-cdh4.4.0.jar,file:///opt/cloudera/parcels/CDH-4.4.0-1.cdh4.4.0.p0.39/lib/zookeeper/zookeeper.jar</value>  
  4. </property>  
  5. <property>  
  6.     <name>hbase.zookeeper.quorum</name>  
  7.     <value>zookeeper的主機名</value>  
  8. </property> 

 

5、在通過JDBC訪問Hive+HBase做統計查詢時報錯HBaseSplit not found

問題:在通過JDBC訪問Hive+HBase做統計查詢時報錯HBaseSplit not found

原因:Hive集成HBase,通過JDBC訪問HBase映射Hive的表做統計查詢時報錯(報錯信息如下),

  1. java.io.IOException: Cannot create an instance of InputSplit class = org.apache.hadoop.hive.hbase.HBaseSplit:org.apache.hadoop.hive.hbase.HBaseSplitat org.apache.hadoop.hive.ql.io.HiveInputFormat$HiveInputSplit.readFields(HiveInputFormat.java:146) 
  2.     at org.apache.hadoop.io.serializer.WritableSerialization$WritableDeserializer.deserialize(WritableSerialization.java:67) 
  3.     at org.apache.hadoop.io.serializer.WritableSerialization$WritableDeserializer.deserialize(WritableSerialization.java:40) 
  4.     at org.apache.hadoop.mapred.MapTask.getSplitDetails(MapTask.java:396) 
  5.     at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:412) 
  6.     at org.apache.hadoop.mapred.MapTask.run(MapTask.java:372) 
  7.     at org.apache.hadoop.mapred.Child$4.run(Child.java:255) 
  8.     at java.security.AccessController.doPrivileged(Native Method) 
  9.     at javax.security.auth.Subject.doAs(Subject.java:396) 
  10.     at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1121) 
  11.     at org.apache.hadoop.mapred.Child.main(Child.java:249) 
  12. Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.hive.hbase.HBaseSplit 
  13.     at java.net.URLClassLoader$1.run(URLClassLoader.java:202) 
  14.     at java.security.AccessController.doPrivileged(Native Method) 
  15.     at java.net.URLClassLoader.findClass(URLClassLoader.java:190) 
  16.     at java.lang.ClassLoader.loadClass(ClassLoader.java:306) 
  17.     at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) 
  18.     at java.lang.ClassLoader.loadClass(ClassLoader.java:247) 
  19.     at java.lang.Class.forName0(Native Method) 
  20.     at java.lang.Class.forName(Class.java:249) 
  21.     at org.apache.hadoop.conf.Configuration.getClassByName(Configuration.java:820) 
  22.     at org.apache.hadoop.hive.ql.io.HiveInputFormat$HiveInputSplit.readFields(HiveInputFormat.java:143) 

錯誤提示是說HBaseSplit類找不到,但是在classpath中有這個類。但是還需要提供auxpath jar包

解決:

修改一下配置文件hive-site.xml,添加以下配置,問題即解決。

  1. <property>  
  2.     <name>hive.aux.jars.path</name>  
  3.     <value>file:///home/用戶目錄/hive-0.10.0/lib/hive-hbase-handler-0.10.0.jar,file:///home/用戶目錄/hive-0.10.0/lib/hbase-0.92.0.jar,file:///home/用戶目錄/hive-0.10.0/lib/zookeeper-3.4.3.jar</value>  
  4. </property> 

 

6、org.apache.hadoop.hbase.ClockOutOfSyncException,Reported time is too far out of sync with master

在啟動Hbase的過程中,有的報出了以下的錯誤:

  1. org.apache.hadoop.hbase.ClockOutOfSyncException: org.apache.hadoop.hbase.ClockOutOfSyncException: Server hadoop2,16020,1470107202883 has been rejected; Reported time is too far out of sync with master.  Time difference of 53999521ms > max allowed of 30000ms 
  2.     at org.apache.hadoop.hbase.master.ServerManager.checkClockSkew(ServerManager.java:407) 
  3.     at org.apache.hadoop.hbase.master.ServerManager.regionServerStartup(ServerManager.java:273) 
  4.     at org.apache.hadoop.hbase.master.MasterRpcServices.regionServerStartup(MasterRpcServices.java:360) 
  5.     at org.apache.hadoop.hbase.protobuf.generated.RegionServerStatusProtos$RegionServerStatusService$2.callBlockingMethod(RegionServerStatusProtos.java:8615) 
  6.     at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2180) 
  7.     at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:112) 
  8.     at org.apache.hadoop.hbase.ipc.RpcExecutor.consumerLoop(RpcExecutor.java:133) 
  9.     at org.apache.hadoop.hbase.ipc.RpcExecutor$1.run(RpcExecutor.java:108) 
  10.     at java.lang.Thread.run(Thread.java:744) 
  11.   
  12.     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 
  13.     at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) 
  14.     at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) 
  15.     at java.lang.reflect.Constructor.newInstance(Constructor.java:526) 
  16.     at org.apache.hadoop.ipc.RemoteException.instantiateException(RemoteException.java:106) 
  17.     at org.apache.hadoop.ipc.RemoteException.unwrapRemoteException(RemoteException.java:95) 
  18.     at org.apache.hadoop.hbase.protobuf.ProtobufUtil.getRemoteException(ProtobufUtil.java:329) 
  19.     at org.apache.hadoop.hbase.regionserver.HRegionServer.reportForDuty(HRegionServer.java:2288) 
  20.     at org.apache.hadoop.hbase.regionserver.HRegionServer.run(HRegionServer.java:907) 
  21.     at java.lang.Thread.run(Thread.java:744) 
  22. Caused by: org.apache.hadoop.hbase.ipc.RemoteWithExtrasException(org.apache.hadoop.hbase.ClockOutOfSyncException): org.apache.hadoop.hbase.ClockOutOfSyncException: Server hadoop2,16020,1470107202883 has been rejected; Reported time is too far out of sync with master.  Time difference of 53999521ms > max allowed of 30000ms 
  23.     at org.apache.hadoop.hbase.master.ServerManager.checkClockSkew(ServerManager.java:407) 
  24.     at org.apache.hadoop.hbase.master.ServerManager.regionServerStartup(ServerManager.java:273) 

錯誤解釋:

當一個RegionServer始終偏移太大時,master節點結將會拋出此異常.

解決方法:

1、確認幾臺機器所屬的時區 時間是否一致,不一致的情況下要同步一致

2、可以適當增加hbase.master.maxclockskew時間

  1. <property> 
  2.     <name>hbase.master.maxclockskew</name>  
  3.     <value>180000</value> 
  4. </property> 

【本文為51CTO專欄作者“王森豐”的原創稿件,轉載請注明出處】

責任編輯:趙寧寧 來源: 神算子
相關推薦

2016-12-14 14:47:59

Zookeeper服務器

2016-12-19 15:32:12

Linux問題集

2016-12-19 19:04:30

Hive問題集

2016-12-13 16:36:15

Hadoopwindows

2011-03-28 17:51:10

nagios

2010-03-25 16:20:44

CentOS安裝

2013-11-22 09:57:03

hadoop1.2.1zookeeper-3hbase-0.94.

2011-02-25 14:25:04

Proftpd

2011-02-22 14:40:25

vsftpd

2009-10-09 17:40:38

VB.Net問題集

2018-07-12 09:25:07

磁盤陣列數據恢復

2011-02-22 14:21:49

vsftpd

2018-04-10 13:02:51

HBase寫入流程數據

2011-03-03 14:26:15

PureftpdSSHFTP

2009-12-31 15:28:02

Silverlight

2011-05-16 13:15:55

MySQL存儲字符集

2009-07-01 00:23:40

MySQL字符集亂碼

2011-03-03 13:41:36

Pureftpd防火墻

2010-05-17 10:01:09

MySql字符集

2021-12-12 18:12:13

Hbase線上問題
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久精品在线播放 | 久久国产成人 | 中文字幕一区二区三区在线观看 | www日本在线播放 | 欧美日韩在线免费观看 | 一区二区三区中文字幕 | 日韩视频精品在线 | 日韩视频一区在线观看 | 在线成人精品视频 | 久久成人综合 | 精品一区二区三区在线观看国产 | 中文字幕 在线观看 | 日日人人| 久久精品99| 亚洲综合精品 | 亚洲欧美日韩精品久久亚洲区 | 久久精品亚洲 | 日韩午夜一区二区三区 | 亚洲一区二区三区在线免费观看 | 亚洲国产二区 | 日本久久精品视频 | 综合久久久 | 久久精品一区 | 亚洲一区二区电影在线观看 | a级片在线观看 | 中文字幕av在线 | 国产精品久久久久久久久久了 | 国产精品毛片一区二区三区 | 午夜www | 国内精品久久精品 | 国产精品免费观看 | 看av网址| 国产成人综合一区二区三区 | 亚洲精品一区二区在线观看 | 少妇精品亚洲一区二区成人 | 日本成人免费观看 | 国产精品揄拍一区二区久久国内亚洲精 | 国产精品视频在线观看 | 99热视| 毛片网站在线观看 | 福利片在线看 |