Есть ли простая конфигурация для безвозвратного удаления объектов S3 по истечении определенного времени, когда они не используются?

Я хочу удалить объекты S3 после того, как они не используются в течение определенного времени.

Конкретно должно быть два правила:

  1. переместите их на ледник через определенное время, когда они не будут использоваться (6 месяцев)
  2. удалите их после того, как они пробыли в леднике в течение 2 недель

Объекты находятся в ведре с управлением версиями. Я также знаю, что за объекты ледника, удаленные до 90 дней, взимается плата за удаление, но это не проблема.

Теперь я легко могу выполнить цель 1 с помощью Intelligent-Tiering Archive configuration.

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

Единственный способ моделирования этой проблемы:

  • Создайте конфигурацию Intelligent-Tiering Archive, которая перемещается в архив через 6 месяцев и в глубокий архив через 2 недели.
  • Создайте лямбда-выражение, срок действия которого истекает, и удаляет все версии объектов в глубоком архиве.

У этого есть два недостатка:

  • Я заплачу за глубокое архивное хранилище, даже если оно практически не используется (но это не имеет большого значения)
  • Мне нужно написать лямбду

Есть ли решение попроще?




Ответы (1)


Нет необходимости переходить к глубокому леднику, чтобы определить, как долго объект находится в классе ледников.

При преобразовании класса объекта создается новая версия, которая содержит обновленную метку времени в поле LastModified, которое можно запросить, чтобы решить, следует ли удалить объект или нет.

Что касается самого удаления, то автоматического способа сделать это не существует.

person Marcus    schedule 11.05.2021