Updated on 2024-10-31 GMT+08:00

Troubleshooting Data Migration Failures

When you use the console to migrate data, the migration may fail if you select an inappropriate migration scheme, the SYNC and PSYNC commands are not allowed on the source Redis instance, or the network between the source and target Redis instances is disconnected.

This section describes how to troubleshoot data migration failures on the DCS console.

Procedure

  1. Click the name of a migration task and then go to the migration task page.
  2. Check the migration logs. Rectify the fault based on the error log. For details, see Handling Migration Errors.
  3. Check whether you used the appropriate migration scheme.

    An appropriate scheme varies depending on the scenario. That is, the scheme for migrating data from self-hosted Redis to a DCS instance, from other vendors' Redis to a DCS instance, and between DCS instances are different. If you migrate data between DCS instances, the source instance cannot be a higher version than the target instance.

    If the migration scheme is inappropriate, the migration will fail. For details about migration schemes, see Migration Solution Notes.

  4. Check whether the SYNC and PSYNC commands are enabled on the source Redis instance and whether the underlying resources of the migration task are connected to the source and target Redis instances.

    This operation is required only for online migration.

    For online migration, the source and target Redis instances must be connected, and the SYNC and PSYNC commands must be enabled on the source Redis instance. Otherwise, the migration will fail.

    • Check the network.

      Check whether the source Redis instance, the target Redis instance, and the migration VM are configured with the same VPC. If they are in the same VPC, check the security group rules (for DCS Redis 3.0 and 6.0 professional instances) or whitelists (for DCS Redis 4.0, 5.0, and 6.0 basic instances) to ensure that the IP addresses and ports of the Redis instances are accessible. If they are in different VPCs, create a VPC peering connection.

      The source and target Redis instances must be accessible to the underlying VMs used for the migration task. For details about how to configure a security group or whitelist, see How Do I Configure a Security Group? or Managing IP Address Whitelist.

      To allow the VM resources used by the migration task to access the source and target Redis instances, outbound rules of the migration security group must allow traffic over the IP addresses and ports of the source and target instances. For details, see How Do I Configure a Security Group?

      If the source and target Redis instances are on different clouds, create a connection by referring to Direct Connect documentation.

      The VM used by a migration task uses an IP address. Configuring the whitelist (Redis 4.0/5.0/6.0 basic) or inbound security group rules (Redis 3.0/6.0 professional) of instances is to allow the migration VM to access the source and target Redis.

    • Check the commands.

      By default, the SYNC and PSYNC commands are disabled by cloud vendors. To enable the commands, contact the O&M personnel of the cloud vendors.

      • Migration within HUAWEI CLOUD:
        • By default, the SYNC and PSYNC commands can be used when self-hosted Redis is migrated to DCS.
        • During online migration between Huawei Cloud DCS instances in the same region under the same account, the SYNC and PSYNC commands are automatically enabled.
        • During online migration between Huawei Cloud DCS instances in different regions or under different accounts within a region, the SYNC and PSYNC commands are not automatically enabled, and online migration cannot be used. You can migrate data using backup files instead.
      • Migration from other cloud vendors to HUAWEI CLOUD:

        Generally, cloud vendors disable the SYNC and PSYNC commands. If you want to use online migration, contact the O&M personnel of the source cloud vendor to enable the commands. For offline migration, you can import backup files.

  5. Check the source Redis instance for big keys. For details, see Analyzing Big Keys and Hot Keys.

    If the source Redis instance has big keys, split them into small keys before migration.

  6. Check the specifications of the target Redis instance and whether other tasks are being performed on the instance.

    If the memory of the target Redis instance is smaller than the size of the data to be migrated, the memory will be used up during the migration and the migration will fail.

    If a master/standby switchover is being performed on the target Redis instance, contact technical support to stop the master/standby switchover task and start it only after the data migration is completed.

  7. If you migrate data from a single-node or master/standby instance to a cluster instance, check the following items:

    • By default, a Proxy Cluster instance has only one database (DB0). Before you migrate data from a single-node or master/standby instance to a Proxy Cluster instance, check whether any data exists on databases other than DB0. If yes, enable multi-DB for the Proxy Cluster instance by referring to Enabling Multi-DB.
    • By default, a Redis Cluster instance has only one DB (DB0). Before you migrate data from a single-node or master/standby instance to a Redis Cluster instance, check whether any data exists on databases other than DB0. To ensure that the migration succeeds, move all data to DB0 by referring to Online Migration from Another Cloud Using Rump.

  8. Check whether the migration task is performed correctly.

    Check whether the IP address and the instance password are correct.

  9. Check the whitelist.
  10. If the fault persists, contact technical support.