Creación y administración de una configuración de ciclo de vida mediante la AWS CLI y el SDK para Java
Puede usar el ciclo de vida de S3 para optimizar la capacidad de almacenamiento para Amazon S3 en Outposts. Puede crear reglas de ciclo de vida para hacer vencer los objetos a medida que envejecen o se sustituyan por versiones más recientes. Puede crear, habilitar, deshabilitar o eliminar una regla de ciclo de vida.
Para obtener más información acerca de S3 Lifecycle, consulte Creación y administración de una configuración de ciclo de vida para un bucket de Amazon S3 en Outposts.
La Cuenta de AWS que crea el bucket es su propietaria y la única que puede crear, habilitar, deshabilitar o eliminar una regla de ciclo de vida.
Para crear y administrar una configuración de ciclo de vida para un bucket de S3 en Outposts mediante AWS Command Line Interface (AWS CLI) y AWS SDK for Java, consulte los siguientes ejemplos.
Colocación de una configuración del ciclo de vida
- AWS CLI
En el siguiente ejemplo de AWS CLI, se aplica una política de configuración del ciclo de vida en un bucket de Outposts. Esta política especifica que todos los objetos que tienen el prefijo marcado (myprefix
) y las etiquetas vencen después de 10 días. Para utilizar este ejemplo, sustituya user
input placeholder
por su propia información.
-
Guarde la política de configuración del ciclo de vida en un archivo JSON. En este ejemplo, el archivo se denomina 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
}
}
]
}
-
Envíe el archivo JSON como parte del comando de la CLI put-bucket-lifecycle-configuration
. Para usar este comando, sustituya user input
placeholder
por su propia información. Para obtener más información acerca de este comando, consulte put-bucket-lifecycle-configuration en la Referencia de 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
-
En el siguiente ejemplo del SDK para Java, se aplica una configuración del ciclo de vida en un bucket de Outposts. Esta configuración de ciclo de vida especifica que todos los objetos que tienen el prefijo marcado (myprefix
) y las etiquetas vencen después de 10 días. Para utilizar este ejemplo, sustituya user
input placeholder
por su propia información. Para obtener más información, consulte PutBucketLifecycleConfiguration en la Referencia de la API de 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());
}
Obtención de la configuración de ciclo de vida en un bucket de S3 en Outposts
- AWS CLI
-
En el siguiente ejemplo de la AWS CLI, se obtiene una configuración del ciclo de vida en un bucket de Outposts. Para usar este comando, sustituya user input
placeholder
por su propia información. Para obtener más información acerca de este comando, consulte get-bucket-lifecycle-configuration en la Referencia de 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
-
En el siguiente ejemplo del SDK para Java, se obtiene una configuración del ciclo de vida para un bucket de Outposts. Para obtener más información, consulte GetBucketLifecycleConfiguration en la Referencia de la API de 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());
}