我们使用的是HDP HDFS模块版本2.7.3.2.6.5.0-292。
服务器被卡住了,不得不硬重新设置种子-现在Name Node服务在启动时抛出一个错误。
在成功获取锁文件后,它会立即尝试再次获取它,即使是针对同一进程(可能是同一线程(,也会失败。
我们应该如何使用tact中的数据启动名称节点?
18/11/14 20:19:24 INFO util.GSet: Computing capacity for map NameNodeRetryCache
18/11/14 20:19:24 INFO util.GSet: VM type = 64-bit
18/11/14 20:19:24 INFO util.GSet: 0.029999999329447746% max memory 1011.3 MB = 310.7 KB
18/11/14 20:19:25 INFO util.GSet: capacity = 2^15 = 32768 entries
18/11/14 20:19:25 INFO common.Storage: Lock on /mnt/pd1/hadoop/hdfs/namenode/in_use.lock acquired by nodename 10635@hadoop-327
18/11/14 20:19:25 ERROR common.Storage: It appears that another node 10635@hadoop-327 has already locked the storage directory: /mnt/pd1/hadoop/hdfs/namenode
java.nio.channels.OverlappingFileLockException
at sun.nio.ch.SharedFileLockTable.checkList(FileLockTable.java:255)
at sun.nio.ch.SharedFileLockTable.add(FileLockTable.java:152)
at sun.nio.ch.FileChannelImpl.tryLock(FileChannelImpl.java:1113)
at java.nio.channels.FileChannel.tryLock(FileChannel.java:1155)
at org.apache.hadoop.hdfs.server.common.Storage$StorageDirectory.tryLock(Storage.java:770)
at org.apache.hadoop.hdfs.server.common.Storage$StorageDirectory.lock(Storage.java:738)
at org.apache.hadoop.hdfs.server.common.Storage$StorageDirectory.analyzeStorage(Storage.java:551)
at org.apache.hadoop.hdfs.server.common.Storage$StorageDirectory.analyzeStorage(Storage.java:502)
因此,我们在dfs.namenode.name.dir
上有两个针对同一目录的路径,这导致了双重锁定。一旦我们使用了一条单一的路径,一切都恢复了正常。