Ich möchte Fehler in einem selbst entworfenen Amazon ElastiCache-Cluster beheben, der nicht herunterskaliert werden kann.
Behebung
Wenn Sie Ihren selbst entworfenen Cluster nicht herunterskalieren können, überprüfen Sie Folgendes:
Größe der Cache-Daten
Jeder ElastiCache-Knoten hat eine dedizierte Speichermenge, die für die Redis-Engine reserviert ist, und der neue Knotentyp verfügt möglicherweise nicht über ausreichend Speicher, um die Cache-Daten zu speichern. Der Knotentyp cache.m5.xlarge hat beispielsweise 12,93 GiB Speicherplatz. Standardmäßig reserviert ElastiCache 25 % des gesamten Speichers für Verwaltungsaufgaben wie Fullsync und das Erstellen von Snapshots. Um diesen Betrag zu ändern, aktualisieren Sie den Parameter reserved-memory-percent. Eine Liste der Knotentypen und Speichermengen finden Sie unter Amazon ElastiCache-Preise.
Um die Speicherbelegung in den Knotenparametern used_memory und maxmemory zu überprüfen, verwenden Sie den Befehl info memory:
**Hinweis:**Der Befehl info memory zeigt den Speicher in GB an. Die Amazon ElastiCache-Preise zeigen den Speicher in GiB an.
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
Um einen Mangel an verfügbarem Speicher auf dem Knoten zu beheben, reduzieren Sie die Cache-Daten oder wählen Sie einen Knotentyp mit mehr Kapazität.
Verfügbare Knotentypen
**Hinweis:**Wenn bei der Ausführung von AWS Command Line Interface (AWS CLI)-Befehlen Fehler auftreten, finden Sie weitere Informationen unter Troubleshoot AWS CLI errors. Stellen Sie außerdem sicher, dass Sie die neueste Version von AWS CLI verwenden.
Um zu ermitteln, welche Knotentypen Sie aus Ihrem aktuellen Knotentyp auswählen können, wenn Sie nach oben und unten skalieren, führen Sie die API ListAllowedNodeTypeModifications aus.
Um die verfügbaren Knotentypen anzuzeigen, auf die Ihr selbst entworfener Redis-Cluster skaliert werden kann, führen Sie den Befehl ListAllowedNodeTypeModifications aus:
$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"
]
}
Hinweis: Die Zeit, die für die Skalierung auf einen kleineren Knotentyp benötigt wird, hängt von Ihrem Knotentyp und der Datenmenge in Ihrem aktuellen Cache-Cluster ab.
Ähnliche Informationen
Reservierten Speicher verwalten
Redis-Cache-Cluster herunterskalieren (AWS CLI)