Updated on 2025-08-19 GMT+08:00

Creating a Storage Migration Workflow

This section describes how to create a storage migration workflow from the predefined template.

This feature is available in certain regions. You can see these regions on the console.

Constraints

  • For more information, see What Are the Restrictions on Using MgC for Storage Migration?
  • Data in the Deep Cold Archive storage of Alibaba Cloud OSS cannot be restored using the restoration function of MgC. You need to manually restore the data before migration.
  • Microsoft Azure Blob does not support automatic archiving of restored data. If needed, you can manually archive the data after the migration is complete.

Warnings

When you create a workflow, there are three options for Overwrite Existing: Never, Always, and If older or different size. If you choose Never, restarting a migration after an interruption or pause may lead to incomplete data migration, even though the task may appear successful. This could impact data integrity, so use the Never option with caution.

Prerequisites

Procedure

  1. Sign in to the MgC console. In the navigation pane, under Project, select an application migration project from the drop-down list.
  2. In the navigation pane, choose Workflows.
  3. Click Create Workflow in the upper right corner of the page.
  4. In the Storage Migration card, click Preview Steps to view the stages and steps predefined in the template and the detailed description of each stage and step. Automated steps are handled by the system. Click Configure Workflow in the lower right corner.
  5. Set workflow basics based on Table 1.

    Table 1 Basic parameters

    Parameter

    Description

    Name

    User-defined Only letters, digits, hyphens (-), underscores (_), and periods (.) are allowed. The name must start with a letter or digit, and it must not start or end with a period.

    Region

    Select the region you are migrating to.

    Description

    User-defined. It can contain a maximum of 255 characters. Allowed characters include letters, digits, hyphens (-), underscores (_), commas (,), periods (.), spaces, and decimal points (.). It cannot start with a decimal point (.), hyphen (-), or underscore (_).

    Cluster

    Select a migration cluster. The cluster consists of a master node and several migration and list nodes. If no cluster is available, create a cluster.

    NOTE:

    A master node is created by the system in a migration cluster by default. You do not need to configure it.

  6. Configure the migration source and target based on Table 2 and Table 3.

    Table 2 Parameters for configuring a migration source

    Parameter

    Description

    Remarks

    Location Type

    -

    Credential

    Select the credential from the drop-down list. If the credential has not been added, click Add Credential, enter a credential name, select an authentication method, enter the AK/SK pair, and click Verify and Save.

    These parameters are available when cloud storage is selected for Location Type.

    Bucket

    Enter the name of the source bucket to be migrated.

    NOTE:
    Symbolic links cannot be used for specifying migration paths which define the migration scope. To migrate a path pointed to by a symbolic link, you need to:
    • Enter the actual path when specifying the migration path.
    • After the migration is complete, manually create a symbolic link to the path at the target.

    Endpoint

    Enter the endpoint of the region where the source bucket is located.

    For example, if Location Type is set to Alibaba Cloud OSS and the source bucket is located in CN East 1 (Hangzhou), enter oss-cn-hangzhou.aliyuncs.com.

    Type

    Set this parameter based on the source bucket type. You can view the bucket type in the basic information.

    This parameter is available when Location Type is set to Huawei Cloud OBS.

    APPID

    Enter the APPID of your Tencent Cloud account.

    NOTE:

    You can view the APPID on the account information page of the Tencent Cloud console.

    This parameter is available when Tencent Cloud COS is selected for Location Type.

    Authentication Type

    The following authentication types are supported:

    • Connection string
    • Storage account name and key

    For details about how to obtain the credentials, see How Do I Obtain Credentials for Accessing Microsoft Azure?

    This parameter is available when Azure Blob Storage is selected for Location Type.

    List Path

    Enter the path where the lists of files to be migrated are stored. These lists must be stored in the same region as the target bucket. You need to write the URLs of files to be migrated and their new names at the target into the lists. Each line in the list can contain only one URL and one file name.

    These parameters are available when HTTP/HTTPS data source is selected for Location Type.

    File System Address

    Enter the mount address of the source file system. The format is IP address:/ or IP address:/xxx, for example, 192.1.1.1:/0001.

    These parameters are available when Location Type is set to NAS_SMB, NAS_NFS_V3_MOUNT, or NAS_NFS_V3_PROTOCOL.

    Path

    Enter the directory where files to be migrated are located. The format is /Folder name.

    Username

    Enter the username of the account that can access all files in the source file system, for example, administrator.

    These parameters are available when Location Type is set to NAS_SMB.

    Password

    Enter the password corresponding to the username.

    Domain on Windows

    Enter the corresponding domain name.

    NOTE:

    You only need to enter the content before .com. For example, if the domain is test.com, enter test.

    Table 3 Parameters for configuring a migration target

    Parameter

    Description

    Remarks

    Location Type

    Select a Huawei Cloud storage type based on the source storage type.

    -

    Credential

    Select the credential from the drop-down list. If the credential has not been added, click Add Credential, enter a credential name, select an authentication method, enter the AK/SK pair, and click Verify and Save.

    These parameters are available when Location Type is set to Huawei Cloud OBS.

    Bucket

    Select the OBS bucket you are migrating your data to.

    NOTE:

    Only Standard and Infrequent Access buckets are supported.

    Type

    Set this parameter based on the source bucket type. You can view the bucket type in the basic information.

    Endpoint

    Enter the endpoint of the region where the target OBS bucket is located. For example, if the target bucket is located in the CN North-Beijing4 region of Huawei Cloud, enter obs.cn-north-4.myhuaweicloud.com.

    NOTE:

    You can view the endpoint in the OBS bucket overview.

    Specify Prefix

    Specify a prefix to rename or relocate objects migrated to the target bucket. For example, if you specify the prefix /D, source file /A/B/C.txt will be relocated to /D/A/B/C.txt after being migrated to the target bucket. For details, see:

    Adding a Name Prefix or Path Prefix to Migrated Objects

    File System Address

    Enter the mount address of the target file system. To obtain the mount address, go to the file system list and click the icon next to the address in the Mount Point column.

    These parameters are available when Location Type is set to NAS_NFS_V3_PROTOCOL, NAS_GFS, NAS_SMB, or NAS_NFS_V3_MOUNT.

    Path

    Enter the directory for storing files migrated. The format is /Folder name.

    Username

    Enter the username of the account that can access all files in the target file system, for example, administrator.

    These parameters are available when Location Type is set to NAS_SMB.

    Password

    Enter the password corresponding to the username.

    Domain on Windows

    Enter the corresponding domain name.

    NOTE:

    You only need to enter the content before .com. For example, if the domain is test.com, enter test.

  7. Configure migration settings based on Table 4.

    Table 4 Migration settings

    Parameter

    Sub-parameter

    Description

    Task Type

    Full migration

    Migrates all data in a source bucket or in specific paths.

    List migration

    Migrates objects recorded in the list files.

    In List Path box, enter the path of the object lists stored in the target bucket. Restrictions on an object list file vary with the target location.

    • Target location: Huawei Cloud OBS
      • An object list file cannot exceed 30 MB.
      • An object list file must be a .txt file, and the Content-Type metadata must be text/plain.
      • An object list file must be in UTF-8 without BOM.
      • Each line in an object list file can contain only one object name, and the object name must be URL encoded.
      • Each line in an object list file cannot exceed 16 KB, or the migration will fail.
      • The Content-Encoding metadata of an object list file must be left empty, or the migration will fail.
      • An object list file can contain a maximum of 10,000 lines.
    • Target location: NAS
      • An object list file cannot exceed 30 MB.
      • An object list file must be a .txt file.
      • An object list file must be in UTF-8 without BOM.
      • Each line in an object list file can contain only one object name, and the object name must be URL encoded.
      • Each line in an object list file cannot exceed 16 KB, or the migration will fail.
      • An object list file can contain a maximum of 10,000 lines.

    Prefix migration

    This option is only available for cloud storage migration.

    If you enter a file name or name prefix in the Prefix box, only the objects that exactly match the specified name or prefix are migrated.

    NOTICE:
    • If the files to be migrated are stored in the root directory of the source bucket, add their name prefixes directly. If the files are stored in a non-root directory, add their directories and name prefixes in the format of <folder-name>/<prefix>.
    • Use commas (,) to separate multiple prefixes.

    Listing Mode

    NOTE:

    This parameter is available only when Task Type is set to Full migration or Prefix migration

    Serial

    This is the default listing mode if the source is a bucket.

    Parallel

    This is the default listing mode if the source is a parallel file system (PFS). If this mode is selected when the source is a bucket, the listing operation may take a long time.

    Concurrent Subtasks

    -

    User-defined. There cannot be more than 10 concurrent subtasks for each online migration node. For example, if there are 2 online migration nodes, the maximum number of subtasks can be 20 or any number below.

    Overwrite Existing

    Never

    Files existing at the target will never be overwritten.

    WARNING:
    • If you choose Never for the initial migration, the attributes of involved parent folders at the source will not be migrated to the target. As a result, the folder attributes may be incomplete at the target. To avoid this issue, use the Never option with caution for the initial migration.
    • If you choose Never, restarting a migration after an interruption or pause may lead to incomplete data migration, even though the task may appear successful. This could impact data integrity, so use the Never option with caution.

    Always

    Files existing at the target will always be overwritten.

    If older or different size

    • The system replaces existing target files if they are older than or differ in size from their source counterparts. Files with matching modification times and sizes remain unchanged and are skipped from migration.
    • The system verifies folders after their content is migrated. Folders that already exist at the target will be overwritten if they have different last modification times, sizes, or permissions from the paired folders at the source.
      NOTE:

      The same overwriting policy is applied to empty folders as files.

    If different CRC 64 checksum

    If a source object has a CRC64 checksum different from the paired target object, the source object will overwrite the target one. Otherwise, the source object will be skipped during the migration. If either of them does not have a CRC64 checksum, their sizes and last modification times are checked.
    NOTE:
    • This option is only available for migration within Huawei Cloud or from Alibaba Cloud or Tencent Cloud.
    • Using this option requires that target OBS buckets be whitelisted for the CRC64 feature.

    Consistency Verification

    Size and last modified

    With this default method, the system checks data consistency by comparing object size and last modification time.

    CRC64 checksum

    The system checks data consistency by comparing the CRC64 values in the metadata of source and target objects. If a source object or the paired target object does not have a CRC64 checksum, the OMS-calculated CRC64 value is used for verification. CRC64 verification may generate extra public traffic and request costs. For details, see Consistency Verification.
    NOTE:
    • This option is only available for migration within Huawei Cloud or from AWS, Alibaba Cloud, or Tencent Cloud.
    • This option is only available for migration from NAS_NFS_V3_MOUNT and NAS_NFS_V3_PROTOCOL.
    • Using this option requires that target OBS buckets be whitelisted for the CRC64 feature.

    Migrate Metadata

    -

    Determine whether to migrate metadata.

    • If you select this option, object metadata will be migrated.
    • If you do not select this option, only the Content-Type and Content-Encoding metadata will be migrated.

    Clear Cluster

    -

    Determine whether to clear the migration cluster after the migration is complete.

    • If you select this option, a step for clearing the migration cluster will be created in the workflow. You can also choose whether to clear resources used by the cluster, such as NAT gateways, security groups, and VPCEP resources.
    • If you do not select this option, a step for clearing the migration cluster will not be created in the workflow, but the migration cluster and its resources will automatically be deleted 30 days after the workflow is created.

  8. (Optional) Configure advanced options based on Table 5.

    Table 5 Advanced options

    Parameter

    Description

    Remarks

    Target Storage Class

    Choose the storage class that your data will be migrated to. For details about storage classes, see How Do I Choose Storage Classes?

    NOTE:

    CRC64-based consistency verification is not available for Archive and Deep Archive storage classes. Even if you choose the CRC64-based verification method, the system automatically uses the object size and last modification time to verify data consistency.

    -

    Enable KMS Encryption

    • If you do not select this option, whether migrated data will be encrypted in the target buckets depends on the server-side encryption setting of the buckets.
    • If you select this option, all migrated objects will be encrypted before they are stored to the target bucket.
    NOTE:
    • Using KMS to encrypt migrated data may slow down the migration speed by about 10%.
    • This option is only available when KMS is supported in the region you are migrating to.

    This parameter is only available for migrations to Huawei Cloud OBS.

    Restore Archive Data

    • If you do not select this option, the system records archived objects in the list of objects that failed to be migrated and continues to migrate other objects in the migration task.
    • If you select this option, the system automatically restores and migrates archived objects in the migration task. If an archived object fails to be restored, the system skips it and records it in the list of objects that failed to be migrated and continues to migrate other objects in the migration task.
    NOTE:
    • The system will restore all listed archived data before migrating it, and you pay the source cloud platform for the API requests and storage space generated accordingly.
    • Data in the Deep Cold Archive storage of Alibaba Cloud OSS cannot be restored using the restoration function of MgC. You need to manually restore the data before migration.
    • Microsoft Azure Blob does not support automatic archiving of restored data. If needed, you can manually archive the data after the migration is complete.

    -

    Filter Source Data

    Filter files to be migrated by applying filters. For details about the filters, see Source Data Filters.

    Download Data from CDN

    If the default domain name cannot meet your migration requirements, then as long as the source cloud service provider supports custom domain names, you can bind a custom domain name to the source bucket, and enable the CDN service on the source platform to reduce data download expenses. Enter a custom domain name in the Domain Name text box and select a transmission protocol. HTTPS is more secure than HTTP and is recommended.

    If the migration source is the Alibaba Cloud OSS or Tencent Cloud COS, you also need to select an authentication type and enter an authentication key.

    Send SMN Notification

    Determine whether to use SMN to get notifications about migration results.

    • If you do not select this option, no SMN messages will be sent after the migration is complete.
    • If you select this option, after the migration is complete, SMN messages will be sent to the subscribers of the selected topic. You can select the language and trigger conditions for sending messages.

    Limit Traffic

    Set the maximum bandwidth to be used by the migration workflow during different periods.

    • If you do not select this option, migration traffic is not limited.
    • If you select this option, limit the migration traffic by setting Start Time, End Time, and Bandwidth Limit.
      For example, if you set Start Time to 08:00, End Time to 12:00, and Bandwidth Limit to 20 MB/s, the maximum migration speed is limited to 20 MB/s from 08:00 to 12:00. The migration speed is not limited outside this period.
      NOTE:
      • The bandwidth limit ranges from 1 MB/s to 1,048,576 MB/s.
      • A maximum of five rules can be added.
      • The time is the local standard time of the region you are migrating to.

    -

    Schedule Migration

    Schedule the migration to automatically run during a period.

    • If you do not select this option, you need to manually start or stop the migration.
    • If you select this option, the migration runs during the specified period and stops outside that period.

      For example:

      • If you set Start Time to 08:00 and End Time to 12:00, the migration task runs from 08:00 to 12:00 every day. The migration stops outside that period.
      • If you set Start Time to 12:00 and End Time to 08:00, the migration runs from 12:00 of the current day to 08:00 of the next day. The migration stops outside that period.

    -

  9. Click Next: Confirm.
  10. Confirm the workflow settings and click Confirm. The Run Workflow dialog box is displayed, which indicates that the workflow has been created.

    • If you want to start the migration immediately, click Confirm to run the workflow.
    • If you want to add a stage or step to the workflow, click Cancel. The workflow enters a Waiting state, and the migration has not started yet. To start the migration, click Run in the Operation column.

  11. On the migration workflow details page, view the workflow settings and the migration progress. You can also perform the following operations:

    • Move the cursor to the migration progress bar of a resource. In the displayed window, view the migration details about the resource.
    • When a migration reaches a step that requires manual confirmation, place the cursor on the progress bar and click Confirm next to the step status in the displayed window. The migration can continue only after you confirm.
    • In the Basic Information area, click Manage next to the cluster name. The cluster details page is displayed on the right. On the displayed page, you can:
      • Add, edit, or delete traffic limiting rules to control cluster traffic based on your requirements.
      • Add or delete migration nodes or list nodes, or upgrade plug-ins for existing nodes as required.

  12. (Optional) Click the migration progress bar of a resource or click Migration Progress in the window displayed when you move course to the progress bar. The migration details page is displayed on the right. You can view the task overview and progress details. You can also perform the following operations:

    Operation

    Description

    Changing the migration cluster

    You can change the migration cluster only when the migration task (workflow) is Paused.

    1. In the Overview area, click Replace next to the migration cluster name.
    2. In the displayed dialog box, select a new cluster from the drop-down list and click Confirm. After the cluster is changed, the workflow starts to run automatically.

    Modifying the migration schedule

    1. In the Overview area, click Modify next to Schedule Migration.
    2. Set Start Time and End Time, and click Confirm.

    Modifying the number of concurrent subtasks

    1. In the Progress area, under Expected Concurrent Subtasks, click Modify to change the expected number of concurrent subtasks. There cannot be more than 10 concurrent subtasks for each online migration node. For example, if there are 2 online migration nodes, the maximum number of subtasks can be 20 or any number below.
    2. Click Confirm.

    Adding traffic limiting rules

    1. In the Migration Speed area, click Add to add a rule to limit the bandwidth the migration can use in a specified period.
      NOTICE:
      • The bandwidth limit ranges from 1 MB to 1,024 GB.
      • Time periods in different rules cannot overlap.

        For example, if there is a rule added for the period from 8:00 to 12:00, you cannot configure rules for any overlapped periods, such as from 7:00 to 13:00, 7:00 to 8:00, and 9:00 to 12:00.

      • The start time in a rule cannot be later than the end time.

        For example, the time period from 23:00 to 01:00 of the next day is not allowed.

    2. Click Save.

    Obtaining the lists of migrated, skipped, or failed files

    In the File Statistics area, view the paths of the lists of migrated, skipped, or failed files. Click a file path, and it will take you to the OBS bucket where the list is stored. You can download the list from the bucket.

    Viewing traffic statistics

    In the Traffic Statistics area, view the migration traffic in the last 1 hour, last 6 hours, last 24 hours, or the entire migration period.

