Verwalten Sie die Bucket-Versionierung in Object Storage
Zuletzt aktualisiert am
Durch die Bucket-Versionierung bleiben mehrere Versionen eines Objekts im selben Bucket erhalten. Wenn die Versionierung aktiviert ist, erstellt jeder Upload eine Version, anstatt das vorhandene Objekt zu überschreiben. Dies schützt vor versehentlichem Löschen und Datenbeschädigung.
Voraussetzungen
Abschnitt betitelt „Voraussetzungen“- Object Storage aktiviert und Anmeldeinformationen konfiguriert: Object Storage aktivieren
- AWS CLI oder s5cmd installiert und für STACKIT Object Storage konfiguriert
Versionierung aktivieren
Abschnitt betitelt „Versionierung aktivieren“aws --endpoint-url https://object.storage.eu01.onstackit.cloud s3api put-bucket-versioning \ --bucket $BUCKET_NAME \ --versioning-configuration Status=Enableds5cmd bucket-version --set Enabled s3://$BUCKET_NAMEVersionsstand abrufen
Abschnitt betitelt „Versionsstand abrufen“aws --endpoint-url https://object.storage.eu01.onstackit.cloud s3api get-bucket-versioning \ --bucket $BUCKET_NAMEBeispielausgabe bei aktivierter Versionierung:
{ "Status": "Enabled"}s5cmd bucket-version s3://$BUCKET_NAMEVersionierung aussetzen
Abschnitt betitelt „Versionierung aussetzen“Sobald die Versionierung für einen Bucket aktiviert wurde, kann sie nicht deaktiviert werden. Es kann nur ausgesetzt werden. Durch die angehaltene Versionierung wird die Erstellung von Versionen gestoppt, bestehende Versionen bleiben jedoch erhalten.
aws --endpoint-url https://object.storage.eu01.onstackit.cloud s3api put-bucket-versioning \ --bucket $BUCKET_NAME \ --versioning-configuration Status=Suspendeds5cmd bucket-version --set Suspended s3://$BUCKET_NAMEObjektversionen auflisten
Abschnitt betitelt „Objektversionen auflisten“Listen Sie alle Versionen aller Objekte in einem Bucket auf:
aws --endpoint-url https://object.storage.eu01.onstackit.cloud s3api list-object-versions \ --bucket $BUCKET_NAMEEach version has a unique VersionId. Example output:
{ "Versions": [ { "ETag": "1a6fcf50c1eafb9db3b1916c80131a8c", "Size": 56, "StorageClass": "STANDARD", "Key": "testfile.txt", "VersionId": "NDM0ODQ5NEEtQTU0OC0xMUVDLTkyNEItOTFFRTAwQkU0RTEw", "IsLatest": true, "LastModified": "2022-03-16T16:43:52.668000+00:00", "Owner": { "DisplayName": "f1ba3206-eaf2-4f1d-b01a-5679c5e82dfd", "ID": "88612969136594181457" } } ]}Listen Sie alle Versionen eines bestimmten Objekts auf:
s5cmd ls --all-versions s3://$BUCKET_NAME/$OBJECT_KEYListen Sie alle Versionen von Objekten mit einem Präfix auf:
s5cmd ls --all-versions "s3://$BUCKET_NAME/prefix*"Listen Sie alle Versionen aller Objekte in einem Bucket auf:
s5cmd ls --all-versions "s3://$BUCKET_NAME/*"Laden Sie eine bestimmte Objektversion herunter
Abschnitt betitelt „Laden Sie eine bestimmte Objektversion herunter“Download a specific version of an object by providing its VersionId:
aws --endpoint-url https://object.storage.eu01.onstackit.cloud s3api get-object \ --bucket $BUCKET_NAME \ --key $OBJECT_KEY \ --version-id $VERSION_ID \ output-filenames5cmd cp --version-id $VERSION_ID s3://$BUCKET_NAME/$OBJECT_KEY .Eine bestimmte Version löschen
Abschnitt betitelt „Eine bestimmte Version löschen“s5cmd rm --version-id $VERSION_ID s3://$BUCKET_NAME/$OBJECT_KEYAlle Versionen eines Objekts löschen
Abschnitt betitelt „Alle Versionen eines Objekts löschen“s5cmd rm --all-versions s3://$BUCKET_NAME/$OBJECT_KEYAusführliche Informationen zu den verfügbaren Befehlen finden Sie in der AWS CLI-Dokumentation oder der s5cmd-Dokumentation.