我有hadoop 2.7.3和hbase 1.2.3。我试图按照官方文档在伪分布式模式下运行hbase。我只有一台机器。 HDFS运行良好。
然而问题是当我执行start-hbase.sh时,HRegionServer启动但是自动退出。我可以看到HMaster和HQuorumPeer仍在那里。
从日志中,我认为hbase创建了一个文件/hbase/WALs/ubuntuserver,16201,1478832152563/ubuntuserver%2C16201%2C1478832152563..meta.1478832162907.meta但没有权限将内容附加到文件中。目前的用户是“ubuntuserver”'在小组' root'。我已将hdfs上的所有文件夹更改为&u39ntuserver'和' root'。并且' hdfs dfs -chmod -R 777 /'。然后重启linux,hdfs然后重启hbase。它不起作用。每次HResionServer启动时,它都会创建一个新文件,然后无权附加到它。
这是HRegionServer的日志。如何解决这个问题?
2016-11-11 11:13:44,774 INFO [RS_OPEN_META-ubuntuServer:16201-0-MetaLogRoller] regionserver.HRegionServer:STOPPED:日志滚轮中的日志关闭失败 2016-11-11 11:13:44,774 INFO [RegionServer的/ ubuntuServer / 10.0.2.15:16201] regionserver.SplitLogWorker:发送中断以停止工作者 thread 2016-11-11 11:13:44,775 INFO [RegionServer的/ ubuntuServer / 10.0.2.15:16201] regionserver.HRegionServer:停止infoServer 2016-11-11 11:13:44,776 INFO [SplitLogWorker-ubuntuServer:16201] regionserver.SplitLogWorker:SplitLogWorker中断。退出。 2016-11-11 11:13:44,776 INFO [SplitLogWorker-ubuntuServer:16201] regionserver.SplitLogWorker:SplitLogWorker ubuntuserver,16201,1478834015515退出2016-11-11 11:13:44,780 INFO [RS_OPEN_META-ubuntuServer:16201-0-MetaLogRoller] regionserver.LogRoller:LogRoller退出。 2016-11-11 11:13:44,805 INFO [regionserver / ubuntuServer / 10.0.2.15:16201] mortbay.log:已停止 SelectChannelConnector@0.0.0.0:16301 2016-11-11 11:13:44,810 INFO [RegionServer的/ ubuntuServer / 10.0.2.15:16201] regionserver.HeapMemoryManager:Stoping HeapMemoryTuner家务活。 2016-11-11 11:13:44,810 INFO [RegionServer的/ ubuntuServer / 10.0.2.15:16201] flush.RegionServerFlushTableProcedureManager:停止区域服务器 冲洗程序经理突然。 2016-11-11 11:13:44,810 INFO [RegionServer的/ ubuntuServer / 10.0.2.15:16201] snapshot.RegionServerSnapshotManager:停止 RegionServerSnapshotManager突然。 2016-11-11 11:13:44,810 INFO [RegionServer的/ ubuntuServer / 10.0.2.15:16201] regionserver.HRegionServer:中止服务器 ubuntuserver,16201,1478834015515 2016-11-11 11:13:44,811 INFO [RegionServer的/ ubuntuServer / 10.0.2.15:16201] client.ConnectionManager $ HConnectionImplementation:关闭zookeeper sessionid = 0x158516036c10005 2016-11-11 11:13:44,813 INFO [RegionServer的/ ubuntuServer / 10.0.2.15:16201-EventThread] zookeeper.ClientCnxn:EventThread关闭2016-11-11 11:13:44,814 INFO [regionserver / ubuntuServer / 10.0.2.15:16201] zookeeper.ZooKeeper: 会议:0x158516036c10005关闭2016-11-11 11:13:44,814 INFO [RegionServer的/ ubuntuServer / 10.0.2.15:16201] regionserver.HRegionServer:停止服务器 ubuntuserver,16201,1478834015515;所有地区都关闭。 2016年11月11日 11:13:44,810 INFO [MemStoreFlusher.0] regionserver.MemStoreFlusher: MemStoreFlusher.0退出2016-11-11 11:13:44,820 INFO [MemStoreFlusher.1] regionserver.MemStoreFlusher:MemStoreFlusher.1 退出2016-11-11 11:13:44,814警告 [regionserver / ubuntuServer / 10.0.2.15:16201] wal.ProtobufLogWriter: 无法编写预告片,非致命,继续...... java.nio.channels.ClosedChannelException 在org.apache.hadoop.hdfs.DFSOutputStream.checkClosed(DFSOutputStream.java:1538) 在org.apache.hadoop.fs.FSOutputSummer.write(FSOutputSummer.java:98) at org.apache.hadoop.fs.FSDataOutputStream $ PositionCache.write(FSDataOutputStream.java:58) 在java.io.DataOutputStream.write(DataOutputStream.java:107) 在com.google.protobuf.CodedOutputStream.refreshBuffer(CodedOutputStream.java:833) 在com.google.protobuf.CodedOutputStream.flush(CodedOutputStream.java:843) 在com.google.protobuf.AbstractMessageLite.writeTo(AbstractMessageLite.java:80) 在org.apache.hadoop.hbase.regionserver.wal.ProtobufLogWriter.writeWALTrailer(ProtobufLogWriter.java:157) 在org.apache.hadoop.hbase.regionserver.wal.ProtobufLogWriter.close(ProtobufLogWriter.java:130) 在org.apache.hadoop.hbase.regionserver.wal.FSHLog.shutdown(FSHLog.java:1079) 在org.apache.hadoop.hbase.wal.DefaultWALProvider.shutdown(DefaultWALProvider.java:114) 在org.apache.hadoop.hbase.wal.WALFactory.shutdown(WALFactory.java:216) 在org.apache.hadoop.hbase.regionserver.HRegionServer.shutdownWAL(HRegionServer.java:1315) 在org.apache.hadoop.hbase.regionserver.HRegionServer.run(HRegionServer.java:1064) at java.lang.Thread.run(Thread.java:745)2016-11-11 11:13:44,829 INFO [regionserver / ubuntuServer / 10.0.2.15:16201] regionserver.Leases:regionserver / ubuntuServer / 10.0.2.15:16201关闭 租约2016-11-11 11:13:44,829 INFO [regionserver / ubuntuServer / 10.0.2.15:16201] regionserver.Leases: regionserver / ubuntuServer / 10.0.2.15:16201已结束租约2016-11-11 11:13:44,830 INFO [regionserver / ubuntuServer / 10.0.2.15:16201] hbase.ChoreService:杂务服务: ubuntuserver,16201,1478834015515 [[ScheduledChore:名称: ubuntuserver,16201,1478834015515-MemstoreFlusherChore周期:10000 单位:MILLISECONDS],[ScheduledChore:名称:MovedRegionsCleaner for region ubuntuserver,16201,1478834015515时间:120000单位: MILLISECONDS]]关闭2016-11-11 11:13:48,193 INFO [HBase-Metrics2-1] impl.MetricsSystemImpl:停止HBase指标 系统... 2016-11-11 11:13:48,194 INFO [HBase-Metrics2-1] impl.MetricsSystemImpl:HBase指标系统已停止。 2016年11月11日 11:13:48,695 INFO [HBase-Metrics2-1] impl.MetricsConfig:已加载 hadoop-metrics2-hbase.properties 2016-11-11的属性 11:13:48,708 INFO [HBase-Metrics2-1] impl.MetricsSystemImpl: 计划的快照周期为10秒。 2016-11-11 11:13:48,708 INFO [HBase-Metrics2-1] impl.MetricsSystemImpl:HBase指标系统 2016-11-11 11:13:50,001 INFO [RegionServer的/ ubuntuServer / 10.0.2.15:16201.logRoller] regionserver.LogRoller:LogRoller退出。 2016-11-11 11:13:50,002 INFO [regionserver / ubuntuServer / 10.0.2.15:16201] regionserver.CompactSplitThread:等待分割线程完成... 2016-11-11 11:13:50,002 INFO [RegionServer的/ ubuntuServer / 10.0.2.15:16201] regionserver.CompactSplitThread:等待合并线程完成... 2016-11-11 11:13:50,002 INFO [RegionServer的/ ubuntuServer / 10.0.2.15:16201] regionserver.CompactSplitThread:等待大型压缩线程 完成... 2016-11-11 11:13:50,002 INFO [RegionServer的/ ubuntuServer / 10.0.2.15:16201] regionserver.CompactSplitThread:等待小型压缩线程 完成... 2016-11-11 11:13:50,012 INFO [regionserver / ubuntuServer / 10.0.2.15:16201] ipc.RpcServer:正在停止 服务器在16201 2016-11-11 11:13:50,012 INFO [RpcServer.listener,port = 16201] ipc.RpcServer: RpcServer.listener,port = 16201:停止2016-11-11 11:13:50,017 INFO [RpcServer.responder] ipc.RpcServer:RpcServer.responder:已停止 2016-11-11 11:13:50,017 INFO [RpcServer.responder] ipc.RpcServer: RpcServer.responder:停止2016-11-11 11:13:50,016 INFO [RegionServer的/ ubuntuServer / 10.0.2.15:16201.leaseChecker] regionserver.Leases: regionserver / ubuntuServer / 10.0.2.15:16201.leaseChecker关闭租约 2016-11-11 11:13:50,026 INFO [RegionServer的/ ubuntuServer / 10.0.2.15:16201.leaseChecker] regionserver.Leases: regionserver / ubuntuServer / 10.0.2.15:16201.leaseChecker关闭了租约 2016-11-11 11:13:50,028 INFO [main-EventThread] zookeeper.ClientCnxn: EventThread关闭2016-11-11 11:13:50,029 INFO [regionserver / ubuntuServer / 10.0.2.15:16201] zookeeper.ZooKeeper: 会议:0x158516036c10004关闭2016-11-11 11:13:50,029 INFO [RegionServer的/ ubuntuServer / 10.0.2.15:16201] regionserver.HRegionServer:停止服务器 ubuntuserver,16201,1478834015515; zookeeper连接已关闭。 2016-11-11 11:13:50,029 INFO [RegionServer的/ ubuntuServer / 10.0.2.15:16201] regionserver.HRegionServer:regionserver / ubuntuServer / 10.0.2.15:16201 退出2016-11-11 11:13:50,029错误[主要] regionserver.HRegionServerCommandLine:区域服务器退出 java.lang.RuntimeException:HRegionServer已中止 在org.apache.hadoop.hbase.regionserver.HRegionServerCommandLine.start(HRegionServerCommandLine.java:68) 在org.apache.hadoop.hbase.regionserver.HRegionServerCommandLine.run(HRegionServerCommandLine.java:87) 在org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70) 在org.apache.hadoop.hbase.util.ServerCommandLine.doMain(ServerCommandLine.java:126) 在org.apache.hadoop.hbase.regionserver.HRegionServer.main(HRegionServer.java:2665) 2016-11-11 11:13:50,031 INFO [Thread-6] regionserver.ShutdownHook: 关机钩启动; hbase.shutdown.hook = TRUE; fsShutdownHook=org.apache.hadoop.fs.FileSystem$Cache$ClientFinalizer@18230356 2016-11-11 11:13:50,033 INFO [Thread-6] regionserver.ShutdownHook: 启动fs shutdown hook thread。 2016-11-11 11:13:50,036错误 [Thread-82] hdfs.DFSClient:无法关闭inode 16780 org.apache.hadoop.ipc.RemoteException(java.io.IOException):文件 /hbase/WALs/ubuntuserver,16201,1478834015515/ubuntuserver%2C16201%2C1478834015515..meta.1478834024410.meta 只能复制到0个节点而不是minReplication(= 1)。 有1个datanode正在运行,并且没有节点被排除在此 操作 at org.apache.hadoop.hdfs.server.blockmanagement.BlockManager.chooseTarget4NewBlock(BlockManager.java:1571) 在org.apache.hadoop.hdfs.server.namenode.FSNamesystem.getNewBlockTargets(FSNamesystem.java:3107) at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.getAdditionalBlock(FSNamesystem.java:3031) at org.apache.hadoop.hdfs.server.namenode.NameNodeRpcServer.addBlock(NameNodeRpcServer.java:725) at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolServerSideTranslatorPB.addBlock(ClientNamenodeProtocolServerSideTranslatorPB.java:492) at org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos $ ClientNamenodeProtocol $ 2.callBlockingMethod(ClientNamenodeProtocolProtos.java) 在org.apache.hadoop.ipc.ProtobufRpcEngine $ Server $ ProtoBufRpcInvoker.call(ProtobufRpcEngine.java:616) 在org.apache.hadoop.ipc.RPC $ Server.call(RPC.java:982) 在org.apache.hadoop.ipc.Server $ Handler $ 1.run(Server.java:2049) 在org.apache.hadoop.ipc.Server $ Handler $ 1.run(Server.java:2045) at java.security.AccessController.doPrivileged(Native Method) 在javax.security.auth.Subject.doAs(Subject.java:422) 在org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1698) 在org.apache.hadoop.ipc.Server $ Handler.run(Server.java:2043)
at org.apache.hadoop.ipc.Client.call(Client.java:1411) at org.apache.hadoop.ipc.Client.call(Client.java:1364) at org.apache.hadoop.ipc.ProtobufRpcEngine$Invoker.invoke(ProtobufRpcEngine.java:206) at com.sun.proxy.$Proxy16.addBlock(Unknown Source) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.apache.hadoop.io.retry.RetryInvocationHandler.invokeMethod(RetryInvocationHandler.java:187) at org.apache.hadoop.io.retry.RetryInvocationHandler.invoke(RetryInvocationHandler.java:102) at com.sun.proxy.$Proxy16.addBlock(Unknown Source) at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolTranslatorPB.addBlock(ClientNamenodeProtocolTranslatorPB.java:368) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.apache.hadoop.hbase.fs.HFileSystem$1.invoke(HFileSystem.java:279) at com.sun.proxy.$Proxy17.addBlock(Unknown Source) at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.locateFollowingBlock(DFSOutputStream.java:1449) at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.nextBlockOutputStream(DFSOutputStream.java:1270) at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.run(DFSOutputStream.java:526)
2016-11-11 11:13:50,057 INFO [Thread-6] regionserver.ShutdownHook: 关机钩完了。
答案 0 :(得分:2)
根本原因不是权限问题。这是存储空间问题。我将群集部署在具有8G硬盘空间的虚拟机中。然而现在它是7.8G。
解决方案:重新创建具有200G硬盘空间的虚拟机。