Uso de Redis OSS como objetivo para AWS Database Migration Service - AWS Database Migration Service

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Uso de Redis OSS como objetivo para AWS Database Migration Service

Redis OSS es un almacén de estructuras de datos en memoria de código abierto que se utiliza como base de datos, caché y intermediario de mensajes. La administración de datos en memoria puede provocar que las operaciones de lectura o escritura tarden menos de un milisegundo y que se realicen cientos de millones de operaciones por segundo. Como almacén de datos en memoria, Redis OSS potencia las aplicaciones más exigentes que requieren tiempos de respuesta inferiores a un milisegundo.

Con él AWS DMS, puede migrar datos de cualquier base de datos de origen compatible a un almacén de datos de Redis OSS de destino con un tiempo de inactividad mínimo. Para obtener información adicional sobre Redis, OSS consulte la documentación de OSSRedis.

Además de Redis local, es compatible con OSS lo AWS Database Migration Service siguiente:

  • Amazon ElastiCache (RedisOSS) como almacén de datos de destino. ElastiCache (RedisOSS) funciona con sus OSS clientes de Redis y utiliza el formato de datos abierto de Redis para OSS almacenar sus datos.

  • Amazon MemoryDB como almacén de datos de destino. MemoryDB es compatible con Redis OSS y le permite crear aplicaciones utilizando todas las estructuras de OSS datos y comandos de Redis que se utilizan en la actualidadAPIs.

Para obtener información adicional sobre cómo trabajar con Redis OSS como objetivo AWS DMS, consulte las siguientes secciones:

Requisitos previos para utilizar un OSS clúster de Redis como destino para AWS DMS

DMSadmite un OSS destino de Redis local en una configuración independiente o como un OSS clúster de Redis en el que los datos se dividen automáticamente en varios nodos. La fragmentación es el proceso de separar los datos en partes más pequeñas, denominados particiones, que se distribuyen en varios servidores o nodos. En efecto, una partición es una partición de datos que contiene un subconjunto del conjunto total de datos y sirve para cubrir una parte de la carga de trabajo total.

Dado que Redis OSS es un almacén de SQL datos sin valores clave, la convención de nomenclatura de claves de Redis que se debe usar cuando la fuente es una base de datos relacional es OSS schema-name.table-name.primary-key. En Redis, la clave y el valor no deben contener el carácter especial%. OSS De lo contrario, DMS omite el registro.

nota

Si utiliza ElastiCache (RedisOSS) como destino, solo DMS admite configuraciones habilitadas en modo clúster. Para obtener más información sobre el uso de ElastiCache (RedisOSS) versión 6.x o superior para crear un almacén de datos de destino habilitado para el modo de clúster, consulte Introducción en la Guía del usuario de Amazon ElastiCache (RedisOSS).

Antes de iniciar la migración de una base de datos, lance el OSS clúster de Redis con los siguientes criterios.

  • El clúster tiene una o varias particiones.

  • Si utiliza un destino ElastiCache (RedisOSS), asegúrese de que su clúster no utilice un control de acceso basado en IAM roles. En su lugar, usa Redis OSS Auth para autenticar a los usuarios.

  • Habilite Multi-AZ (zonas de disponibilidad).

  • Asegúrese de que el clúster tenga suficiente memoria disponible para ajustar los datos a migrar desde la base de datos.

  • Asegúrese de que el OSS clúster de Redis de destino esté libre de todos los datos antes de iniciar la tarea de migración inicial.

Debe determinar los requisitos de seguridad para la migración de datos antes de crear la configuración del clúster. DMSadmite la migración a los grupos de replicación de destino, independientemente de su configuración de cifrado. Sin embargo, solo puede habilitar o desactivar el cifrado al crear la configuración del clúster.

Limitaciones a la hora de utilizar Redis como objetivo para AWS Database Migration Service

Cuando se utiliza Redis OSS como objetivo, se aplican las siguientes limitaciones:

  • Dado que Redis OSS es un almacén de datos sin SQL con valores clave, la convención de nomenclatura de OSS claves de Redis que se debe utilizar cuando la fuente es una base de datos relacional sí lo es. schema-name.table-name.primary-key

  • En RedisOSS, el valor-clave no puede contener el carácter especial. % De lo contrario, DMS omite el registro.

  • DMSno migrará las filas que contengan el % carácter.

  • DMSno migrará los campos que contengan el % carácter en el nombre del campo.

  • No se admite el LOB modo completo.

  • No se admite una autoridad de certificación (CA) privada cuando se utiliza ElastiCache (RedisOSS) como destino.

