Erstellen und Verwalten einer Lebenszyklus-Konfiguration mithilfe der AWS CLI und dem SDK for Java
Sie können S3 Lifecycle verwenden, um die Speicherkapazität für Amazon S3 on Outposts zu optimieren. Sie können Lebenszyklusregeln erstellen, um Objekte ablaufen zu lassen, wenn sie veralten oder durch neuere Versionen ersetzt werden. Sie können eine Lebenszyklusregel erstellen, aktivieren, deaktivieren oder löschen.
Weitere Informationen zum S3-Lebenszyklus finden Sie unter Erstellen und Verwalten einer Lebenszyklus-Konfiguration für Ihren Amazon-S3-on-Outposts-Bucket.
Das AWS-Konto, das den Bucket erstellt, besitzt ihn und ist das einzige, das eine Lebenszyklusregel erstellen, aktivieren, deaktivieren oder löschen kann.
Weitere Informationen zum Erstellen und Verwalten einer Lebenszyklus-Konfiguration für einen S3-on-Outposts-Bucket mithilfe der AWS Command Line Interface (AWS CLI) und von AWS SDK für Java finden Sie in den folgenden Beispielen.
PUT-Befehl für eine Lebenszyklus-Konfiguration
- AWS CLI
Im folgenden AWS CLI-Beispiel wird eine Lebenszyklus-Konfigurationsrichtlinie in einen Outposts-Bucket eingefügt. Diese Richtlinie gibt an, dass alle Objekte mit dem gekennzeichneten Präfix (myprefix) und Tags nach 10 Tagen ablaufen. Wenn Sie dieses Beispiel verwenden möchten, ersetzen Sie jeden user
input placeholder durch Ihre Informationen.
-
Speichern Sie die Richtlinie für die Lebenszyklus-Konfiguration in einer JSON-Datei. In diesem Beispiel heißt die Datei lifecycle1.json.
{
"Rules": [
{
"ID": "id-1",
"Filter": {
"And": {
"Prefix": "myprefix",
"Tags": [
{
"Value": "mytagvalue1",
"Key": "mytagkey1"
},
{
"Value": "mytagvalue2",
"Key": "mytagkey2"
}
],
"ObjectSizeGreaterThan": 1000,
"ObjectSizeLessThan": 5000
}
},
"Status": "Enabled",
"Expiration": {
"Days": 10
}
}
]
}
-
Senden Sie die JSON-Datei als Teil des CLI-Befehls put-bucket-lifecycle-configuration. Zum Verwenden dieses Befehls ersetzen Sie user input
placeholder durch Ihre eigenen Informationen. Weitere Informationen über diesen Befehl finden Sie unter put-bucket-lifecycle-configuration in der AWS CLI-Referenz.
aws s3control put-bucket-lifecycle-configuration --account-id 123456789012 --bucket arn:aws:s3-outposts:region:123456789012:outpost/op-01ac5d28a6a232904/bucket/example-outposts-bucket --lifecycle-configuration file://lifecycle1.json
- SDK for Java
-
Im folgenden SDK-für-Java-Beispiel wird eine Lebenszyklus-Konfiguration in einen Outposts-Bucket eingefügt. Diese Lebenszykluskonfiguration gibt an, dass alle Objekte mit dem gekennzeichneten Präfix (myprefix) und Tags nach 10 Tagen ablaufen. Wenn Sie dieses Beispiel verwenden möchten, ersetzen Sie jeden user
input placeholder durch Ihre Informationen. Weitere Informationen finden Sie unter PutBucketLifecycleConfiguration in der API-Referenz zu Amazon Simple Storage Service.
import com.amazonaws.services.s3control.model.*;
public void putBucketLifecycleConfiguration(String bucketArn) {
S3Tag tag1 = new S3Tag().withKey("mytagkey1").withValue("mytagkey1");
S3Tag tag2 = new S3Tag().withKey("mytagkey2").withValue("mytagkey2");
LifecycleRuleFilter lifecycleRuleFilter = new LifecycleRuleFilter()
.withAnd(new LifecycleRuleAndOperator()
.withPrefix("myprefix")
.withTags(tag1, tag2))
.withObjectSizeGreaterThan(1000)
.withObjectSizeLessThan(5000);
LifecycleExpiration lifecycleExpiration = new LifecycleExpiration()
.withExpiredObjectDeleteMarker(false)
.withDays(10);
LifecycleRule lifecycleRule = new LifecycleRule()
.withStatus("Enabled")
.withFilter(lifecycleRuleFilter)
.withExpiration(lifecycleExpiration)
.withID("id-1");
LifecycleConfiguration lifecycleConfiguration = new LifecycleConfiguration()
.withRules(lifecycleRule);
PutBucketLifecycleConfigurationRequest reqPutBucketLifecycle = new PutBucketLifecycleConfigurationRequest()
.withAccountId(AccountId)
.withBucket(bucketArn)
.withLifecycleConfiguration(lifecycleConfiguration);
PutBucketLifecycleConfigurationResult respPutBucketLifecycle = s3ControlClient.putBucketLifecycleConfiguration(reqPutBucketLifecycle);
System.out.printf("PutBucketLifecycleConfiguration Response: %s%n", respPutBucketLifecycle.toString());
}
GET-Befehl für eine Lebenszyklus-Konfiguration für einen S3-on-Outposts-Bucket
- AWS CLI
-
Im folgenden Beispiel AWS CLI wird eine Lebenszykluskonfiguration für einen Outposts-Bucket abgerufen. Zum Verwenden dieses Befehls ersetzen Sie user input
placeholder durch Ihre eigenen Informationen. Weitere Informationen über diesen Befehl finden Sie unter get-bucket-lifecycle-configuration in der AWS CLI-Referenz.
aws s3control get-bucket-lifecycle-configuration --account-id 123456789012 --bucket arn:aws:s3-outposts:<your-region>:123456789012:outpost/op-01ac5d28a6a232904/bucket/example-outposts-bucket
- SDK for Java
-
Das folgende SDK für Java-Beispiel ruft eine Lebenszykluskonfiguration für einen Outposts-Bucket ab. Weitere Informationen finden Sie unter GetBucketLifecycleConfiguration in der API-Referenz zu Amazon Simple Storage Service.
import com.amazonaws.services.s3control.model.*;
public void getBucketLifecycleConfiguration(String bucketArn) {
GetBucketLifecycleConfigurationRequest reqGetBucketLifecycle = new GetBucketLifecycleConfigurationRequest()
.withAccountId(AccountId)
.withBucket(bucketArn);
GetBucketLifecycleConfigurationResult respGetBucketLifecycle = s3ControlClient.getBucketLifecycleConfiguration(reqGetBucketLifecycle);
System.out.printf("GetBucketLifecycleConfiguration Response: %s%n", respGetBucketLifecycle.toString());
}