Einführung
Ein Team bewahrt temporäre Exporte neunzig Tage lang auf, während dauerhafte Datensätze im selben Bucket außerhalb dieser Richtlinie bleiben müssen. Du konfigurierst und untersuchst eine begrenzte Lebenszyklusregel und entfernst anschließend die Übungsressourcen.
Schließe zuerst Dokumente mit Schlüsseln und Metadaten organisieren ab, um Präfixe, Eigenschaften, Downloads und Bereinigung kennenzulernen. Die CLI-Verbindung, der Bucket, der Export und der dauerhafte Datensatz sind in dieser neuen VM vorbereitet. Verwende Terminal und den Tab AWS View daneben. Du prüfst die gespeicherte Konfiguration, statt auf zukünftige altersabhängige Aktionen zu warten.
Bezug zu Zertifizierungen
Dieses Lab bietet praktische Übungen zu den folgenden Prüfungsthemen.
- Cloud Practitioner (CLF-C02) · Aufgabe 3.6: S3-Speicherklassen und gezielte Lebenszykluskonfiguration.
- Solutions Architect – Associate (SAA-C03) · Aufgabe 4.1: S3-Speicherklassen und gezielte Lebenszykluskonfiguration.
- Developer – Associate (DVA-C02) · Aufgabe 1.3: S3-Speicherklassen und gezielte Lebenszykluskonfiguration.
- CloudOps Engineer – Associate (SOA-C03) · Aufgabe 1.3: S3-Speicherklassen und gezielte Lebenszykluskonfiguration.
- Security – Specialty (SCS-C03) · Aufgabe 5.2: Grundlagenübung: S3-Speicherklassen und gezielte Lebenszykluskonfiguration.
- Data Engineer – Associate (DEA-C01) · Aufgabe 2.3: Grundlagenübung: S3-Speicherklassen und gezielte Lebenszykluskonfiguration.
Untersuche temporäre und dauerhafte Daten
In diesem Schritt identifizierst du den vorgesehenen Umfang der Richtlinie und untersuchst den dauerhaften Datensatz, der ausgeschlossen bleiben muss.
Eine Lebenszyklusregel legt fest, welche Objekte verwaltet werden und was mit zunehmendem Alter geschieht. Ein Übergang ändert die Speicherklasse; Ablauf entfernt dafür geeignete gespeicherte Objekte. Keine dieser Aktionen verändert eine lokale Datei. Identifiziere zuerst, welche gespeicherten Schlüssel in diese Regel gehören.
Wechsle mit cd, das das Verzeichnis ändert, in den Arbeitsbereich:
cd /home/labex/project
Liste den vorbereiteten Bucket rekursiv auf, damit du vollständige Objektschlüssel einschließlich der Präfixe siehst:
aws s3 ls s3://labex-export-retention/ --recursive
Es gibt zwei Schlüssel: exports/monthly.csv und records/retention-policy.txt. Der Export ist größer als 128 KB; der dauerhafte Datensatz ist eine kleine Textdatei. Ein Präfix ist der Anfang eines Objektschlüssels und kein echtes Verzeichnis. Eine auf exports/ gefilterte Regel erfasst den Export, schließt aber records/retention-policy.txt aus.
Lade den dauerhaften Datensatz mit cp herunter und untersuche anschließend seine Bytes mit cat:
aws s3 cp s3://labex-export-retention/records/retention-policy.txt permanent-record.txt
cat permanent-record.txt
Permanent record: retain until approved removal.
Klappe records/retention-policy.txt in AWS View auf, um denselben gespeicherten Text zu sehen. Du vergleichst diesen Datensatz nach der Konfiguration der Regel. Eine Lebenszyklusrichtlinie sollte unbeteiligte Daten nicht versehentlich ablaufen lassen, nur weil sie sich einen Bucket teilen.
Schreibe und übernimm eine begrenzte Lebenszyklusregel
In diesem Schritt speicherst du eine Lebenszyklusregel, die die Aufbewahrungsanforderungen des Teams beschreibt.
S3 Standard ist die Standardklasse für häufig abgerufene Daten. S3 Standard-IA (infrequent access, seltener Zugriff) erhält den sofortigen Abruf, berechnet aber Abrufgebühren und hat eine Mindestspeicherdauer von dreißig Tagen. Hier werden Exporte nach dreißig Tagen seltener abgerufen und bis Tag neunzig aufbewahrt, verbringen also sechzig Tage in Standard-IA. Objekte kleiner als 128 KB werden vom standardmäßigen Lebenszyklusverhalten nicht überführt; der vorbereitete Export ist größer als dieser Grenzwert. Dies sind Auswahlüberlegungen und kein Versprechen bestimmter Einsparungen.
Ablauf nach neunzig Tagen ist für entbehrliche Exporte geeignet, nicht für dauerhafte Datensätze. Bei diesem Bucket ist die Versionierung ausgeschaltet; der Ablauf kann geeignete Objekte dauerhaft entfernen. In einem versionierten Bucket haben der Ablauf aktueller Versionen und das Löschen nicht aktueller Versionen unterschiedliche Auswirkungen und erfordern separat betrachtete Aktionen.
Schematische Darstellung: Die Regel gilt für exports/. Tagesschwellen beschreiben die Eignung; sie garantieren keine Ausführung zu einem genauen Zeitpunkt.

