Création et gestion d'une configuration de cycle de vie à l'aide de l’AWS CLI et du SDK pour Java - Amazon S3 sur Outposts

Création et gestion d'une configuration de cycle de vie à l'aide de l’AWS CLI et du SDK pour Java

Vous pouvez utiliser S3 Lifecycle pour optimiser la capacité de stockage d'Amazon S3 sur Outposts. Vous pouvez créer des règles de cycle de vie pour faire expirer les objets quand ils vieillissent ou sont remplacés par des versions plus récentes. Vous pouvez créer, activer, désactiver ou supprimer une règle de cycle de vie.

Pour plus d'informations sur le cycle de vie S3, consultez Création et gestion d'une configuration de cycle de vie pour votre compartiment Amazon S3 on Outposts.

Note

Le Compte AWS qui crée le compartiment en est le propriétaire et lui seul peut créer, activer, désactiver ou supprimer une règle de cycle de vie.

Pour créer et gérer une configuration de cycle de vie pour un compartiment S3 sur Outposts à l'aide de AWS Command Line Interface (AWS CLI) et AWS SDK pour Java, consultez les exemples suivants.

Exécution d'une commande de configuration PUT

AWS CLI

L'exemple d'utilisation de la AWS CLI suivant place une stratégie de configuration du cycle de vie sur un compartiment Outposts. Cette stratégie spécifie que tous les objets dont le préfixe est labelisé (myprefix), ainsi que les balises, expirent après 10 jours. Pour utiliser cet exemple, remplacez chaque user input placeholder par vos propres informations.

  1. Enregistrez la stratégie de configuration du cycle de vie dans un fichier JSON. Dans cet exemple, le fichier est nommé 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 } } ] }
  2. Envoyez le fichier JSON en tant que partie de la commande CLI put-bucket-lifecycle-configuration. Pour utiliser cette commande, remplacez chaque user input placeholder par vos propres informations. Pour de plus amples informations sur cette commande, consultez put-bucket-lifecycle-configuration dans le document AWS CLI Reference.

    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

L'exemple d'utilisation de SDK pour Java suivant place une configuration de cycle de vie sur un compartiment Outposts. Cette configuration de cycle de vie spécifie que tous les objets dont le préfixe est labelisé (myprefix), ainsi que les balises, expirent après 10 jours. Pour utiliser cet exemple, remplacez chaque user input placeholder par vos propres informations. Pour de plus amples informations, veuillez consulter PutBucketLifecycleConfiguration dans le document Amazon Simple Storage Service API Reference.

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()); }

Exécution d'une commande de configuration de cycle de vie GET pour un compartiment S3 on Outposts

AWS CLI

L'exemple d'utilisation de la AWS CLI suivant obtient une configuration de cycle de vie pour un compartiment Outposts. Pour utiliser cette commande, remplacez chaque user input placeholder par vos propres informations. Pour de plus amples informations sur cette commande, consultez get-bucket-lifecycle-configuration dans le document AWS CLI Reference.

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

L'exemple d'utilisation de SDK pour Java suivant obtient une configuration de cycle de vie pour un compartiment Outposts. Pour de plus amples informations, veuillez consulter GetBucketLifecycleConfiguration dans le document Amazon Simple Storage Service API Reference.

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()); }