Repartage en ligne et rééquilibrage des partitions pour MemoryDB - Amazon MemoryDB

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.

Repartage en ligne et rééquilibrage des partitions pour MemoryDB

En utilisant le repartage en ligne et le rééquilibrage des partitions avec MemoryDB, vous pouvez redimensionner votre MemoryDB de manière dynamique sans interruption de service. Cette approche signifie que votre cluster peut continuer à traiter des demandes même lorsqu'une mise à l'échelle ou un rééquilibrage est en cours.

Vous pouvez effectuer les actions suivantes :

  • Extensibilité : augmentez la capacité de lecture et d'écriture en ajoutant des partitions à votre cluster MemoryDB.

    Si vous ajoutez une ou plusieurs partitions à votre cluster, le nombre de nœuds de chaque nouvelle partition est identique au nombre de nœuds de la plus petite partition existante.

  • Mise à l'échelle : réduisez la capacité de lecture et d'écriture, et donc les coûts, en supprimant les partitions de votre cluster MemoryDB.

Actuellement, les restrictions suivantes s'appliquent au repartage en ligne de MemoryDB :

  • Il existe des limitations pour les emplacements et les espaces de clés ou les éléments volumineux :

    Si l'une des clés d'une partition contient un élément volumineux, cette clé ne peut pas faire l'objet d'une nouvelle migration lors d'une montée en charge ou d'un rééquilibrage. Cette fonctionnalité peut se traduire par des partitions non équilibrées.

    Si l'une des clés d'une partition contient un élément volumineux (supérieur à 256 Mo après sérialisation), cette partition n'est pas supprimée lors de l'agrandissement. Cette fonctionnalité peut se traduire par le fait que certaines partitions ne sont pas supprimées.

  • Lors de la mise à l'échelle, le nombre de nœuds dans les nouvelles partitions est égal au nombre de nœuds dans les partitions existantes.

Pour plus d’informations, consultez Bonnes pratiques : redimensionnement des clusters en ligne.

Vous pouvez redimensionner ou rééquilibrer horizontalement vos clusters MemoryDB à l'aide de l'API MemoryDB et de l' AWS CLI API MemoryDB. AWS Management Console

Ajout de partitions avec le repartitionnement en ligne

Vous pouvez ajouter des partitions à votre cluster MemoryDB à l'aide de l'API AWS Management Console AWS CLI, ou MemoryDB.

Vous pouvez utiliser le AWS Management Console pour ajouter une ou plusieurs partitions à votre cluster MemoryDB. La procédure suivante décrit le processus.

  1. Connectez-vous à la console MemoryDB AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/memorydb/.

  2. Dans la liste des clusters, choisissez le nom du cluster à partir duquel vous souhaitez ajouter une partition.

  3. Sous l'onglet Partitions et nœuds, choisissez Ajouter/Supprimer des partitions

  4. Dans Nouveau nombre de partitions, entrez le nombre de partitions que vous souhaitez.

  5. Choisissez Confirmer pour conserver les modifications ou Annuler pour les ignorer.

Le processus suivant décrit comment reconfigurer les partitions de votre cluster MemoryDB en ajoutant des partitions à l'aide du. AWS CLI

Utilisez les paramètres suivants avec update-cluster.

Paramètres
  • --cluster-name : obligatoire. Spécifie le cluster (cluster) sur lequel l'opération de reconfiguration de partition doit être effectuée.

  • --shard-configuration : obligatoire. Permet de définir le nombre de partitions.

    • ShardCount— Définissez cette propriété pour spécifier le nombre de partitions que vous souhaitez.

L'exemple suivant modifie le nombre de partitions du cluster my-cluster à 2.

Pour Linux, macOS ou Unix :

aws memorydb update-cluster \ --cluster-name my-cluster \ --shard-configuration \ ShardCount=2

Pour Windows :

aws memorydb update-cluster ^ --cluster-name my-cluster ^ --shard-configuration ^ ShardCount=2

Elle renvoie la réponse JSON suivante :

