Hadoop:交换DataNode和NameNode而不丢失任何HDFS数据

时间:2018-09-05 08:30:11

标签: hadoop hdfs namenode datanode

我有5台机器的集群:

  • 1个大NameNode
  • 4个标准DataNodes

我想用DataNode更改当前的NameNode而不丢失存储在HDFS中的数据,所以我的集群可能变成:

  • 1个标准NameNode
  • 3个标准DataNodes
  • 1个大DataNode

有人知道这样做的简单方法吗?

非常感谢您

1 个答案:

答案 0 :(得分:0)

  1. 将名称节点移动到的终止数据节点。
  2. 停止群集。
  3. 从当前名称节点创建dfs.name.dir的tar。
  4. 将所有Hadoop配置文件从当前NN复制到目标NN。
  5. 通过修改core-site.xml替换目标名称节点的名称/ IP。
  6. 还原dfs.name.dir的压缩包。确保完整路径相同。
  7. 现在通过启动新的namenode和少一个datanode来启动集群。
  8. 验证一切工作正常。
  9. 通过将旧名称节点配置为datanode来将其添加为datanode。
  10. 我建议先在两个节点上卸载然后再安装hadoop,这样以前的配置就不会造成任何问题。