在这种情况下会发生什么: Namenode正在写入两个不同驱动器上的两个目录,一个是本地的,另一个是(远程)。现在,namenode失败了,我们在远程机器上启动了namenode进程(它有原始namenode数据的副本,所以它是安全的)并在所有datanode上更改namenode的ip。过了一段时间,我们设法将原始的namenode变为生命,并具有完全的先前配置。我们停止远程计算机上的namenode进程。现在,本地fs.name.dir是否会与已安装的目录同步(我的意思是在已安装的目录上累积的差异,而原始名称节点已关闭)或者名称节点数据一致性会出现问题?
答案 0 :(得分:0)
现在,本地fs.name.dir是否会与已安装的目录同步(我的意思是在已安装的目录上累积的差异,而原始名称节点已关闭)或者名称节点数据一致性会出现问题?
本地NN数据在其停机时将过时。对远程NN命名空间所做的所有更改都不会出现在本地NN上。
注意,NN只存储文件系统的命名空间以及命名空间到block-id映射。存储块的位置不存储在NN中。当DN启动时,它会将块报告发送给NN。
在所有datanode上更改namenode的ip。 过了一段时间,我们设法将原始的namenode变为生命,并具有完全的先前配置。我们停止远程机器上的namenode进程。
上述情况会有停机时间。