Je souhaite dépanner un cluster Amazon ElastiCache conçu par mes soins qui ne peut pas être réduit verticalement.
Résolution
Si vous ne parvenez pas à réduire verticalement un cluster conçu par vos soins, vérifiez les éléments suivants :
Taille des données du cache
Chaque nœud ElastiCache possède une quantité de mémoire dédiée réservée au moteur Redis. Il est donc possible que le nouveau type de nœud ne dispose pas de suffisamment de mémoire pour stocker les données du cache. Par exemple, le type de nœud cache.m5.xlarge possède 12,93 Gio de stockage. Par défaut, ElastiCache réserve 25 % de la mémoire totale pour des tâches administratives telles que fullsync et la création d’instantanés. Pour modifier ce chiffre, vous devez mettre à jour le paramètre reserved-memory-percent. Pour obtenir la liste des types de nœuds et des quantités de stockage, consultez la page Tarification d'Amazon ElastiCache.
Pour vérifier l'utilisation de la mémoire dans les paramètres de nœud used_memory et maxmemory, utilisez la commande info memory :
Remarque : la commande info memory indique la mémoire en Go. La tarification d'Amazon ElastiCache indique la mémoire en GiB.
test.xm4oz6.ng.0001.use1.cache.amazonaws.com:6379> info memory
# Memory
used_memory:5579416
used_memory_human:5.32M
used_memory_rss:11218944
used_memory_rss_human:10.70M
used_memory_peak:5856480
used_memory_peak_human:5.59M
maxmemory:10418941287
maxmemory_human:9.70G
Pour résoudre le manque de mémoire disponible au niveau du nœud, vos pouvez réduire les données du cache ou choisir un type de nœud doté d'une capacité supérieure.
Types de nœuds disponibles
Remarque : si des erreurs surviennent lorsque vous exécutez des commandes de l’interface de la ligne de commande AWS (AWS CLI), consultez la page Résoudre les erreurs liées à AWS CLI. Vérifiez également que vous utilisez bien la version la plus récente de l’AWS CLI.
Pour connaître les types de nœuds que vous pouvez sélectionner pour votre type de nœud actuel lors d’une augmentation ou réduction verticale, exécutez l'API ListAllowedNodeTypeModifications.
Pour afficher les types de nœuds disponibles pour la mise à l’échelle d’un cluster Redis conçu par vos soins, exécutez la commande ListAllowedNodeTypeModifications :
$aws elasticache list-allowed-node-type-modifications --replication-group-id checkout-cache-test
{
"ScaleUpModifications": [
"cache.r4.16xlarge",
"cache.r5.12xlarge",
"cache.r5.24xlarge",
"cache.r5.4xlarge"
],
"ScaleDownModifications": [
"cache.m3.2xlarge",
"cache.m3.large",
"cache.m3.medium",
"cache.m3.xlarge",
"cache.m4.2xlarge",
"cache.m4.4xlarge",
"cache.m4.large",
"cache.m4.xlarge",
"cache.r3.2xlarge",
"cache.r3.large",
"cache.r3.xlarge",
"cache.r4.2xlarge",
"cache.r4.large",
"cache.r4.xlarge",
"cache.t2.medium",
"cache.t2.micro",
"cache.t2.small",
"cache.t3.medium",
"cache.t3.micro",
"cache.t3.small"
]
}
Remarque : le temps nécessaire pour passer à un type de nœud plus petit dépend de votre type de nœud et de la quantité de données dans votre cluster de cache actuel.
Informations connexes
Gestion de la mémoire réservée
Réduction verticale des clusters de cache Redis (AWS CLI)