MINIO Можно ли настроить автоматическое удаление объекта из корзины после даты хранения?

#minio

Вопрос:

Я хочу удалить объект после истечения срока хранения. Могу ли я сделать это с помощью жизненного цикла ведра? Если да, то как?

И второй вопрос: можно ли автоматически удалить объект, если доступен более новый?

Комментарии:

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

Ответ №1:

Это будет работать только с версионным ведром

Включите настройку жизненного цикла объектов в сегментах, чтобы настроить автоматическое удаление объектов после a specified number of days или a specified date .

Пример: Создайте конфигурацию жизненного цикла корзины, срок действия которой истекает для объектов с префиксом old/ на 2020-01-01T00:00:00.000Z дату, а для объектов temp/ с префиксом-через 7 дней.

Включите конфигурацию жизненного цикла ковша с помощью mc :

 {
  "Rules": [{
      "Expiration": {
        "Date": "2020-01-01T00:00:00.000Z"
      },
      "ID": "OldPictures",
      "Filter": {
        "Prefix": "old/"
      },
      "Status": "Enabled"
    },
    {
      "Expiration": {
        "Days": 7
      },
      "ID": "TempUploads",
      "Filter": {
        "Prefix": "temp/"
      },
      "Status": "Enabled"
    }
  ]
} 

то же самое можно найти в :https://docs.min.io/docs/minio-bucket-lifecycle-guide.html

Удалить не текущие версии

 {
    "Rules": [
        {
            "ID": "Removing all old versions",
            "Filter": {
                "Prefix": "users-uploads/"
            },
            "NoncurrentVersionExpiration": {
                "NoncurrentDays": 365
            },
            "Status": "Enabled"
        }
    ]
}
 

Комментарии:

1. Да, но это конфигурация для всего ведра. И у меня есть много объектов с разными датами.

2. вы можете использовать опцию дней вместо жестко заданной даты.

3. вы можете применять правила жизненного цикла на уровне объекта (putObject)