ECS. Срок действия политики жизненного цикла объектов не истекает

Summary: Настроенная пользователем политика жизненного цикла объектов с параметром «Expiration» для автоматического удаления объектов. Но так как в контейнере включено управление версиями, устаревшие версии не удаляются. ...

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


Примечание. Описанная ниже проблема не относится к контейнерам с приостановленным или отключенным управлением версиями.

1. В контейнере с поддержкой версий задается политика жизненного цикла, как показано в примере ниже, чтобы завершить срок действия объектов. Политика была настроена на автоматическое истечение срока действия и удаление объектов через 1 день.

<?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. Для объектов, версии которых никогда не создавались, приведенная выше политика истечения срока действия объекта приводит к тому, что вместо текущего объекта вставляется маркер удаления. Таким образом, текущий объект становится нетекущей версией, а не удаляется

Пример:
Перед выполнением политики существует один объект, который является последним

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


После совпадения политики (через 1 день) происходит истечение срока действия, но объект превращается в нетекущую версию, а маркер dmarker вставляется как последний объект. 
 

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


Пользователи, ожидающие от этой политики увидеть объект, будут полностью удалены. 
 

Cause

Ожидание из примера политики, упомянутого в предыдущем разделе, неверно для контейнеров управления версиями. Однако это верно для контейнеров без управления версиями, так как в контейнерах без управления версиями объект немедленно истекает и удаляется, становясь невосстановимым.

В отличие от контейнеров управления версиями, протоколы S3 обрабатывают срок действия объектов по-другому, вместо этого они перемещают объект в неактуальную версию. И добавляет маркер удаления в качестве заполнителя. С помощью контейнеров управления версиями версию объекта можно восстановить, что позволяет восстановить в течение льготного периода восстановления в зависимости от параметров политики. Такое поведение является ожидаемым. 

Дополнительные сведения о политиках жизненного цикла, версиях и сроках действия в S3 см. в разделе «Дополнительная информация» в нижней части этой статьи.

Resolution

В контейнере с включенной версией лучше использовать приведенный ниже пример политики жизненного цикла. Вместо этого истекает срок действия нетекущих версий, а также удаляются маркеры (которые являются результатом прямого удаления объекта в контейнере управления версиями). 


Пример.

В этом примере S3 удаляет текущие версии (объекты) через 60 дней после их создания, добавляя маркер удаления для каждой из текущих версий объекта. В результате текущий процесс делает текущую версию неактуальной, а маркер удаления становится текущей версией.  

Оператор NoncurrentVersionExpiration в той же конфигурации жизненного цикла S3 удаляет нетекущие объекты через 30 дней после того, как они становятся неактуальными. Таким образом, в данном примере все версии объектов окончательно удаляются через 90 дней после его создания. 

 

ВАЖНОЕ ПРИМЕЧАНИЕ : С политиками жизненного цикла следует обращаться осторожно, указывайте количество дней и действия, соответствующие потребностям приложения. Приведенная ниже политика является только примером, она исчерпывает срок действия как маркеров, так и устаревших версий, что делает удаление невосстановимым. 

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

Additional Information


Дополнительные сведения о поведении истечения срока действия политики в версионных и неверсионных контейнерах можно найти здесь; 

Эта гиперссылка позволяет перейти на сайт за пределами 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-actionsЭта гиперссылка позволяет перейти на сайт за пределами Dell Technologies.
https://docs.aws.amazon.com/AmazonS3/latest/userguide/lifecycle-configuration-examples.html#lifecycle-config-conceptual-ex7
Эта гиперссылка позволяет перейти на сайт за пределами Dell Technologies.

Дополнительные пояснения можно найти в руководстве по доступу к данным ECS, где подробно описано, как настроить политику жизненного цикла 

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.