{ "Cluster": { "Name": "my-cluster", "Status": "updating", "NumberOfShards": 2, "AvailabilityMode": "MultiAZ", "ClusterEndpoint": { "Address": "clustercfg.my-cluster.xxxxxx.memorydb.us-east-1.amazonaws.com", "Port": 6379 }, "NodeType": "db.r6g.large", "EngineVersion": "6.2", "EnginePatchVersion": "6.2.6", "ParameterGroupName": "default.memorydb-redis6", "ParameterGroupStatus": "in-sync", "SubnetGroupName": "my-sg", "TLSEnabled": true, "ARN": "arn:aws:memorydb:us-east-1:xxxxxxexamplearn:cluster/my-cluster", "SnapshotRetentionLimit": 0, "MaintenanceWindow": "wed:03:00-wed:04:00", "SnapshotWindow": "04:30-05:30", "DataTiering": "false", "AutoMinorVersionUpgrade": true } }

Pour afficher les détails du cluster mis à jour une fois que son statut passe de mise à jour à disponible, utilisez la commande suivante :

Pour Linux, macOS ou Unix :

aws memorydb describe-clusters \ --cluster-name my-cluster --show-shard-details

Pour Windows :

aws memorydb describe-clusters ^ --cluster-name my-cluster --show-shard-details

Il renverra la réponse JSON suivante :

{ "Clusters": [ { "Name": "my-cluster", "Status": "available", "NumberOfShards": 2, "Shards": [ { "Name": "0001", "Status": "available", "Slots": "0-8191", "Nodes": [ { "Name": "my-cluster-0001-001", "Status": "available", "AvailabilityZone": "us-east-1a", "CreateTime": "2021-08-21T20:22:12.405000-07:00", "Endpoint": { "Address": "clustercfg.my-cluster.xxxxxx.memorydb.us-east-1.amazonaws.com", "Port": 6379 } }, { "Name": "my-cluster-0001-002", "Status": "available", "AvailabilityZone": "us-east-1b", "CreateTime": "2021-08-21T20:22:12.405000-07:00", "Endpoint": { "Address": "clustercfg.my-cluster.xxxxxx.memorydb.us-east-1.amazonaws.com", "Port": 6379 } } ], "NumberOfNodes": 2 }, { "Name": "0002", "Status": "available", "Slots": "8192-16383", "Nodes": [ { "Name": "my-cluster-0002-001", "Status": "available", "AvailabilityZone": "us-east-1b", "CreateTime": "2021-08-22T14:26:18.693000-07:00", "Endpoint": { "Address": "clustercfg.my-cluster.xxxxxx.memorydb.us-east-1.amazonaws.com", "Port": 6379 } }, { "Name": "my-cluster-0002-002", "Status": "available", "AvailabilityZone": "us-east-1a", "CreateTime": "2021-08-22T14:26:18.765000-07:00", "Endpoint": { "Address": "clustercfg.my-cluster.xxxxxx.memorydb.us-east-1.amazonaws.com", "Port": 6379 } } ], "NumberOfNodes": 2 } ], "ClusterEndpoint": { "Address": "clustercfg.my-cluster.xxxxxx.memorydb.us-east-1.amazonaws.com", "Port": 6379 }, "NodeType": "db.r6g.large", "EngineVersion": "6.2", "EnginePatchVersion": "6.2.6", "ParameterGroupName": "default.memorydb-redis6", "ParameterGroupStatus": "in-sync", "SubnetGroupName": "my-sg", "TLSEnabled": true, "ARN": "arn:aws:memorydb:us-east-1:xxxxxxexamplearn:cluster/my-cluster", "SnapshotRetentionLimit": 0, "MaintenanceWindow": "wed:03:00-wed:04:00", "SnapshotWindow": "04:30-05:30", "ACLName": "my-acl", "DataTiering": "false", "AutoMinorVersionUpgrade": true } ] }

Pour plus d'informations, consultez update-cluster dans la référence des AWS CLI commandes.

Vous pouvez utiliser l'API MemoryDB pour reconfigurer les partitions de votre cluster MemoryDB en ligne à l'aide de l'opération. UpdateCluster

Utilisez les paramètres suivants avec UpdateCluster.

Paramètres
  • ClusterName : obligatoire. Spécifie sur quel cluster l'opération de reconfiguration de partition doit être effectuée.

  • ShardConfiguration : obligatoire. Permet de définir le nombre de partitions.

    • ShardCount— Définissez cette propriété pour spécifier le nombre de partitions que vous souhaitez.

Pour plus d'informations, consultez UpdateCluster.

Suppression de partitions avec le repartitionnement en ligne

