利用distcp命令来完成;
首先需要两个集群间的所有的主机hosts 文件里要把对方的集群节点的主机名配置上去;
然后在新的集群里面执行:“hadoop distcp 原集群数据路径 新集群数据路径” 的命令, 注意这里用的hftp 协议。
当遇到报文件校验 checksum 报错时,要在新集群的 hdfs-site.xml 里增加 一个配置.
<property>
<name>dfs.checksum.type</name>
<value>CRC32</value>
<description>
when transfer data from hadoop 1.x to hadoop 2.x the data block checksum in hadoop 1.x is crc32
and hadoop 2.x is crc32c . transfer data will fail .
</description>
</property>
以上一般可以完成集群间的数据迁移。