3

在这种情况下会发生什么:Namenode 正在写入两个不同驱动器上的两个目录,一个是本地的,另一个(远程)是挂载的。现在,namenode 失败了,我们在远程机器上启动 namenode 进程(它有原始 namenode 数据的副本,所以它是安全的)并在所有 datanode 上更改 namenode 的 ip。一段时间后,我们设法使原始名称节点以之前的配置恢复正常。我们停止远程机器上的namenode进程。现在,本地的 fs.name.dir 是否会与挂载的同步(我是指在挂载的 dir 上累积的差异,而原始 namenode 已关闭)还是会出现 namenode 数据一致性问题?

4

1 回答 1

0

现在,本地的 fs.name.dir 是否会与挂载的同步(我是指在挂载的 dir 上累积的差异,而原始 namenode 已关闭)还是会出现 namenode 数据一致性问题?

本地 NN 数据在停机期间将过期。对远程 NN 命名空间所做的所有更改都不会出现在本地 NN 上。

请注意,NN 仅存储文件系统的名称空间以及名称空间到块 ID 的映射。存储块的位置不存储在 NN 中。当 DN 启动时,它将块报告发送到 NN。

在 HDFS NN HA 上检查这个这个。

在所有数据节点上更改 namenode 的 ip。一段时间后,我们设法使原始名称节点以之前的配置恢复正常。我们停止远程机器上的namenode进程。

上述情况将有停机时间。

于 2011-12-18T16:52:03.067 回答