Help Center/ Scalable File Service/ Best Practices/ Migrating Data to SFS/ Using Direct Connect to Migrate Data (rsync)
Updated on 2022-12-09 GMT+08:00

Using Direct Connect to Migrate Data (rsync)

Solution Overview

You can migrate data from a local NAS to SFS Turbo using Direct Connect and the rsync tool.

In this solution, a Linux ECS is created to connect the local NAS and SFS Turbo, and data is migrated to the cloud using this ECS.

You can also refer to this solution to migrate data from an on-cloud NAS to SFS Turbo using the Internet. Ensure that the on-cloud NAS and SFS Turbo belong to the same VPC.

Limitations and Constraints

  • Special files, such as devices and linked files, can be migrated.
  • Resumable data transfer is supported.
  • Properties, such as permissions, time, soft and hard links, owner, and group, of the original files and directories can be retained after data migration.
  • The rcp, rsh, and ssh tools are supported during file transfer.
  • Incremental migration is supported, so that only changed data is migrated.
  • If there are multi-level directories or massive small files, you are recommended to use a multi-process script or the rclone tool. This is because the rsync tool has low efficiency in these scenarios.

Prerequisites

  • You have enabled and configured Direct Connect. For details, see Direct Connect User Guide.
  • You have created a Linux ECS.
  • You have created an SFS Turbo file system and have obtained the mount point of the file system.
  • You have obtained the mount point of the local NAS.
  • A trust relationship has been established between the local NAS and the ECS.

Resource Planning

Table 1 describes the resource planning in this solution.

Table 1 Resource planning

Resource

Example Configuration

Description

ECS

Specifications: 8 vCPUs | 16 GB | c7.2xlarge.2

OS: Linux

Region: CN-Hong Kong

VPC: VPC1

Ensure that the /mnt/src and /mnt/dst directories have been created.

Procedure

  1. Log in to the created Linux ECS to access the local NAS and SFS Turbo file system.
  2. Run the following mount command to access the local NAS:

    mount -t nfs -o vers=3,timeo=600,noresvport,nolock Mount point of the local NAS /mnt/src

  3. Run the following mount command to access the SFS Turbo file system:

    mount -t nfs -o vers=3,timeo=600,noresvport,nolock Mount point of the file system /mnt/dst 

  4. Run the following command on the Linux ECS to install the rsync tool:

    yum install rsync 
    Figure 1 Installing rsync

    Ensure that the rsync tool is installed on both the source and destination servers. Or, an error will be reported.

  5. After the installation is complete, run the following command to query the installation result and version of rsync:

    rsync -version
    Figure 2 Viewing the installation result

  6. Run the following command to migrate the full data in the /mnt/src directory on the source server to the /mnt/dst directory (file system) on the destination server:

    rsync -avP /mnt/src /mnt/dst
    Figure 3 Full data synchronization

Verification

  1. Log in to the created Linux ECS.
  2. Run the following commands on the destination server to verify file synchronization:

    cd /mnt/dst
    ls | wc -l

  3. If the data volume is the same as that on the source server, the data is migrated successfully.