更新时间:2024-06-27 GMT+08:00

文件系统之间迁移数据

方案概述

用户可以将SFS容量型文件系统中的数据迁移至SFS Turbo文件系统中,也可以将SFS Turbo文件系统中的数据迁移至SFS容量型文件系统中,进行云上业务拓展。

此方案通过创建一台Linux操作系统的云服务器,来连接SFS容量型文件系统和SFS Turbo文件系统的通信。

约束与限制

  • 仅支持使用Linux系统的云服务器进行数据迁移。
  • Linux系统云服务器、SFS容量型文件系统和SFS Turbo文件系统需在同一VPC下。
  • 支持实现增量迁移,即只迁移发生变化的数据。

前提条件

  • 已创建一台操作系统为Linux的云服务器。
  • 已创建SFS容量型或SFS Turbo文件系统,并获取到文件系统的挂载地址。

资源规划

本章节介绍案例中使用的资源信息。具体如表1所示。

表1 资源规划

产品

配置示例

说明

弹性云服务器 ECS

规格:8vCPUs | 16GB | c7.2xlarge.2

操作系统:Linux

区域:中国-香港

VPC名称:VPC1

已创建/mnt/src和/mnt/dst的目录

操作步骤

  1. 登录弹性云服务器管理控制台。
  2. 登录已创建好的Linux系统云服务器,用于同时访问SFS容量型文件系统和SFS Turbo文件系统。
  3. 输入以下挂载命令,用于访问文件系统1。文件系统1可以是SFS容量型文件系统或SFS Turbo文件系统。

    mount -t nfs -o vers=3,timeo=600,noresvport,nolock 文件系统1挂载地址 /mnt/src

  4. 输入以下挂载命令,用于访问文件系统2。文件系统2可以是SFS容量型文件系统或SFS Turbo文件系统。

    mount -t nfs -o vers=3,timeo=600,noresvport,nolock 文件系统2挂载地址 /mnt/dst 

  5. 下载并安装rclone工具。下载地址请参见https://rclone.org/downloads/
  6. 执行以下命令,进行数据同步。

    rclone copy /mnt/src /mnt/dst -P --transfers 32 --checkers 64 --links --create-empty-src-dirs

    参数说明如下,transfers和checkers数目可以根据系统规格自行配置:

    • /mnt/src :源路径
    • /mnt/dst:目标路径
    • --transfers:传输文件的并发数目。
    • --checkers:扫描本地文件的并发数目。
    • -P:数据拷贝进度。
    • --links:复制源端的软链接,目的端保持为软链接的形式。
    • --copy-links:复制源端软链接指向的文件内容,目的端变成文件的形式,不再是软链接。
    • --create-empty-src-dirs:复制源端的空目录到目的端。

    等待数据完成同步后,可前往目标文件系统查看是否已成功迁移。

验证

  1. 登录已创建好的Linux系统云服务器。
  2. 在目的端服务器执行以下命令,验证文件同步情况。

    cd /mnt/dst
    ls | wc -l

  3. 数据量与源端服务器中的一致时,表示数据迁移成功。