Criar e gerenciar uma configuração de ciclo de vida usando a AWS CLI e o SDK para Java - Amazon Simple Storage Service

Criar e gerenciar uma configuração de ciclo de vida usando a AWS CLI e o SDK para Java

Você pode usar o Ciclo de Vida do S3 para otimizar a capacidade de armazenamento do Amazon S3 no Outposts. Você pode criar regras de ciclo de vida para expirar objetos à medida que envelhecem ou quando são substituídos por versões mais recentes. Você pode criar, habilitar, desabilitar e excluir uma regra de ciclo de vida.

Para obter mais informações sobre o ciclo de vida do S3, consulte Gerenciando seu ciclo de vida de armazenamento.

nota

A Conta da AWS que cria o bucket tem propriedade sobre ele e é a única que pode criar, habilitar, desabilitar e excluir uma regra de ciclo de vida.

Para criar e gerenciar uma configuração de ciclo de vida de um bucket do S3 on Outposts usando a AWS Command Line Interface (AWS CLI) e o AWS SDK for Java, consulte os exemplos a seguir.

Executar PUT em uma configuração de ciclo de vida

AWS CLI

O exemplo a seguir da AWS CLI coloca uma política de configuração de ciclo de vida em um bucket do Outposts. Essa política especifica que todos os objetos que têm o prefixo sinalizado (myprefix) e tags expiram após dez dias. Para usar esse exemplo, substitua cada user input placeholder por suas próprias informações.

  1. Salve a política da configuração do ciclo de vida em um arquivo JSON. Neste exemplo, o nome do arquivo é 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. Envie o arquivo JSON como parte do comando put-bucket-lifecycle-configuration da CLI. Para usar esse comando, substitua cada user input placeholder por suas próprias informações. Para obter mais informações sobre esse comando, consulte put-bucket-lifecycle-configuration na Referência da AWS CLI.

    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

O exemplo a seguir do SDK para Java coloca uma configuração de ciclo de vida em um bucket do Outposts. Essa configuração de ciclo de vida especifica que todos os objetos que têm o prefixo sinalizado (myprefix) e tags expiram após dez dias. Para usar esse exemplo, substitua cada user input placeholder por suas próprias informações. Para obter mais informações, consulte PutBucketLifecycleConfiguration na Referência da API do 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()); }

Executar GET na configuração de ciclo de vida em um bucket do S3 on Outposts

AWS CLI

O seguinte exemplo da AWS CLI obtém uma configuração de ciclo de vida em um bucket do Outposts. Para usar esse comando, substitua cada user input placeholder por suas próprias informações. Para obter mais informações sobre esse comando, consulte get-bucket-lifecycle-configuration na Referência da AWS CLI.

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

O exemplo a seguir do SDK para Java obtém uma configuração de ciclo de vida de um bucket do Outposts. Para obter mais informações, consulte GetBucketLifecycleConfiguration na Referência da API do 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()); }