Source Data Filters

Table 6 describes the rules and restrictions for setting source data filters.

Table 6 Filter options

Option

Description

Patten Rule

Constraint

Exclude Patterns

If a file matches any excluded pattern, the file will not be migrated or compared for consistency. Both exact match and fuzzy match are supported.

  • Exact match
    You need to specify absolute paths and use slashes (\) to escape special characters in the paths.
    CAUTION:
  • Fuzzy match
    • An asterisk (*) matches zero or more characters except for slashes (/).
    • A pair of asterisks (**) matches zero or more characters including slashes (/).
    • A question mark (?) matches exactly one character, but not slashes (/).
    • Commas (,) are used to separate patterns in {}. Patterns in {} are in an OR relationship.
    • Wildcard characters asterisk (*) and question mark (?) are escaped by backslashes (\). In other cases, a backslash (\) means itself.
  • Except for {}, consecutive characters specified in pattern rules are not allowed, for example, ***, *?, **?, ?*, ?**, *{*, *}*, *}?, ?{*, {*}, {,}, {*,, ,*}, and ,*,
  • Only asterisks (*) can be used as wildcard characters in {}.
  • Nesting {} inside another set of {} is not allowed.
  • Excluded patterns take precedence over included patterns.
  • Semicolons (;) are used to separate patterns outside {}.

Include Patterns

  • If no included patterns are specified, all files in the source will be migrated.
  • If included patterns are specified, only the files whose absolute paths match the specified patterns will be migrated or compared for consistency.

Time Range

Filters files and directories to be migrated based on when they were last modified. Only files and directories whose last modification times fall in the configured time range will be migrated.

The start time and end time can be left empty. If they are left empty, the system will not filter out source files by time. The time can be precise to the minute.

The following table lists example pattern rules for different scenarios.

Assume that you want to migrate the directory test in the source storage system.

  • If the source storage system is a NAS device, enter /test as an "include" pattern.
  • If the source storage system is an object storage system, enter test as an "include" pattern.

Scenario

Example Pattern for NAS

Example Pattern for Object Storage

Description

File paths that end with xx

/xx/**xx

xx/**xx

xx can be an expression containing asterisks (*) and question marks (?).

Files whose names start with xx in the root directory

/xx*

  • /testssss matches the pattern.
  • /test/xx does not match the pattern.

/xx*

  • testssss matches the pattern.
  • test/xx does not match the pattern.

File paths that start with xx

/xx**

/xx/**

xx**

xx/**

Files whose names contain xx

**xx*

**xx*

File paths that contain xx

**xx**

**xx**

File paths that start with xx and end with yy.

/xx**yy

xx**yy

xx and yy can be expressions containing asterisks (*) and question marks (?).

File paths that end with xx or yy

**{xx,yy}

**{xx,yy}

Files whose names contain xx or yy

**{xx,yy}*

**{xx,yy}*

Files paths that contain xx or yy

**{xx,yy}**

**{xx,yy}**