Warum hat meine AWS DMS-Replikations-DB-Instance den Status „storage-full“?
Ich möchte wissen, warum sich meine AWS Database Migration Service (AWS DMS)-Replikations-DB-Instance im Status „storage-full“ befindet.
Kurzbeschreibung
Für AWS DMS-Replikations-DB-Instances kannst du den zugewiesenen Speicher angeben, wenn du eine Replikations-DB-Instance erstellst. Standardmäßig beträgt die Größe der Volumes der Replikations-DB-Instance-Typen dms.t2.* und dms.r4.* 50 GiB. Die Volume-Größen der Replikations-DB-Instance-Typen dms.c4.* betragen 100 GiB. Um den freien Speicherplatz der Replikations-DB-Instance zu überwachen, überprüfe die Amazon CloudWatch-Metrik FreeStorageSpace. Der Speicher der Replikations-DB-Instance wird hauptsächlich für Aufgabenprotokolle und zwischengespeicherte Änderungen verwendet, die für die laufende Replikation gesammelt werden. Der Grund, warum sich deine AWS DMS-Replikations-DB-Instance im Status storage-full befindet, hängt möglicherweise vom Migrationstyp ab.
Migrationen mit Volllast
Aufgabenprotokolle können zu storage-full-Problemen führen, wenn viele Aufgabenprotokolle vorhanden sind. Wenn du beispielsweise die detaillierte Debug-Protokollierung für eine Aufgabe aktivierst, verfügt deine DB-Instance über mehr Aufgabenprotokolle.
Migrationen mit laufender Replikation
Zwischengespeicherte Ereignisse können während einer Volllastphase zu Speicherproblemen führen, insbesondere wenn du deine Migration so konfigurierst, dass die Aufgabeneinstellung StopTaskCachedChangesNotApplied verwendet wird. Wenn die Speichergröße zu klein ist, um die zwischengespeicherten Änderungen zu speichern, hat deine Replikations-DB-Instance den Status storage-full. Ausgetauschte Ereignisse während der Change Data Capture (CDC)-Phase können zu Speicherproblemen führen, wenn die Änderungen aus der Quelle nicht auf das Ziel angewendet werden können. AWS DMS speichert zuerst die zwischengespeicherten Ereignisse im Arbeitsspeicher. Wenn die durch den Parameter MemoryKeepTime oder MemoryLimitTotal definierten Werte überschritten werden, lagert AWS DMS die zwischengespeicherten Ereignisse in den Arbeitsspeicher aus. Wenn nicht genügend Speicherplatz für die ausgetauschten Daten vorhanden ist, hat die Replikations-DB-Instance den Status storage-full. Weitere Informationen findest du unter Ändern der Einstellungen für die Verarbeitungsoptimierung.
Behebung
**Hinweis:**Wenn bei der Ausführung von AWS Command Line Interface (AWS CLI)-Befehlen Fehler auftreten, findest du weitere Informationen unter Troubleshoot AWS CLI errors. Stelle außerdem sicher, dass du die neueste Version der AWS CLI verwendest.
Aufgabenprotokolle löschen
Wenn sich die Replikations-DB-Instance in einem verfügbaren Status befindet, lösche die Aufgabenprotokolle:
- Öffne die AWS DMS-Konsole.
- Wähle im Navigationsbereich Replikations-Instances aus.
- Wähle den Namen der Replikations-DB-Instance aus. Im Abschnitt Protokollverwaltung siehst du alle Aufgaben und die Protokollgröße jeder Aufgabe.
- Wähle die Aufgaben aus, für die du Protokolle löschen möchtest, und klicke dann auf Löschen.
Weitere Informationen findest du unter AWS DMS-Aufgabenprotokolle anzeigen und verwalten.
Aufgabeneinstellung ändern
Um die AWS CLI zum Löschen der DMS-Aufgabenprotokolle zu verwenden, ändere die Aufgabeneinstellung. Führe den folgenden Befehl aus, um eine tasksetting.json-JSON-Datei zu erstellen:
{ "Logging": { "DeleteTaskLogs":true } }
Nachdem du die JSON-Datei erstellt hast, führe den folgenden Befehl aus, um die Aufgabeneinstellung zu ändern.
Hinweis: Um die Aufgabe zu ändern, muss die Aufgabe den Status Angehalten oder Fehlgeschlagen haben.
aws dms modify-replication-task --replication-task-arn --replication-task-settings file://tasksetting.json
Um die Aufgabeneinstellung zu ändern, ändert der vorhergehende Befehl den Parameter "DeleteTaskLogs": true. Nachdem du den Parameter geändert hast, werden alle vorhandenen Aufgabenprotokolle aus der Replikations-DB-Instance gelöscht. Dann entfernt die Aufgabeneinstellung den Parameter "DeleteTaskLogs": true. Vergewissere dich, dass die Protokolle aus der Replikations-DB-Instance gelöscht wurden und dass die Aufgabeneinstellung den Parameter "DeleteTaskLogs": true entfernt hat.
Um die Protokolle regelmäßig zu löschen, musst du die Aufgabeneinstellung jedes Mal mit dem Parameter "DeleteTaskLogs": true ändern. Du kannst den Cronjob oder den Lambda-Scheduler verwenden, um die regelmäßige Ausführung dieses Befehls zu planen. Weitere Informationen findest du unter modify-replication-task.
Speichergröße der Replikations-DB-Instance erhöhen
Wenn sich die Replikations-DB-Instance im Status storage-full befindet, kannst du keine Protokolle löschen. Du musst die Größe des zugewiesenen Speichers erhöhen oder die Replikationsaufgabe löschen. So erhöhst du die Speichergröße einer Replikations-DB-Instance:
- Öffne die AWS DMS-Konsole.
- Wähle im Navigationsbereich Replikations-Instances aus.
- Wähle den Namen der Replikations-DB-Instance aus, für die du die Volume-Größe ändern möchtest.
- Wähle Ändern aus.
- Gib für das Feld Zugewiesener Speicher (GB) einen neuen Wert ein.
- Wähle Änderungen sofort anwenden und anschließend Ändern aus.
Wichtig: Die zugewiesene Speichergröße kann nicht verringert werden, nachdem sie erhöht wurde.
Ähnliche Informationen
- Sprache
- Deutsch

Relevanter Inhalt
AWS OFFICIALAktualisiert vor einem Jahr
AWS OFFICIALAktualisiert vor 4 Jahren