Migración de datos de una base de datos relacional o no relacional a un destino de Redis OSS

Puede migrar datos desde cualquier fuente SQL o desde ningún almacén de SQL datos directamente a un destino de OSS Redis. Configurar e iniciar una migración a un OSS destino de Redis es similar a cualquier migración completa de captura de datos con carga y cambio mediante la DMS consola o. API Para realizar una migración de base de datos a un OSS destino de Redis, haga lo siguiente.

  • Cree una instancia de replicación que efectúe todos los procesos para la migración. Para obtener más información, consulte Creación de una instancia de replicación.

  • Especifique un punto de conexión de origen. Para obtener más información, consulte Creación de puntos de enlace de origen y destino.

  • Busque el DNS nombre y el número de puerto del clúster.

  • Descargue un paquete de certificados que pueda usar para verificar SSL las conexiones.

  • Especifique un punto de conexión de destino, tal y como se describe a continuación.

  • Crear una tarea o conjunto de tareas para definir qué tablas y procesos de replicación desea utilizar. Para obtener más información, consulte Creación de una tarea.

  • Migre los datos de la base de datos de origen al clúster de destino.

Puede iniciar una migración de base de datos de una de las dos formas:

  1. Puede elegir la AWS DMS consola y realizar allí cada paso.

  2. Puede usar el AWS Command Line Interface (AWS CLI). Para obtener más información sobre el uso del CLI with AWS DMS, consulte AWS CLI for AWS DMS.

Para localizar el DNS nombre y el número de puerto del clúster
  • Utilice el siguiente AWS CLI comando para replication-group-id proporcionarle el nombre de su grupo de replicación.

    aws elasticache describe-replication-groups --replication-group-id myreplgroup

    Aquí, el resultado muestra el DNS nombre en el Address atributo y el número de puerto en el Port atributo del nodo principal del clúster.

    ... "ReadEndpoint": { "Port": 6379, "Address": "myreplgroup- 111.1abc1d.1111.uuu1.cache.example.com" } ...

    Si utiliza MemoryDB como destino, utilice el siguiente AWS CLI comando para proporcionar una dirección de punto final a su clúster de OSS Redis.

    aws memorydb describe-clusters --clusterid clusterid
Descargue un paquete de certificados para usarlo para verificar las conexiones SSL
  • Ingrese el siguiente comando wget en la línea de comandos. Wget es una herramienta de GNU línea de comandos gratuita que se utiliza para descargar archivos de Internet.

    wget https://s3.aws-api-domain/rds-downloads/rds-combined-ca-bundle.pem

    Aquí, aws-api-domain complete el dominio de Amazon S3 de su AWS región necesario para acceder al bucket de S3 especificado y al rds-combined-ca-bundle archivo.pem que proporciona.

Para crear un punto final de destino mediante la consola AWS DMS

Este punto final es para su OSS objetivo de Redis que ya se está ejecutando.

  • En la consola, elija Puntos de conexión del panel de navegación y, a continuación, elija Crear punto de conexión. La tabla siguiente describe la configuración.

    Para esta opción Haga lo siguiente

    Tipo de punto de conexión

    Elija el tipo de punto de conexión de destino.

    Endpoint identifier

    Ingrese el nombre del punto de conexión. Por ejemplo, incluya el tipo de punto de conexión en el nombre, por ejemplo my-redis-target.

    Motor de destino

    Elija Redis OSS como el tipo de motor de base de datos al que desea que se conecte este punto final.

    Cluster name (Nombre del clúster)

    Introduzca el DNS nombre de su clúster de RedisOSS.

    Puerto

    Introduzca el número de puerto de su clúster de RedisOSS.

    SSLprotocolo de seguridad

    Elija texto sin formato o SSLcifrado.

    Texto sin formato: esta opción no proporciona el cifrado Transport Layer Security (TLS) para el tráfico entre el punto final y la base de datos.

    SSLcifrado: si elige esta opción, introduzca un SSL certificado de una autoridad de certificación (CA) ARN para verificar el certificado del servidor y establecer una conexión cifrada.

    En el caso de Redis localOSS, DMS es compatible con entidades de certificación (CA) públicas y privadas. Para ElastiCache (RedisOSS), solo DMS admite una CA pública.

    Tipo de autenticación

    Elija el tipo de autenticación que se va a realizar al conectarse a OSS Redis. Las opciones incluyen, Ninguna, Rol de autenticación y Token de autenticación.

    Si elige rol de autenticación, proporcione un nombre de usuario de autenticación y una contraseña de autenticación.

    Si elige un token de autenticación, proporcione solo una contraseña de autenticación.

    Instancia de replicación

    [Opcional] Solo si tiene intención de probar la conexión, elija el nombre de la instancia de replicación que ingresó anteriormente en la página Crear instancia de replicación.

