Utiliser Redis OSS comme cible pour AWS Database Migration Service - AWS Service de Migration de Base de Données

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Utiliser Redis OSS comme cible pour AWS Database Migration Service

Redis OSS est un magasin de structure de données en mémoire open source utilisé comme base de données, cache et courtier de messages. La gestion des données en mémoire peut entraîner des opérations de lecture ou d’écriture de moins d’une milliseconde et des centaines de millions d’opérations par seconde. En tant que magasin de données en mémoire, Redis OSS alimente les applications les plus exigeantes nécessitant des temps de réponse inférieurs à la milliseconde.

Vous pouvez AWS DMS ainsi migrer les données de n'importe quelle base de données source prise en charge vers un magasin de OSS données Redis cible avec un temps d'arrêt minimal. Pour plus d'informations sur Redis, OSS consultez la documentation Redis OSS.

Outre Redis sur siteOSS, AWS Database Migration Service prend en charge les éléments suivants :

  • Amazon ElastiCache (RedisOSS) en tant que magasin de données cible. ElastiCache (RedisOSS) travaille avec vos OSS clients Redis et utilise le format de données ouvert Redis pour stocker vos OSS données.

  • Amazon MemoryDB en tant que magasin de données cible. MemoryDB est compatible avec Redis OSS et vous permet de créer des applications en utilisant toutes les structures de OSS données et commandes Redis APIs utilisées aujourd'hui.

Pour plus d'informations sur l'utilisation de Redis OSS comme cible pour AWS DMS, consultez les sections suivantes :

Conditions préalables à l'utilisation d'un OSS cluster Redis comme cible pour AWS DMS

DMSprend en charge une OSS cible Redis sur site dans une configuration autonome ou en tant que OSS cluster Redis dans lequel les données sont automatiquement réparties sur plusieurs nœuds. Le partitionnement est le processus qui consiste à séparer les données en petits fragments appelés « partitions », répartis sur plusieurs serveurs ou nœuds. Une partition contient un sous-ensemble de l’ensemble de données total qui couvre une partie de la charge de travail globale.

OSSRedis étant un magasin de SQL données sans valeur clé, la convention de dénomination des OSS clés Redis à utiliser lorsque votre source est une base de données relationnelle est schema-name.table-name.primary-key. Dans RedisOSS, la clé et la valeur ne doivent pas contenir le caractère spécial %. Sinon, DMS ignore l'enregistrement.

Note

Si vous utilisez ElastiCache (RedisOSS) comme cible, DMS prend uniquement en charge les configurations activées en mode cluster. Pour plus d'informations sur l'utilisation de ElastiCache (RedisOSS) version 6.x ou ultérieure pour créer un magasin de données cible compatible avec le mode cluster, consultez Getting started dans le guide de l'utilisateur Amazon ElastiCache (RedisOSS).

Avant de commencer une migration de base de données, lancez votre OSS cluster Redis selon les critères suivants.

  • Votre cluster possède une ou plusieurs partitions.

  • Si vous utilisez une cible ElastiCache (RedisOSS), assurez-vous que votre cluster n'utilise pas de contrôle d'accès IAM basé sur les rôles. Utilisez plutôt Redis OSS Auth pour authentifier les utilisateurs.

  • Activez Multi-AZ (zones de disponibilité).

  • Assurez-vous que le cluster dispose de suffisamment de mémoire pour accueillir les données à migrer depuis la base de données.

  • Assurez-vous que votre OSS cluster Redis cible est exempt de toutes les données avant de commencer la tâche de migration initiale.

Vous devez déterminer vos exigences de sécurité pour la migration des données avant de créer la configuration de votre cluster. DMSprend en charge la migration vers les groupes de réplication cibles, quelle que soit leur configuration de chiffrement. Mais vous ne pouvez activer ou désactiver le chiffrement que lorsque vous créez la configuration de votre cluster.

Limitations liées à l'utilisation de Redis comme cible pour AWS Database Migration Service