Vous pouvez supprimer des partitions de votre cluster MemoryDB à l'aide de l'API AWS Management Console AWS CLI, ou MemoryDB.

Le processus suivant décrit comment reconfigurer les partitions de votre cluster MemoryDB en supprimant les partitions à l'aide du. AWS Management Console

Important

Avant de supprimer des partitions de votre cluster, MemoryDB s'assure que toutes vos données rentreront dans les partitions restantes. Si les données sont correctes, les fragments sont supprimés du cluster comme demandé. Si les données ne rentrent pas dans les partitions restantes, le processus est interrompu et le cluster se retrouve avec la même configuration de partition qu'avant la demande.

Vous pouvez utiliser le AWS Management Console pour supprimer une ou plusieurs partitions de votre cluster MemoryDB. Vous ne pouvez pas supprimer tous les fragments d'un cluster. Vous devez plutôt supprimer le cluster. Pour plus d’informations, consultez Étape 4 : Supprimer un cluster. La procédure suivante décrit le processus de suppression d'une ou de plusieurs partitions.

  1. Connectez-vous à la console MemoryDB AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/memorydb/.

  2. Dans la liste des clusters, choisissez le nom du cluster dont vous souhaitez supprimer une partition.

  3. Sous l'onglet Partitions et nœuds, choisissez Ajouter/Supprimer des partitions

  4. Dans Nouveau nombre de partitions, entrez le nombre de partitions que vous souhaitez (avec un minimum de 1).

  5. Choisissez Confirmer pour conserver les modifications ou Annuler pour les ignorer.

Le processus suivant décrit comment reconfigurer les partitions de votre cluster MemoryDB en supprimant les partitions à l'aide du. AWS CLI

Important

Avant de supprimer des partitions de votre cluster, MemoryDB s'assure que toutes vos données rentreront dans les partitions restantes. Si les données sont correctes, les partitions sont supprimées du cluster comme demandé et leurs espaces clés sont mappés dans les partitions restantes. Si les données ne rentrent pas dans les partitions restantes, le processus est interrompu et le cluster se retrouve avec la même configuration de partition qu'avant la demande.

Vous pouvez utiliser le AWS CLI pour supprimer une ou plusieurs partitions de votre cluster MemoryDB. Vous ne pouvez pas supprimer tous les fragments d'un cluster. Vous devez plutôt supprimer le cluster. Pour plus d’informations, consultez Étape 4 : Supprimer un cluster.

Utilisez les paramètres suivants avec update-cluster.

Paramètres
  • --cluster-name : obligatoire. Spécifie le cluster (cluster) sur lequel l'opération de reconfiguration de partition doit être effectuée.

  • --shard-configuration : obligatoire. Permet de définir le nombre de partitions à l'aide de la ShardCount propriété :

    ShardCount— Définissez cette propriété pour spécifier le nombre de partitions que vous souhaitez.

L'exemple suivant modifie le nombre de partitions du cluster my-cluster à 2.

Pour Linux, macOS ou Unix :

aws memorydb update-cluster \ --cluster-name my-cluster \ --shard-configuration \ ShardCount=2

Pour Windows :

aws memorydb update-cluster ^ --cluster-name my-cluster ^ --shard-configuration ^ ShardCount=2

Elle renvoie la réponse JSON suivante :

{ "Cluster": { "Name": "my-cluster", "Status": "updating", "NumberOfShards": 2, "AvailabilityMode": "MultiAZ", "ClusterEndpoint": { "Address": "clustercfg.my-cluster.xxxxxx.memorydb.us-east-1.amazonaws.com", "Port": 6379 }, "NodeType": "db.r6g.large", "EngineVersion": "6.2", "EnginePatchVersion": "6.2.6", "ParameterGroupName": "default.memorydb-redis6", "ParameterGroupStatus": "in-sync", "SubnetGroupName": "my-sg", "TLSEnabled": true, "ARN": "arn:aws:memorydb:us-east-1:xxxxxxexamplearn:cluster/my-cluster", "SnapshotRetentionLimit": 0, "MaintenanceWindow": "wed:03:00-wed:04:00", "SnapshotWindow": "04:30-05:30", "DataTiering": "false", "AutoMinorVersionUpgrade": true } }

Pour afficher les détails du cluster mis à jour une fois que son statut passe de mise à jour à disponible, utilisez la commande suivante :

Pour Linux, macOS ou Unix :

