Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/hadoop/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Exception Hadoop切换到新的HDFS“;“图像”;_Exception_Hadoop_Hdfs_Yarn - Fatal编程技术网

Exception Hadoop切换到新的HDFS“;“图像”;

Exception Hadoop切换到新的HDFS“;“图像”;,exception,hadoop,hdfs,yarn,Exception,Hadoop,Hdfs,Yarn,我有新的HDFS本地存储目录(dfs.namenode.name.dir和dfs.datanode.data.dir),HDFS存储数据的实际本地目录(用于namenode、secondarynamenode和datanode),以及所有必要的东西(编辑、fsimage等)。我想从当前的HDFS切换到新的HDFS 为了做到这一点,我停止了集群(在伪分布式模式下运行),编辑了hdfs site.xmlconfig(修改了路径)并启动了集群 但是,名称节点由于以下错误而无法启动: FATAL org

我有新的HDFS本地存储目录(
dfs.namenode.name.dir
dfs.datanode.data.dir
),HDFS存储数据的实际本地目录(用于namenodesecondarynamenodedatanode),以及所有必要的东西(编辑、fsimage等)。我想从当前的HDFS切换到新的HDFS

为了做到这一点,我停止了集群(在伪分布式模式下运行),编辑了hdfs site.xmlconfig(修改了路径)并启动了集群

但是,名称节点由于以下错误而无法启动:

FATAL org.apache.hadoop.hdfs.server.namenode.NameNode: Exception in namenode join
org.apache.hadoop.hdfs.server.common.IncorrectVersionException: Unexpected version of storage directory /path/to/NameNodeDir. Reported: -X. Expecting = -Y.
为什么这不起作用?正如我所说的,我有一个正常工作的新HDFS的完整“映像/快照”(全部内容:名称、辅助、数据)。我认为我可以简单地将HDFS配置“交换”为新配置,它应该可以工作

我无法格式化NameNode,因为新的HDFS“图像”包含数据。我试图实现的是在不修改新的HDFS“数据/元数据”文件的情况下“插入”新的HDFS,替换旧的HDFS

潜在问题之一可能是纱线/HDFS版本不匹配。如本文所述(),
namenode/current
VERSION
文件中的键layoutVersion
Y
不同。我以前的HDFS“实例”上的同一个键有一个
Y
,对应于日志中可见的键。为了简化新的HDFS布局版本值为
X
,旧的HDFS布局版本值为
Y
。为了验证这一点,我将尝试升级到纱线2.6

如果有任何帮助,我将不胜感激

问候

解决方案


问题在于HDFS版本不匹配,正如我在给用户Mikhail Golubtsov的评论中所写的那样。我试图使用旧HDFS版本的二进制文件运行新的HDFS元数据,因此出现了错误。如果有人遇到类似问题,只需将您的Thread/HDFS版本更新/升级到适当的版本即可。这为我解决了问题。

据我所知,您正在尝试针对旧版本元数据运行更新的namenode版本?如果是这样,必须有一些更新脚本。例如,Cloudera要求应用一些更新机制来执行CDH更新,我认为是另一种方式。旧的hdfs二进制文件(版本,事实上是完整的)和新版本的hdfs元数据一起运行。如果我对这个问题的猜测是正确的。X比Y高。任何关于这方面的更新,我都面临类似的问题