Cuando haya terminado de proporcionar toda la información de su terminal, AWS DMS crea su punto final de OSS destino de Redis para usarlo durante la migración de la base de datos.

Para obtener información sobre cómo crear una tarea de migración e iniciar la migración de la base de datos, consulte Creación de una tarea.

Especificar la configuración del punto final para Redis OSS como destino

Para crear o modificar un punto final de destino, puede utilizar la consola o las ModifyEndpoint API operaciones CreateEndpoint o.

Para un OSS objetivo de Redis en la AWS DMS consola, especifique la configuración específica del punto final en la página Crear punto final o Modificar la consola de punto final.

Cuando utilice una CreateEndpoint ModifyEndpoint API operación, especifique los parámetros de solicitud para la opción. RedisSettings El siguiente ejemplo muestra cómo hacer esto mediante la AWS CLI.

aws dms create-endpoint --endpoint-identifier my-redis-target --endpoint-type target --engine-name redis --redis-settings '{"ServerName":"sample-test-sample.zz012zz.cluster.eee1.cache.bbbxxx.com","Port":6379,"AuthType":"auth-token", "SslSecurityProtocol":"ssl-encryption", "AuthPassword":"notanactualpassword"}' { "Endpoint": { "EndpointIdentifier": "my-redis-target", "EndpointType": "TARGET", "EngineName": "redis", "EngineDisplayName": "Redis", "TransferFiles": false, "ReceiveTransferredFiles": false, "Status": "active", "KmsKeyId": "arn:aws:kms:us-east-1:999999999999:key/x-b188188x", "EndpointArn": "arn:aws:dms:us-east-1:555555555555:endpoint:ABCDEFGHIJKLMONOPQRSTUVWXYZ", "SslMode": "none", "RedisSettings": { "ServerName": "sample-test-sample.zz012zz.cluster.eee1.cache.bbbxxx.com", "Port": 6379, "SslSecurityProtocol": "ssl-encryption", "AuthType": "auth-token" } } }

Los parámetros --redis-settings son:

  • ServerName— (Obligatorio) De tipostring, especifica el OSS clúster de Redis al que se migrarán los datos y se encuentra en el suyo. VPC

  • Port: (obligatorio) de tipo number, el valor del puerto utilizado para acceder al punto de conexión.

  • SslSecurityProtocol: (opcional) los valores válidos son plaintext y ssl-encryption. El valor predeterminado es ssl-encryption.

    La plaintext opción no proporciona el cifrado Transport Layer Security (TLS) para el tráfico entre el punto final y la base de datos.

    Se utiliza ssl-encryption para establecer una conexión cifrada. ssl-encryptionno requiere una autoridad de SSL certificación (CA) ARN para verificar el certificado de un servidor, pero se puede identificar una de ellas de forma opcional mediante la SslCaCertificateArn configuración. Si ARN no se proporciona una autoridad de certificación, DMS utiliza la CA raíz de Amazon.

    Si utilizas un OSS destino Redis local, puedes usarlo SslCaCertificateArn para importar una autoridad de certificación (CA) pública o privada y proporcionarla DMS ARN para la autenticación del servidor. No se admite una CA privada cuando se utiliza ElastiCache (RedisOSS) como destino.

  • AuthType— (Obligatorio) Indica el tipo de autenticación que se debe realizar al conectarse a OSS Redis. Los valores válidos son none, auth-token y auth-role.

    La auth-token opción requiere un»AuthPassword"se proporcionará, mientras que la auth-role opción requiere»AuthUserName" y "AuthPassword"se proporcione.