Hadoop:在不丢失任何 HDFS 数据的情况下交换 DataNode 和 NameNode
Hadoop : swap DataNode & NameNode without losing any HDFS data
我有一个包含 5 台机器的集群:
- 1 个大 NameNode
- 4 个标准数据节点
我想用 DataNode 更改我当前的 NameNode 而不会丢失存储在 HDFS 中的数据,因此我的集群可以变成:
- 1 个标准 NameNode
- 3 个标准 DataNode
- 1 个大数据节点
有人知道这样做的简单方法吗?
非常感谢
- 名称节点将被移动到的退役数据节点。
- 停止集群。
- 从当前名称节点创建 dfs.name.dir 的 tar。
- 将所有 hadoop 配置文件从当前 NN 复制到 tar获取 NN。
- 通过修改core-site.xml替换target namenode的name/ip.
- 恢复 tar 球 dfs.name.dir。确保完整路径相同。
- 现在通过 star 新的 namenode 和少一个 datanode 来 start 集群。
- 确认一切正常。
- 通过将旧名称节点配置为数据节点,将其添加为数据节点。
- 我建议在两个节点上卸载然后安装hadoop,这样之前的配置就不会造成任何问题。
我有一个包含 5 台机器的集群:
- 1 个大 NameNode
- 4 个标准数据节点
我想用 DataNode 更改我当前的 NameNode 而不会丢失存储在 HDFS 中的数据,因此我的集群可以变成:
- 1 个标准 NameNode
- 3 个标准 DataNode
- 1 个大数据节点
有人知道这样做的简单方法吗?
非常感谢
- 名称节点将被移动到的退役数据节点。
- 停止集群。
- 从当前名称节点创建 dfs.name.dir 的 tar。
- 将所有 hadoop 配置文件从当前 NN 复制到 tar获取 NN。
- 通过修改core-site.xml替换target namenode的name/ip.
- 恢复 tar 球 dfs.name.dir。确保完整路径相同。
- 现在通过 star 新的 namenode 和少一个 datanode 来 start 集群。
- 确认一切正常。
- 通过将旧名称节点配置为数据节点,将其添加为数据节点。
- 我建议在两个节点上卸载然后安装hadoop,这样之前的配置就不会造成任何问题。