Les limites suivantes s'appliquent lors de l'utilisation de Redis OSS comme cible :

  • OSSRedis étant un magasin de données no-sql à valeur clé, la convention de dénomination des OSS clés Redis à utiliser lorsque votre source est une base de données relationnelle est la suivante : schema-name.table-name.primary-key

  • Dans RedisOSS, la valeur clé ne peut pas contenir le caractère spécial. % Sinon, DMS ignore l'enregistrement.

  • DMSne migrera pas les lignes contenant le % caractère.

  • DMSne migrera pas les champs contenant le % caractère dans le nom du champ.

  • LOBLe mode complet n'est pas pris en charge.

  • Une autorité de certification (CA) privée n'est pas prise en charge lors de l'utilisation de ElastiCache (RedisOSS) comme cible.

Migration de données d'une base de données relationnelle ou non relationnelle vers une cible Redis OSS

Vous pouvez migrer des données depuis n'importe quelle source SQL ou aucun magasin de SQL données directement vers une OSS cible Redis. La configuration et le démarrage d'une migration vers une OSS cible Redis sont similaires à toute migration de chargement complet et de capture de données à l'aide de la DMS console ouAPI. Pour effectuer une migration de base de données vers une OSS cible Redis, procédez comme suit.

  • Créez une instance de réplication pour effectuer tous les processus de la migration. Pour de plus amples informations, veuillez consulter Création d'une instance de réplication.

  • Spécifiez un point de terminaison source. Pour de plus amples informations, veuillez consulter Création de points de terminaison source et cible.

  • Recherchez le DNS nom et le numéro de port de votre cluster.

  • Téléchargez un ensemble de certificats que vous pouvez utiliser pour vérifier SSL les connexions.

  • Spécifiez un point de terminaison cible, comme décrit ci-dessous.

  • Créez une tâche ou un ensemble de tâches pour définir les tables et processus de réplication à utiliser. Pour de plus amples informations, veuillez consulter Création d’une tâche.

  • Migrez les données de la base de données source vers votre cluster cible.

Commencez une migration de base de données de l’une des deux manières suivantes :

  1. Vous pouvez choisir la AWS DMS console et y effectuer chaque étape.

  2. Vous pouvez utiliser le AWS Command Line Interface (AWS CLI). Pour plus d'informations sur l'utilisation du CLI with AWS DMS, voir AWS CLI pour AWS DMS.

Pour localiser le DNS nom et le numéro de port de votre cluster
  • Utilisez la AWS CLI commande suivante pour replication-group-id fournir le nom de votre groupe de réplication.

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

    Ici, la sortie indique le DNS nom dans l'Addressattribut et le numéro de port dans l'Portattribut du nœud principal du cluster.

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

    Si vous utilisez MemoryDB comme cible, utilisez la AWS CLI commande suivante pour fournir une adresse de point de terminaison à votre cluster RedisOSS.

    aws memorydb describe-clusters --clusterid clusterid
Téléchargez un ensemble de certificats à utiliser pour vérifier les SSL connexions
  • Entrez la commande wget suivante sur la ligne de commande. Wget est un utilitaire de GNU ligne de commande gratuit utilisé pour télécharger des fichiers depuis Internet.

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

    Ici, aws-api-domain complète le domaine Amazon S3 de votre AWS région requis pour accéder au compartiment S3 spécifié et au rds-combined-ca-bundle fichier .pem qu'il fournit.

Pour créer un point de terminaison cible à l'aide de la AWS DMS console