JSON beschreibt die Konfiguration mit Objekten ({}), Arrays ([]), Feldnamen in Anführungszeichen, Zeichenfolgen und numerischen Tageswerten. Das Array Rules enthält die vollständige Bucket-Richtlinie. ID benennt die Regel, Status aktiviert sie und Filter.Prefix begrenzt ihren Umfang. Transitions und Expiration legen die zwei Aktionen fest.
Das cat > lifecycle.json <<'JSON' der Shell schreibt die folgenden Zeilen bis zum abschließenden JSON in eine Datei. Dies ist ein Here-Dokument; das Trennwort in Anführungszeichen hält den Inhalt wörtlich. Kopiere den vollständigen Block einschließlich seines abschließenden Trennworts:
cat > lifecycle.json <<'JSON'
{
"Rules": [
{
"ID": "temporary-export-retention",
"Status": "Enabled",
"Filter": {"Prefix": "exports/"},
"Transitions": [{"Days": 30, "StorageClass": "STANDARD_IA"}],
"Expiration": {"Days": 90}
}
]
}
JSON
Prüfe die Datei, bevor du sie übernimmst:
cat lifecycle.json
Bestätige, dass das Präfix exports/ lautet, mit seinem abschließenden Schrägstrich. Ein leeres Präfix würde alle Objekte im Bucket erfassen, einschließlich des dauerhaften Datensatzes.
aws s3api stellt einzelne S3-API-Operationen bereit. put-bucket-lifecycle-configuration schreibt die Konfiguration; --bucket wählt den Bucket aus und file://lifecycle.json veranlasst die CLI, ihr JSON-Argument aus deiner lokalen Datei zu lesen. Diese Operation ersetzt die gesamte Lebenszykluskonfiguration des Buckets; nimm beim Aktualisieren einer vorhandenen Konfiguration alle Regeln auf, die du behalten möchtest. Diese Übung beginnt ohne eine solche Konfiguration:
aws s3api put-bucket-lifecycle-configuration --bucket labex-export-retention --lifecycle-configuration file://lifecycle.json
Ein erfolgreicher Befehl gibt keinen Antwortinhalt aus. Untersuche als Nächstes, was der Dienst tatsächlich gespeichert hat, statt dich allein auf deine lokale Datei zu verlassen.
Prüfe die gespeicherte Richtlinie und den unveränderten Datensatz
In diesem Schritt liest du die Richtlinie aus S3 zurück und bestätigst, dass sowohl neue Daten als auch der ausgeschlossene dauerhafte Datensatz weiterhin zugänglich sind.
Rufe die Lebenszykluskonfiguration des Buckets ab:
aws s3api get-bucket-lifecycle-configuration --bucket labex-export-retention
Das Array Rules der Antwort enthält eine Enabled-Regel: Präfix exports/, Übergang zu STANDARD_IA nach dreißig Tagen und Ablauf nach neunzig Tagen. Der Dienst kann zusätzliche Antwortfelder enthalten; vergleiche die Regelfelder mit der Anforderung. Diese Antwort ist ein maßgeblicher Konfigurationsnachweis, während eine lokale JSON-Datei allein nicht zeigt, dass eine Regel übernommen wurde.
AWS View zeigt dieselbe gespeicherte Regel über den Objekten. Es zeigt keinen abgeschlossenen Übergang und keine abgeschlossene Löschung: Diese Schwellen liegen in der Zukunft.

