ECS : La politique de cycle de vie de l’objet n’arrive pas à expiration des versions

Summary: Configuration utilisateur d’une politique de cycle de vie des objets avec l’option « Expiration » pour supprimer automatiquement les objets. Toutefois, le bucket étant donné que la gestion des versions est activée, les versions non actuelles ne sont pas supprimées. ...

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms


Remarque : Le problème ci-dessous ne s’applique pas aux buckets suspendus ou dont la gestion des versions est désactivée.

1. Dans un bucket activé pour les versions, une règle de cycle de vie est définie, comme dans l’exemple ci-dessous, pour faire expirer les objets. La politique a été configurée pour expirer et supprimer automatiquement les objets après un jour.

<?xml version="1.0" ?>
<LifecycleConfiguration xmlns="http://s3.companyaws.com/doc/2006-03-01/">
<Rule>
<ID>Expire Objects</ID>
<Prefix/>
<Status>Enabled</Status>
<Expiration>
<Days>1</Days>
</Expiration>
</Rule>
</LifecycleConfiguration>


2. Pour les objets pour lesquels aucune version n’a été créée, la politique d’expiration d’objet ci-dessus entraîne l’insertion d’un marqueur de suppression pour remplacer l’objet actuel. Ainsi, l’objet actuel devient une version non actuelle au lieu d’être supprimé

Exemple:
Avant que la règle ne soit respectée, il n’y a qu’un seul objet et c’est la dernière

[VERSION_ID]: 1558539564138 [IS_LATEST]: true  [MTIME]: 2019-05-22T15:39:24.138Z [SIZE]: 54270        [OBJECT]: sample.object


Une fois que la stratégie correspond (après 1 jour), l’expiration se produit, mais l’objet devient une version non active et un dmarker est inséré en tant que dernier objet. 
 

[VERSION_ID]: 1558539371262 [IS_LATEST]: false [MTIME]: 2019-05-22T15:36:11.262Z [SIZE]: 54270        [OBJECT]: sample.object        >>> original object becomes non current version
[VERSION_ID]: 1558539564138 [IS_LATEST]: true  [MTIME]: 2019-05-22T15:39:24.138Z [SIZE]: DMARKER      [OBJECT]: sample.object  >>> DMarker inserted as latest version.


Les utilisateurs attendent de cette politique que l’objet soit entièrement supprimé. 
 

Cause

Les attentes de l’exemple de règle mentionné dans la section précédente sont incorrectes pour la gestion des versions des buckets. Cela est toutefois vrai pour les buckets sans gestion des versions, car dans les buckets sans gestion des versions, l’objet expire immédiatement et est supprimé, ce qui rend irrécupérable.

En revanche, avec les buckets de gestion des versions, les protocoles S3 gèrent l’expiration des objets différemment, ils déplacent plutôt l’objet vers une version non active. Et ajoute un marqueur de suppression en tant qu’espace réservé. Avec les buckets de gestion des versions, la version de l’objet peut être restaurée, ce qui permet une récupération du délai de grâce en fonction des paramètres de la politique. Ce comportement est normal. 

Pour plus d’informations sur les règles de cycle de vie, la gestion des versions et l’expiration dans S3, reportez-vous à la section « Informations supplémentaires » au bas de cet article.

Resolution

Dans un bucket activé pour la version, il est préférable d’utiliser l’exemple de règle de cycle de vie ci-dessous. Ce qui entraîne l’expiration des versions non actives et supprime également les marqueurs (qui résultent d’une suppression directe vers un objet d’un bucket de gestion des versions). 


Exemple :

Dans cet exemple, S3 supprime les versions actuelles (objets) 60 jours après leur création en ajoutant un marqueur de suppression pour chacune des versions d’objet actuelles. Ce processus rend la version actuelle non active et le marqueur de suppression devient la version active.  

L’opérateur NoncurrentVersionExpiration action dans la même configuration de cycle de vie S3 supprime les objets non actifs 30 jours après qu’ils sont devenus non actifs. Ainsi, dans cet exemple, toutes les versions d’objets sont définitivement supprimées 90 jours après la création de l’objet. 

 

REMARQUE IMPORTANTE : Les règles de cycle de vie doivent être gérées avec soin. Spécifiez le nombre de jours et d’actions qui correspondent aux besoins de votre application. La règle ci-dessous n’est qu’un exemple. Elle fait expirer à la fois les dmarkers et les versions non actives, ce qui rend les suppressions irrécupérables. 

<LifecycleConfiguration>
    <Rule>
        ...
        <Expiration>
           <Days>60</Days>
        </Expiration>
        <NoncurrentVersionExpiration>     
            <NoncurrentDays>30</NoncurrentDays>    
        </NoncurrentVersionExpiration>
    </Rule>
</LifecycleConfiguration>

Additional Information


Vous trouverez plus d’informations sur le comportement des expirations de politiques dans les buckets versionnés et non versionnés ici ; 

Ce lien hypertexte renvoie à un site Web extérieur à Dell Technologies.https://docs.aws.amazon.com/AmazonS3/latest/userguide/lifecycle-expire-general-considerations.htmlhttps://docs.aws.amazon.com/AmazonS3/latest/userguide/intro-lifecycle-rules.html#intro-lifecycle-rules-actionsCe lien hypertexte renvoie à un site Web extérieur à Dell Technologies.
https://docs.aws.amazon.com/AmazonS3/latest/userguide/lifecycle-configuration-examples.html#lifecycle-config-conceptual-ex7
Ce lien hypertexte renvoie à un site Web extérieur à Dell Technologies.

Vous trouverez plus d’explications dans le guide d’accès aux données ECS, qui explique en détail comment définir une politique de cycle de vie 

https://dl.dell.com/content/manual53094723-ecs-3-8-x-data-access-guide.pdf   

 

Affected Products

ECS Appliance

Products

ECS Appliance, ECS Appliance Hardware Gen2 U-Series
Article Properties
Article Number: 000056935
Article Type: Solution
Last Modified: 14 Nov 2024
Version:  4
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.