ECS: Policy del ciclo di vita dell'oggetto non in scadenza Versioni diverse

Summary: Policy del ciclo di vita dell'oggetto configurata dall'utente con l'opzione "Expiration" per eliminare automaticamente gli oggetti. Tuttavia, poiché il bucket ha abilitato il controllo delle versioni, le versioni non correnti non vengono eliminate. ...

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


Nota: Il problema riportato di seguito non si applica ai bucket sospesi o disabilitati per il controllo delle versioni.

1. In un bucket abilitato per la versione, viene impostata una policy del ciclo di vita come nell'esempio riportato di seguito per far scadere gli oggetti. La policy è stata configurata in modo da scadere automaticamente ed eliminare gli oggetti dopo 1 giorno.

<?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. Per gli oggetti per i quali non sono mai state create versioni, la policy di scadenza dell'oggetto precedente comporta l'inserimento di un'indicatore di eliminazione per sostituire l'oggetto corrente. E quindi l'oggetto corrente diventa una versione non corrente invece di essere eliminato

Esempio:
Prima che la policy venga soddisfatta, c è un oggetto ed è la più recente

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


Dopo la corrispondenza della policy (dopo 1 giorno), si verifica la scadenza, ma l'oggetto si trasforma in una versione non corrente e viene inserito un dmarker come oggetto più recente. 
 

[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.


Gli utenti che si aspettano da questo criterio vedano l'oggetto completamente eliminato. 
 

Cause

L'aspettativa dall'esempio di policy menzionato nella sezione precedente è errata per i bucket di controllo delle versioni. Ciò vale tuttavia per i bucket senza controllo delle versioni, in quanto nei bucket senza controllo delle versioni l'oggetto scade immediatamente e viene eliminato diventando irrecuperabile.

Al contrario, con i bucket di controllo delle versioni il protocollo S3 gestisce la scadenza degli oggetti in modo diverso, spostando invece l'oggetto in una versione non corrente. E aggiunge un indicatore di eliminazione come segnaposto. Con i bucket di controllo delle versioni, è possibile ripristinare la versione dell'oggetto, il che consente un ripristino del periodo di tolleranza a seconda delle impostazioni della policy. Si tratta di un comportamento previsto. 

Per ulteriori dettagli sulle policy del ciclo di vita, sul controllo delle versioni e sulla scadenza in S3, consulta il riferimento nella sezione "informazioni aggiuntive" alla fine di questo articolo.

Resolution

In un bucket abilitato per la versione, è preferibile utilizzare l'esempio di policy del ciclo di vita riportato di seguito. Che invece fa scadere le versioni non correnti ed elimina anche gli indicatori (che sono il risultato di un'eliminazione diretta a un oggetto in un bucket di controllo delle versioni). 


Esempio:

In questo esempio, S3 rimuove le versioni correnti (oggetti) 60 giorni dopo la loro creazione, aggiungendo un'indicatore di eliminazione per ciascuna delle versioni correnti degli oggetti. Questo processo rende la versione corrente non corrente e l'indicatore di eliminazione diventa la versione corrente.  

Il comando NoncurrentVersionExpiration nella stessa configurazione del ciclo di vita S3 rimuove gli oggetti non correnti 30 giorni dopo che sono diventati non correnti. Pertanto, in questo esempio, tutte le versioni dell'oggetto vengono rimosse definitivamente 90 giorni dopo la creazione dell'oggetto. 

 

NOTA IMPORTANTE: Le policy del ciclo di vita devono essere gestite con attenzione, specificando il numero di giorni e le azioni che corrispondono alle esigenze delle applicazioni. Il criterio riportato di seguito è solo un esempio, fa scadere sia i dmarker che le versioni non correnti che rendono irrecuperabili le eliminazioni. 

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

Additional Information


Ulteriori dettagli sul comportamento delle scadenze delle policy nei bucket con e senza versioni sono disponibili qui. 

Questo link ipertestuale indirizza a un sito web esterno a 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-actionsQuesto link ipertestuale indirizza a un sito web esterno a Dell Technologies.
https://docs.aws.amazon.com/AmazonS3/latest/userguide/lifecycle-configuration-examples.html#lifecycle-config-conceptual-ex7
Questo link ipertestuale indirizza a un sito web esterno a Dell Technologies.

Ulteriori spiegazioni sono disponibili anche nella Guida all'accesso ai dati di ECS con dettagli su come impostare la policy del ciclo di vita 

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.