Dieses Beispiel zeigt die gespeicherte Konfiguration und die aktuellen Bytes des Datensatzes. Es stellt keine abgeschlossene altersabhängige Aktion dar.
head-object liest die Eigenschaften eines Objekts, ohne seinen Inhalt herunterzuladen. Untersuche den neu erstellten Export:
aws s3api head-object --bucket labex-export-retention --key exports/monthly.csv
Seine ContentLength ist größer als 131072 Bytes. Er bleibt heute in Standard; das Feld StorageClass kann für diese Standardklasse fehlen. Die Regel schreibt die Speicherklasse eines neuen Objekts nicht sofort um, nur weil du sie aktiviert hast. Die geplante Verarbeitung erfolgt nach Erreichen der Eignung asynchron und ist kein Countdown ab der Ausführung dieses Befehls.
Lade den ausgeschlossenen dauerhaften Datensatz erneut herunter:
aws s3 cp s3://labex-export-retention/records/retention-policy.txt permanent-record-after.txt
cmp vergleicht Dateien Byte für Byte. && gibt eine Meldung nur aus, wenn der Vergleich erfolgreich ist:
cmp permanent-record.txt permanent-record-after.txt && echo 'Permanent record unchanged'
Die Meldung bestätigt, dass sein Inhalt intakt bleibt. Beide Schlüssel erscheinen weiterhin im Bucket:
aws s3 ls s3://labex-export-retention/ --recursive
Das gespeicherte Präfix belegt, dass der dauerhafte Datensatz außerhalb dieser Regel liegt. Seine fortdauernde Anwesenheit heute bestätigt auch, dass du ihn bei der Richtlinienkonfiguration nicht versehentlich gelöscht oder überschrieben hast; sie allein beweist kein zukünftiges Verhalten der geplanten Verarbeitung.
Entferne die Richtlinie und Übungsressourcen
In diesem Schritt entfernst du die gespeicherte Richtlinie und löschst anschließend die Objekte und den Bucket dieses Labs, ohne auf zukünftigen Ablauf zu warten.
Das Entfernen einer Lebenszykluskonfiguration beendet die Anwendung dieser Richtlinie auf den Bucket; es entfernt nicht selbst seine Objekte. Lösche die Richtlinie mit der einzelnen API-Operation:
aws s3api delete-bucket-lifecycle --bucket labex-export-retention
Prüfe, dass sie nicht mehr konfiguriert ist:
aws s3api get-bucket-lifecycle-configuration --bucket labex-export-retention
Dieser Befehl soll fehlschlagen, mit NoSuchLifecycleConfiguration. Der Bucket existiert weiterhin, aber seine Lebenszyklusrichtlinie nicht. AWS View entfernt die Regelzusammenfassung und erhält beide Objekte.
Der dauerhafte Datensatz war vom automatischen Ablauf ausgeschlossen. Jetzt entfernst du ihn bewusst als Teil der Bereinigung dieser entbehrlichen Übung anhand seines genauen Schlüssels. Entferne zuerst den temporären Export:
aws s3 rm s3://labex-export-retention/exports/monthly.csv
aws s3 rm s3://labex-export-retention/records/retention-policy.txt
Bestätige, dass die erfolgreiche Liste keine Objektzeilen enthält:
aws s3 ls s3://labex-export-retention/ --recursive
Entferne den leeren Bucket mit rb und bestätige dann, dass der Speicher weiterhin antwortet:
aws s3 rb s3://labex-export-retention
aws s3 ls
Die remove_bucket-Meldung nennt den Bucket dieser Übung; die abschließende Liste hat keine Buckets und AWS View zeigt No buckets. Deine lokale Richtlinie und Datensatzkopien bleiben zur Prüfung erhalten. Du hast eine zukünftige Aufbewahrungsrichtlinie konfiguriert und die Übungsressourcen ausdrücklich entfernt; dies sind getrennte Operationen.
Zusammenfassung
Du hast Anforderungen an temporäre Daten in eine eng begrenzte S3-Lebenszyklusregel übertragen, eine Speicherklasse unter Berücksichtigung von Zugriff und Mindestdauer ausgewählt und den Ablauf konfiguriert. Du hast die Regel aus S3 zurückgelesen und bestätigt, dass der dauerhafte Datensatz außerhalb ihres Präfixes und unverändert blieb.
Konfigurationsnachweise unterscheiden sich von zukünftiger geplanter Ausführung. Zum Abschluss hast du die Richtlinie entfernt und die Speicherressourcen des Labs ausdrücklich gelöscht, ohne auf altersabhängige Aktionen zu warten.



