我有很多保存在我的HDFS上测试集群有5个节点蜂巢表。 数据应该在70 GB * 3(Replipication)。 不,我想整个安装与更多的节点转移到不同的环境。 这两个集群之间的网络连接是不可能的。
问题是,我没有与新的集群,也没有准备太多的时间与其他测试环境中测试Transfering。 因此我需要一个可靠的计划。 :)
我有什么选择?
我该如何转移蜂箱建立新群集上最低配置的努力?
是否有可能只是5个节点的HDFS directorys复制到5个节点的新集群,那么其余节点添加到新集群,并开始平衡器?
如果没有网络连接时,这将是非常棘手!
我会
- 文件从HDFS中复制到某种可移动存储(USB闪存盘,外接硬盘等)
- 移动存储到新的集群
- 将文件复制回HDFS
请注意,这将不保留,如文件创建/上次访问时间的元数据,并且,更重要的是,所有权和权限。
这个过程中的小规模测试应该是非常简单的。
如果你能得到(甚至是暂时的)两个集群之间的网络连接,然后distcp
将是要走的路。 它使用的地图减少parallelise的转移,可能导致大量节省时间。
您可以从一个群集复制的目录和文件到另一个使用Hadoop DistCp使用命令
这里是描述其使用一个小例子
http://souravgulati.webs.com/apps/forums/topics/show/8534378-hadoop-copy-files-from-one-hadoop-cluster-to-other-hadoop-cluster
须藤-u HDFS的hadoop --config {PathtotheVpcCluster} / vpcCluster DistCp使用HDFS:// SOURCEIP:8020 /用户/ HDFS / WholeData HDFS:// DestinationIP:8020 /用户/ HDFS / WholeData可以通过使用该命令复制数据