aws memorydb describe-clusters \ --cluster-name my-cluster --show-shard-details

Pour Windows :

aws memorydb describe-clusters ^ --cluster-name my-cluster --show-shard-details

Il renverra la réponse JSON suivante :

{ "Clusters": [ { "Name": "my-cluster", "Status": "available", "NumberOfShards": 2, "Shards": [ { "Name": "0001", "Status": "available", "Slots": "0-8191", "Nodes": [ { "Name": "my-cluster-0001-001", "Status": "available", "AvailabilityZone": "us-east-1a", "CreateTime": "2021-08-21T20:22:12.405000-07:00", "Endpoint": { "Address": "clustercfg.my-cluster.xxxxxx.memorydb.us-east-1.amazonaws.com", "Port": 6379 } }, { "Name": "my-cluster-0001-002", "Status": "available", "AvailabilityZone": "us-east-1b", "CreateTime": "2021-08-21T20:22:12.405000-07:00", "Endpoint": { "Address": "clustercfg.my-cluster.xxxxxx.memorydb.us-east-1.amazonaws.com", "Port": 6379 } } ], "NumberOfNodes": 2 }, { "Name": "0002", "Status": "available", "Slots": "8192-16383", "Nodes": [ { "Name": "my-cluster-0002-001", "Status": "available", "AvailabilityZone": "us-east-1b", "CreateTime": "2021-08-22T14:26:18.693000-07:00", "Endpoint": { "Address": "clustercfg.my-cluster.xxxxxx.memorydb.us-east-1.amazonaws.com", "Port": 6379 } }, { "Name": "my-cluster-0002-002", "Status": "available", "AvailabilityZone": "us-east-1a", "CreateTime": "2021-08-22T14:26:18.765000-07:00", "Endpoint": { "Address": "clustercfg.my-cluster.xxxxxx.memorydb.us-east-1.amazonaws.com", "Port": 6379 } } ], "NumberOfNodes": 2 } ], "ClusterEndpoint": { "Address": "clustercfg.my-cluster.xxxxxx.memorydb.us-east-1.amazonaws.com", "Port": 6379 }, "NodeType": "db.r6g.large", "EngineVersion": "6.2", "EnginePatchVersion": "6.2.6", "ParameterGroupName": "default.memorydb-redis6", "ParameterGroupStatus": "in-sync", "SubnetGroupName": "my-sg", "TLSEnabled": true, "ARN": "arn:aws:memorydb:us-east-1:xxxxxxexamplearn:cluster/my-cluster", "SnapshotRetentionLimit": 0, "MaintenanceWindow": "wed:03:00-wed:04:00", "SnapshotWindow": "04:30-05:30", "ACLName": "my-acl", "DataTiering": "false", "AutoMinorVersionUpgrade": true } ] }

Pour plus d'informations, consultez update-cluster dans la référence des AWS CLI commandes.

Vous pouvez utiliser l'API MemoryDB pour reconfigurer les partitions de votre cluster MemoryDB en ligne à l'aide de l'opération. UpdateCluster

Le processus suivant décrit comment reconfigurer les partitions de votre cluster MemoryDB en supprimant les partitions à l'aide de l'API MemoryDB.

Important

Avant de supprimer des partitions de votre cluster, MemoryDB s'assure que toutes vos données rentreront dans les partitions restantes. Si les données sont correctes, les partitions sont supprimées du cluster comme demandé et leurs espaces clés sont mappés dans les partitions restantes. Si les données ne rentrent pas dans les partitions restantes, le processus est interrompu et le cluster se retrouve avec la même configuration de partition qu'avant la demande.

Vous pouvez utiliser l'API MemoryDB pour supprimer une ou plusieurs partitions de votre cluster MemoryDB. Vous ne pouvez pas supprimer tous les fragments d'un cluster. Vous devez plutôt supprimer le cluster. Pour plus d’informations, consultez Étape 4 : Supprimer un cluster.

Utilisez les paramètres suivants avec UpdateCluster.

Paramètres
  • ClusterName : obligatoire. Spécifie le cluster (cluster) sur lequel l'opération de reconfiguration de partition doit être effectuée.

  • ShardConfiguration : obligatoire. Permet de définir le nombre de partitions à l'aide de la ShardCount propriété :

    ShardCount— Définissez cette propriété pour spécifier le nombre de partitions que vous souhaitez.