Zum Inhalt springen

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.

  • Object Storage aktiviert und Anmeldeinformationen konfiguriert: Object Storage aktivieren
  • AWS CLI oder s5cmd installiert und für STACKIT Object Storage konfiguriert
Terminal-Fenster
aws --endpoint-url https://object.storage.eu01.onstackit.cloud s3api put-bucket-versioning \
--bucket $BUCKET_NAME \
--versioning-configuration Status=Enabled
Terminal-Fenster
aws --endpoint-url https://object.storage.eu01.onstackit.cloud s3api get-bucket-versioning \
--bucket $BUCKET_NAME

Beispielausgabe bei aktivierter Versionierung:

{
"Status": "Enabled"
}

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.

Terminal-Fenster
aws --endpoint-url https://object.storage.eu01.onstackit.cloud s3api put-bucket-versioning \
--bucket $BUCKET_NAME \
--versioning-configuration Status=Suspended

Listen Sie alle Versionen aller Objekte in einem Bucket auf:

Terminal-Fenster
aws --endpoint-url https://object.storage.eu01.onstackit.cloud s3api list-object-versions \
--bucket $BUCKET_NAME

Each 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"
}
}
]
}

Download a specific version of an object by providing its VersionId:

Terminal-Fenster
aws --endpoint-url https://object.storage.eu01.onstackit.cloud s3api get-object \
--bucket $BUCKET_NAME \
--key $OBJECT_KEY \
--version-id $VERSION_ID \
output-filename
Terminal-Fenster
s5cmd rm --version-id $VERSION_ID s3://$BUCKET_NAME/$OBJECT_KEY
Terminal-Fenster
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.