Ce point de terminaison est destiné à votre OSS cible Redis déjà en cours d'exécution.

  • Dans la console, choisissez Points de terminaison dans le volet de navigation, puis Créer un point de terminaison. Le tableau suivant décrit les paramètres.

    Pour cette option Faire ceci

    Type de point de terminaison

    Choisissez le type de point de terminaison Cible.

    Identificateur de point de terminaison

    Entrez le nom du point de terminaison. Indiquez le type de point de terminaison dans le nom, par exemple my-redis-target.

    Moteur cible

    Choisissez Redis OSS comme type de moteur de base de données auquel vous souhaitez que ce point de terminaison se connecte.

    Nom du cluster

    Entrez le DNS nom de votre OSS cluster Redis.

    Port

    Entrez le numéro de port de votre OSS cluster Redis.

    SSLprotocole de sécurité

    Choisissez le texte brut ou SSLle chiffrement.

    Texte brut : cette option ne fournit pas de chiffrement Transport Layer Security (TLS) pour le trafic entre le point de terminaison et la base de données.

    SSLchiffrement —Si vous choisissez cette option, entrez un SSL certificat d'autorité de certification (CA) ARN pour vérifier le certificat du serveur et établir une connexion cryptée.

    Pour Redis sur siteOSS, DMS prend en charge les autorités de certification (CA) publiques et privées. Pour ElastiCache (RedisOSS), ne DMS prend en charge qu'une autorité de certification publique.

    Type d’authentification

    Choisissez le type d'authentification à effectuer lors de la connexion à RedisOSS. Les options incluent Aucun, Rôle d’authentification et Jeton d’authentification.

    Si vous choisissez Rôle d’authentification, entrez un Nom d’utilisateur d’authentification et un Mot de passe d’authentification.

    Si vous choisissez Jeton d’authentification, fournissez uniquement un Mot de passe d’authentification.

    Instance de réplication

    [Facultatif] Uniquement si vous prévoyez de tester votre connexion, choisissez le nom de l’instance de réplication que vous avez entré précédemment sur la page Créer une instance de réplication.

Lorsque vous avez terminé de fournir toutes les informations relatives à votre point de terminaison, AWS DMS crée votre point de terminaison OSS cible Redis à utiliser lors de la migration de la base de données.

Pour en savoir plus sur la création d’une tâche de migration et le démarrage de la migration de la base de données, consultez Création d’une tâche.

Spécifier les paramètres du point de terminaison pour Redis OSS en tant que cible

Pour créer ou modifier un point de terminaison cible, vous pouvez utiliser la console CreateEndpoint ou les ModifyEndpoint API opérations or.

Pour une OSS cible Redis dans la AWS DMS console, spécifiez les paramètres spécifiques au point de terminaison sur la page Créer un point de terminaison ou Modifier la console de point de terminaison.

Lors de l'utilisation ModifyEndpoint API des opérations CreateEndpoint et, spécifiez les paramètres de demande pour l'RedisSettingsoption. L’exemple suivant montre comment procéder à l’aide d’ 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" } } }

Les paramètres --redis-settings sont les suivants :

  • ServerName— (Obligatoire) De typestring, indique le OSS cluster Redis vers lequel les données seront migrées, et il se trouve dans le vôtre. VPC

  • Port : (Obligatoire) pour le type number, valeur du port utilisé pour accéder au point de terminaison.

  • SslSecurityProtocol : (Facultatif) les valeurs valides incluent plaintext et ssl-encryption. L’argument par défaut est ssl-encryption.

    L'plaintextoption ne fournit pas de chiffrement Transport Layer Security (TLS) pour le trafic entre le point de terminaison et la base de données.

    ssl-encryptionÀ utiliser pour établir une connexion cryptée. ssl-encryptionne nécessite pas d'autorité de SSL certification (CA) ARN pour vérifier le certificat d'un serveur, mais il est possible d'en identifier une en option à l'aide du SslCaCertificateArn paramètre. Si aucune autorité de certification ARN n'est fournie, DMS utilise l'autorité de certification racine Amazon.

    Lorsque vous utilisez une OSS cible Redis sur site, vous pouvez l'utiliser SslCaCertificateArn pour importer une autorité de certification (CA) publique ou privée et la fournir ARN pour l'authentification du serveur. DMS Une autorité de certification privée n'est pas prise en charge lors de l'utilisation de ElastiCache (RedisOSS) comme cible.

  • AuthType— (Obligatoire) Indique le type d'authentification à effectuer lors de la connexion à RedisOSS. Les valeurs valides sont none, auth-token et auth-role.

    L'auth-tokenoption nécessite un »AuthPassword« être fourni, tant que l'auth-roleoption l'exige »AuthUserName" and "AuthPassword« soit fourni.