AWS Builder Center: Learn, Build and Connect with builders in the AWS community
AWS Builder Center is the official home for builders on AWS. Share and read what others are working on, follow people who inspire you, explore training and workshops, and find tools to support what you're building.
Warum funktioniert die Lebenszyklusregel in meinem Amazon-S3-Bucket nicht, obwohl ich sie vor mehr als einem Tag angewendet habe?
Ich habe eine Lebenszykluskonfigurationsregel für meinen Amazon Simple Storage Service (Amazon S3)-Bucket eingerichtet. Sie überführt Objekte in eine andere Speicherklasse oder läuft ab oder löscht Objekte. Die Objekte haben sich jedoch nicht gemäß der Regel geändert. Ich muss mich vergewissern, dass die Regel zur Kostenkontrolle oder zur Einhaltung der Vorschriften funktioniert.
Kurzbeschreibung
Eine Amazon-S3-Lebenszyklusaktion ist asynchron. Asynchrone Aktionen können das Entfernen eines Objekts nach dem Ablauf- oder Übergangsdatum in einer Lebenszykluskonfigurationsregel verzögern. Nachdem du jedoch die Bedingungen der Lebenszyklusregel erfüllt hast, ändert AWS die Abrechnung, auch wenn die Aktion noch nicht abgeschlossen ist.
Die Amazon-S3-Lebenszyklusregeln werden nur einmal täglich ausgeführt. Außerdem rundet Amazon S3 das Übertragungs- oder Ablaufdatum eines Objekts auf Mitternacht UTC des nächsten Tages auf. Bevor du überprüfst, ob eine Lebenszyklusregel vollständig ist, stelle sicher, dass genügend Zeit verstrichen ist. Wenn genügend Zeit verstrichen ist und die Lebenszyklusregel nicht vollständig ist, überprüfe, ob du den Präfixfilter für Objekte in der Lebenszyklusregel korrekt eingerichtet hast.
Präfixfilter bestimmen die Objekte, auf die sich die Lebenszyklusregel auswirkt. Wenn du beispielsweise einen Präfixfilter als images/ angibst, gilt die Lebenszyklusregel nur für Objekte unter dem Präfix images/.
Hinweis: Achte darauf, das Zeichen / am Ende des Präfixfilters anzugeben. Wenn du das Zeichen / am Anfang des Präfixfilters angibst, wird Amazon S3 die Lebenszyklusregel nicht korrekt auswerten.
Lösung
Hinweis: Wenn du beim Ausführen von AWS Command Line Interface (AWS CLI)-Befehlen Fehlermeldungen erhältst, findest du weitere Informationen dazu unter Problembehandlung bei der AWS CLI. Stelle außerdem sicher, dass du die neueste Version der AWS CLI verwendest.
Du kannst die HeadObject-API, die AWS Command Line Interface (AWS CLI) oder die Amazon-S3-Konsole verwenden, um zu erfahren, wann eine aktuelle Version eines Objekts ablaufen soll.
Hinweis: Der Header ist nur für aktuelle Objektversionen verfügbar, nicht für nicht aktuelle Objekte oder Löschmarkierungen. Wenn du Versionen anforderst oder anzeigst, gibt Amazon S3 keine Headobject-Antwort zurück. Wenn du eine Headobject-Anfrage mit der AWS CLI oder AWS API sendest, nimm die VersionID nicht in die Anfrage auf. Wenn du die Konsole verwendest, solltest du Versionen anzeigen nicht aktivieren.
Hinweis: Es gibt keinen speziellen Antwort-Header, um das Übergangsdatum für Objekte zu überprüfen, die für Übergänge in Frage kommen.
Verwendung der AWS CLI
Führe den folgenden AWS-CLI-Befehl head-object aus, um zu erfahren, wann das Objekt abläuft:
aws s3api head-object --bucket bucketname --key file.txt
Hinweis: Ersetze bucketname durch den Namen deines Buckets und ersetze file.txt durch deinen Schlüsselwert.
Beispielausgabe:
{ "AcceptRanges": "bytes", "Expiration": "expiry-date=\"Wed, 15 Mar 2023 00:00:00 GMT\", rule-id=\"MyExpirationRule\"", "LastModified": "2023-02-22T17:20:34+00:00", "ContentLength": 6, "ETag": "\"edae42exa0d2b93b123346740107dacf\"", "VersionId": "SoshCRUrlabc1v4ZzYEA123PvWcaeF6F", "ContentType": "text/plain", "ServerSideEncryption": "AES256", "Metadata": {} }
Der Antwort-Header Ablauf enthält expiry-date und rule-id. Das Feld expiry-date zeigt das Datum an, an dem Amazon S3 das Objekt zur Entfernung in die Warteschlange stellt und das Objekt asynchron entfernt. Das Feld rule-id zeigt die Lebenszyklusregel an, die du auf das Objekt angewendet hast.
Verwenden der Amazon-S3-Konsole
Gehe wie folgt vor:
- Öffne die Amazon-S3-Konsole.
- Wähle in der Buckets-Liste den Namen deines Buckets aus.
- Wähle den Namen des Objekts aus, das du überprüfen möchtest.
- Wähle die Registerkarte Eigenschaften.
- Überprüfe im Bereich Übersicht über die Objektverwaltung unter Verwaltungskonfigurationen die Felder Ablaufregel und Ablaufdatum.
Das Feld Ablaufdatum gibt das Datum an, an dem Amazon S3 das Objekt zur Entfernung in die Warteschlange stellt und asynchron entfernt. Das Feld Ablaufregel gibt die Lebenszyklusregel an, die auf das Objekt angewendet wird.
Hinweis: Nur Objekte der aktuellen Version geben den Antwort-Header Läuft ab für HEAD- oder GET-Anfragen zurück. Frühere Versionen und Löschmarkierungen geben den Antwort-Header nicht zurück. Außerdem gibt es keinen speziellen Antwort-Header, um das Übergangsdatum für Objekte zu überprüfen, die für Übergänge in Frage kommen.
Ähnliche Informationen
Einrichten der S3-Lebenszykluskonfiguration für einen Bucket
Wie überwache ich die von meinen Lebenszyklusregeln ergriffenen Aktionen?
- Themen
- Storage
- Sprache
- Deutsch
