Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Actualización más reciente 2022-11-07 GMT+08:00

Migración en línea

Caso

Si las instancias de origen y de destino están interconectadas y la instancia de origen admite los comandos SYNC y PSYNC, los datos se pueden migrar en línea completa o incrementalmente desde el origen al destino.

  • Si los comandos SYNC y PSYNC están deshabilitados en la instancia de Redis de origen, habilítelos antes de realizar la migración en línea. De lo contrario, la migración no se podrá realizar. Si utiliza una instancia de Huawei Cloud DCS Redis para la migración en línea, el comando SYNC se activa automáticamente.
  • No puede utilizar redes públicas para la migración en línea.
  • Durante la migración en línea, se recomienda establecer repl-timeout en la instancia de origen en 300s y client-output-buffer-limit en 20% de la memoria máxima de la instancia.

Durante la migración en línea, los resultados de los comandos FLUSHDB y FLUSHALL ejecutados en el origen no se sincronizarán con el destino.

Impacto en los servicios

Durante la migración en línea, los datos se sincronizan en su totalidad con una nueva réplica. Por lo tanto, realice la migración en línea durante las horas de baja demanda.

Prerrequisitos:

  • Antes de migrar datos, lea Herramientas y esquemas de migración para obtener información sobre la función de migración de datos de DCS y seleccione una instancia de destino adecuada.
  • De forma predeterminada, una instancia de Clúster Proxy solo tiene una base de datos (DB0). Antes de migrar datos desde una instancia de nodo único o principal/en standby a una instancia de Clúster Proxy, compruebe si existen datos en las DB distintas de DB0. En caso afirmativo, habilite multi-DB para la instancia Clúster Proxy haciendo referencia a Activación de Multi-DB.
  • De forma predeterminada, una instancia de Clúster Redis solo tiene una base de datos (DB0). Antes de migrar datos desde una instancia de nodo único o principal/en standby a una instancia de Clúster Redis, compruebe si existen datos en bases de datos distintas de DB0. Para garantizar que la migración tenga éxito, mueva todos los datos a DB0 haciendo referencia a Migración en línea con Rump.

Paso 1: Obtener información acerca de la instancia de origen Redis

  • Si el origen es una instancia de Cloud Redis, obtenga su nombre.
  • Si el origen es Redis autohospedado, obtenga su dirección IP o nombre de dominio y número de puerto.

Paso 2: Preparar la instancia de DCS Redis de destino

  • Si una instancia de DCS Redis de destino no está disponible, cree una primera. Para obtener más información, consulte Compra de una instancia de DCS Redis.
  • Si ya tiene una instancia de DCS Redis, no es necesario crear una de nuevo, pero debe borrar los datos de instancia antes de la migración. Para obtener más información, consulte Borrado de datos de la instancia de DCS.

    Si los datos de la instancia de destino no se borran antes de la migración y las instancias de origen y destino contienen la misma clave, la clave de la instancia de destino se sobrescribirá después de la migración.

Paso 3: Comprobar la red

  1. Compruebe si la instancia de Redis de origen, la instancia de Redis de destino y la tarea de migración están configuradas con la misma VPC.En caso afirmativo, vaya a Paso 4: Crear una tarea de migración en línea. En caso negativo, vaya a 2.
  2. Compruebe si las VPC configuradas para la instancia de Redis de origen, la instancia de Redis de destino y la tarea de migración están conectadas para asegurarse de que el recurso de VM de la tarea de migración puede acceder a las instancias de Redis de origen y destino.En caso afirmativo, vaya a Paso 4: Crear una tarea de migración en línea. En caso negativo, vaya a 3.
  3. Realice las siguientes operaciones para establecer la red.

    • Si las instancias de origen y destino de Redis están en la misma región, cree una conexión de interconexión de VPC haciendo referencia a Interconexión de VPC.
    • Si las instancias de origen y destino de Redis se encuentran en diferentes regiones, cree una conexión a la nube consultando Introducción a Cloud Connect.
    • Si las instancias de origen y destino de Redis están en nubes diferentes, cree una conexión consultando la documentación de Direct Connect.

