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
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">
```bash
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
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:
```bash
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

bash s5cmd rm --version-id $VERSION_ID s3://$BUCKET_NAME/$OBJECT_KEY

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.