Warum kann ich meinen ElastiCache-Cluster nicht herunterskalieren?

Lesedauer: 3 Minute
0

Warum kann ich meinen Amazon ElastiCache-Cluster nicht herunterskalieren?

Lösung

Wenn Sie Ihren Cluster nicht herunterskalieren können, überprüfen Sie Folgendes:

Größe der Cache-Daten

Der neue Knotentyp verfügt möglicherweise nicht über ausreichend Speicher zum Speichern von Cache-Daten. Jeder ElastiCache-Knoten verfügt über eine dedizierte Speichermenge, die für die Redis-Engine reserviert ist. Zum Beispiel hat der Knotentyp cache.m5.xlarge 12,93 GiB Speicher. Standardmäßig reserviert ElastiCache 25 % des Gesamtspeichers für Verwaltungsaufgaben wie Fullsync und das Erstellen von Snapshots. Sie können diesen Betrag mithilfe des Parameters reserved-memory-percent ändern.

Eine Liste der Knotentypen und Speichermengen finden Sie unter Amazon ElastiCache – Preise.

Im Beispielfall des Knotens cache.m5.xlarge kann die Redis-Engine 9,69 GiB (maxmemory) verwenden, um den Schlüsselraum aufzunehmen. Der restliche Speicher wird als Reservespeicher gehalten. Ihr aktueller Knotentyp verwendet den gesamten verfügbaren Speicher für die Daten. Der neue Knotentyp bietet weniger als 9,69 GiB Speicher. Das Herunterskalieren schlägt also fehl.

Verwenden Sie den Befehl info memory, um die Speicherbelegung zu überprüfen, die in den Parametern used_memory und maxmemory für den Knoten angezeigt wird. Beachten Sie, dass der Befehl info memory den Speicher in „GB“ anzeigt. Auf der Amazon ElastiCache-Preisseite wird der Speicher in „GiB“ angezeigt.

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

Wenn auf dem Knoten nicht genügend Speicher verfügbar ist, reduzieren Sie Ihre Cache-Daten. Oder wählen Sie einen Knotentyp mit höherer Kapazität.

Verfügbare Knotentypen

Ermitteln Sie, welche Knotentypen Sie bei der Auf- und Abwärtsskalierung aus Ihrem aktuellen Knotentyp auswählen können. Sie können dazu den ListAllowedNodeTypeModifications-API-Aufruf verwenden. Dieser API-Aufruf listet alle verfügbaren Knotentypen auf, auf die Sie den aktuellen Knotentyp Ihres Redis-Clusters oder Ihrer Replikationsgruppe skalieren können.

Um die verfügbaren Knotentypen für Ihren Redis-Cluster anzuzeigen, führen Sie den ListAllowedNodeTypeModifications-API-Aufruf über das AWS Command Line Interface (AWS CLI) aus. In der resultierenden Liste werden die Knotentypen angezeigt, auf die Sie skalieren können.

Hinweis: Wenn Sie beim Ausführen von AWS-CLI-Befehlen Fehler erhalten, stellen Sie sicher, dass Sie die neueste Version des AWS CLI verwenden.

$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.


Relevante Informationen

Reservierten Speicher verwalten

Redis-Cache-Cluster herunterskalieren (AWS CLI)

AWS OFFICIAL
AWS OFFICIALAktualisiert vor 2 Jahren