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“put-bucket-versioning \ --bucket $BUCKET_NAME \ --versioning-configuration Status=Enabled ```</TabItem><TabItem label="s5cmd">```bash s5cmd bucket-version --set Enabled s3://$BUCKET_NAME ```</TabItem></Tabs>
## Versionsstatus abrufen
<Tabs syncKey="cli-tool"><TabItem label="AWS CLI">```bashaws --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.
put-bucket-versioning \ --bucket $BUCKET_NAME \ --versioning-configuration Status=Suspended ```</TabItem><TabItem label="s5cmd">```bash s5cmd bucket-version --set Suspended s3://$BUCKET_NAME ```</TabItem></Tabs>
## Objektversionen auflisten
<Tabs syncKey="cli-tool"><TabItem label="AWS CLI">Listen Sie alle Versionen aller Objekte in einem Bucket auf:
```bashaws --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“bash s5cmd rm --version-id $VERSION_ID s3://$BUCKET_NAME/$OBJECT_KEY
Alle Versionen eines Objekts löschen
Abschnitt betitelt „Alle Versionen eines Objekts löschen“bash s5cmd rm --all-versions s3://$BUCKET_NAME/$OBJECT_KEY Ausführliche Informationen zu den verfügbaren Befehlen finden Sie in der AWS CLI-Dokumentation oder der s5cmd-Dokumentation.