Probleme beheben

Auf dieser Seite werden verschiedene Fehlerszenarien erläutert und es wird beschrieben, wie Sie die Fehler beheben können.

Replikationsszenarien

In diesem Abschnitt werden Replikationsprobleme beschrieben, die in Ihrem Cluster auftreten können.

Wie überwachen Sie Replikationsverzögerungen?

Memorystore for Redis Cluster hat die Messwert /cluster/replication/maximum_offset_diff. Mit dieser Messwert wird die maximale Differenz des Replikations-Offsets (in Byte) für einen Knoten in einem primären Cluster überwacht.

Wenn Sie die Differenz des Replikations-Offsets niedrig halten, können Replikate häufiger und kostengünstiger inkrementelle Synchronisierungsvorgänge ausführen als vollständige Synchronisierungsvorgänge.

Wir empfehlen, einen Grenzwert für den Messwert maximum_offset_diff festzulegen. Wenn der Schwellenwert überschritten wird, kann Memorystore for Redis Cluster Sie durch eine Benachrichtigung informieren.

Basierend auf dem Knotentyp für Ihren Cluster empfehlen wir, den Schwellenwert so festzulegen:

  • Wenn der Knotentyp redis-shared-core-nano, redis-standard-small, redis-highmem-medium, redis-highcpu-medium oder redis-standard-large ist, legen Sie den Schwellenwert auf weniger als 64 MB fest.

  • Wenn der Knotentyp redis-highmem-xlarge oder redis-highmem-2xlarge ist, legen Sie den Schwellenwert auf weniger als 1 GB fest.

Szenarien für Verbindungsfehler

In diesem Abschnitt werden Verbindungsprobleme beschrieben, die bei Ihrer Instanz auftreten können.

Verbindungsfehler aufgrund von Firewallregeln

Firewallregeln können Verbindungsfehler verursachen, indem sie die Ports blockieren, die von Memorystore for Redis Cluster verwendet werden. Fügen Sie für beide Private Service Connect-Endpunkte Ihrer Instanz die Ports 11000 bis 13047 auf die Zulassungsliste. Weitere Informationen zu diesen Endpunkten finden Sie unter Reservierte Netzwerkadressen.

Verbindungsfehler aufgrund von Organisationsrichtlinien

Sie können eine Organisationsrichtlinie haben, die Ihre Private Service Connect-Verbindungen zu Ihrer Memorystore for Redis Cluster-Instanz blockiert.

Wenn in Ihrer Organisationsrichtlinie die Richtlinie .restrictPrivateServiceConnectProducer verwendet wird, setzen Sie die Ordnernummer 961333125034 auf die Zulassungsliste. Dieser Ordner ist speziell für Memorystore for Redis Cluster vorgesehen. Beispiel:

name: organizations/Consumer-org-1/policies/compute.restrictPrivateServiceConnectProducer
spec:
    rules:
      - values:
          allowedValues:
          - under:folders/961333125034

Wenn in Ihrer Organisationsrichtlinie die Richtlinie .disablePrivateServiceConnectCreationForConsumers verwendet wird, sollten Sie SERVICE_PRODUCERS auf die Zulassungsliste setzen. Beispiel:

name: organizations/Consumer-org-1/policies/compute.disablePrivateServiceConnectCreationForConsumers
spec:
    rules:
      - values:
          allowedValues:
          - SERVICE_PRODUCERS

Szenarien für die CPU-Nutzung

In diesem Abschnitt werden Probleme mit der CPU-Auslastung erläutert, die in Ihrem Cluster auftreten können.

Der Ausgabepuffer Ihres Clusters hat keinen Speicherplatz mehr.

Wenn der Ausgabepuffer Ihres Clusters keinen Speicherplatz mehr hat, gehen Sie so vor:

  • Legen Sie einen kleineren Wert für den Parameter maxmemory fest.
  • Verwenden Sie die allkeys-lru-Richtlinie maxmemory.

Wenn der Speicher Ihres Clusters voll ist und ein neuer Schreibvorgang eingeht, werden die Schlüssel von Memorystore for Redis Cluster entfernt, um Platz für den Schreibvorgang zu schaffen. Dieser Vorgang basiert auf der maxmemory-Richtlinie Ihres Clusters. Die allkeys-lru-Richtlinie entfernt die am weitesten in der Vergangenheit verwendeten (LRU) Schlüssel aus dem gesamten Keyset.

Wir empfehlen, die maxmemory und den verwendeten Arbeitsspeicher Ihres Clusters im Blick zu behalten. So können Sie feststellen, ob Ihr Cluster die bereitgestellte Clusterkapazität erreicht. Wenn Sie den Wert für den Parameter maxmemory verringern, haben Sie außerdem mehr Spielraum für den Overhead.

Warum fehlen möglicherweise externe Messwerte für Ihren Cluster?

Wenn in Ihrem Cluster eine hohe CPU-Auslastung auftritt oder die Ressourcen des Clusters erschöpft sind (z. B. durch zu viele Verbindungen), kann es sein, dass sich der Cluster nicht richtig verhält und externe Messwerte fehlen.

Persistenzszenarien

In diesem Abschnitt werden Probleme mit der Persistenz beschrieben, die in Ihrem Cluster auftreten können.

Ihr Schreibtraffic übersteigt die Möglichkeiten von Memorystore for Redis Cluster, Speicherplatz durch AOF-Rewriting zu komprimieren und freizugeben.

Wenn diese Situation eintritt, wächst die AOF-Datei (Append-Only File) schneller, als der Rewrite-Prozess bewältigen kann. Dies führt zu einer Erschöpfung des Speicherplatzes auf dem Laufwerk, zu Schreibfehlern und zu einer Blockierung von Vorgängen, die das Erstellen von Replikaten und eine vollständige Synchronisierung erfordern.

In Memorystore for Redis Cluster wurden Schutzmaßnahmen implementiert, um den Schreibdurchsatz zu regulieren. So wird sichergestellt, dass das AOF-Umschreiben mit anhaltenden Arbeitslasten mit vielen Schreibvorgängen mithalten kann.