У меня есть ведро S3, которое не удаляет маркеры удаления истекшего объекта.

Ковш:

  • управление версиями включено
  • имеет правило межрегиональной репликации, поэтому все копируется в другой сегмент в другом регионе

Правило жизненного цикла, которое я установил (прикрепленное изображение ниже):

  • Применяется ко всему ковшу
  • Без переходов
  • Применимо только к предыдущим версиям
  • Безвозвратно удалить предыдущие версии, установленные на 1 день
  • Очистить маркеры удаления истекшего объекта, для которых установлено значение true

Я просмотрел и удалил (используя UI EDIT: и правило жизненного цикла) кучу объектов, и я смог убедиться, что правило жизненного цикла действительно удаляло исходные объекты безвозвратно после интервала в 1 день, но их маркеры удаления ( которые теперь являются технически просроченными маркерами удаления объекта) остались. Прошло 5 дней, а маркеры удаления все еще остаются. Есть ли что-то еще, что мне нужно сделать, чтобы маркеры удаления также были удалены навсегда?

Lifecycle rule expiration

4
NateH06 15 Апр 2020 в 22:48

1 ответ

Лучший ответ

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

Я удалил данные объемом около 100 ТБ, поэтому он сгенерировал довольно много маркеров удаления объектов с истекшим сроком действия - так что AWS потребовалось> 1 недели, чтобы активировать и удалить их. После получения поддержки клиентов они упомянули некоторые вещи, которые помогли понять это, акцент мой:

Следует отметить, что жизненному циклу может потребоваться некоторое время для фактического истечения срока действия объекта или удаления маркера, даже если он помечает их как подходящие и помещает их в очередь. Таким образом, хотя S3 прекращает зарядку после того, как объекты помечаются как истекающие, они могут продолжать существовать до тех пор, пока жизненный цикл не истечет. Кроме того, на эту продолжительность также влияет общая нагрузка на сервис Lifecycle для данного конкретного региона AWS.

При этом обратите внимание, что жизненный цикл S3 в конечном итоге срок действия / переход подходящих объектов, однако у него нет фиксированный SLA, на который следует полагаться. В большинстве случаев это нормально. и приемлемо. В то время как для случая использования, который требует своевременной очистки удалить маркеры, лучше иметь какой-нибудь другой процесс, который синхронно удаляет эти маркеры удаления, не дожидаясь Жизненный цикл до их очистки.

4
NateH06 30 Апр 2020 в 18:08