Paso 4: Crear una tarea de migración en línea

  1. Iniciar sesión en la consola de DCS.
  2. En el panel de navegación, elija Data Migration.
  3. Haga clic en Create Online Migration Task.
  4. Introduzca el nombre y la descripción de la tarea.
  5. Configure la VPC, la subred y el grupo de seguridad para la tarea de migración.La VPC, la subred y el grupo de seguridad facilitan la migración. Asegúrese de que los recursos de migración puedan acceder a las instancias de Redis de origen y destino.

Paso 5: Configurar la tarea de migración en línea

  1. En la página de ficha Online Migration, haga clic en Configure en la fila que contiene la tarea de migración en línea que acaba de crear.
  2. Seleccione un tipo de migración.Los tipos de migración admitidos son Full y Full + Incremental, que se describen en Tabla 1.

    Tabla 1 Descripción del tipo de migración

    Tipo de migración

    Descripción

    Full

    Adecuado para escenarios en los que los servicios pueden ser interrumpidos. Los datos se migran al mismo tiempo. Los datos de instancia de origen actualizados durante la migración no se migrarán a la instancia de destino.

    Full + incremental

    Adecuado para escenarios que requieren un mínimo tiempo de inactividad del servicio. La migración incremental analiza los registros para garantizar la coherencia de los datos entre las instancias de origen y destino.

    Una vez que se inicie la migración, seguirá Migrating hasta que haga clic en Stop en la columna Operation. Después de detener la migración, los datos de la instancia de origen no se perderán, pero los datos no se escribirán en la instancia de destino. Cuando la red de transmisión es estable, el retardo de la migración incremental es en segundos. El retardo real depende de la calidad de transmisión del enlace de red.

    Figura 1 Selección del tipo de migración

  3. Configurar Redis de origen y Redis de destino.

    1. Source Redis Type: seleccione Redis in the cloud o Self-hosted Redis según sea necesario.
      • Redis in the cloud: una instancia de Huawei Cloud DCS Redis que se encuentra en la misma VPC que la tarea de migración
      • Self-hosted Redis: Redis autohospedado en Huawei Cloud, en otra nube o en centros de datos locales. Si selecciona esta opción, introduzca las direcciones de Redis.
    2. Si la instancia está protegida con contraseña, puede hacer clic en Test Connection para comprobar si la contraseña de la instancia es correcta y si la red está conectada.

  4. Para Target Redis Instance, seleccione la instancia de Redis de DCS preparada en Paso 2: Preparar la instancia de DCS Redis de destino.

    Si la instancia está protegida con contraseña, puede hacer clic en Test Connection para comprobar si la contraseña de la instancia cumple los requisitos.

    Si las instancias de Redis de origen y destino están conectadas pero se encuentran en diferentes regiones de Huawei Cloud, solo puede seleccionar Self-hosted Redis para Target Redis Type e introducir las direcciones de instancia, independientemente de si la instancia de Redis de destino está autohospedada o en la nube.

  5. Confirme los detalles de la tarea de migración y haga clic en Submit.

    Vuelva a la lista de tareas de migración de datos. Una vez que la migración se realiza correctamente, el estado de la tarea cambia a Successful.

    Una vez que se inicia la migración incremental, seguirá Migrating hasta que haga clic en Stop.

    Si la migración falla, haga clic en la tarea de migración y compruebe el registro en la página Migration Logs.

Verificación de la migración

Una vez completada la migración, utilice redis-cli para conectar las instancias de Redis de origen y destino para comprobar la integridad de los datos.

  1. Conéctese al Redis de origen y al Redis de destino.
  2. Ejecute el comando info keyspace para comprobar los valores de keys y expires.

  3. Calcular la diferencia entre los valores de keys y expires. del Redis de origen y el Redis de destino. Si las diferencias son las mismas, los datos están completos y la migración se realiza correctamente.

Durante la migración completa, los datos de origen de Redis actualizados durante la migración no se migrarán a la instancia de destino.