Configuration des Cycles de vie S3 (LifeCycle)
Cet article vous permet de comprendre facilement les cycles de vie (LifeCycle) pour vos buckets LEVIIA Storag3 avec 3 exemples les plus utilisés :
- Supprimer automatiquement les delete markers expirés
- Gérer les versions obsolètes d'objets versionnés
- Nettoyer les uploads multipart incomplets
1. Marqueurs de suppression expirés (Delete Markers expirés) :
Cette règle nettoie automatiquement les "delete markers" expirés.
Un delete marker est considéré comme expiré lorsqu'il est la seule version restante d'un objet (toutes les autres versions ayant été supprimées).
{
"Rules": [
{
"ID": "LEVIIA-Supprimer-Marqueurs-Expirés",
"Status": "Enabled",
"Filter": {},
"Expiration": {
"ExpiredObjectDeleteMarker": true
}
}
]
}
2. Versions non courantes (versions obsolètes)
Les versions non courantes seront supprimées 365 jours après être devenues non courantes. En plus de la version courante, les 5 versions non courantes les plus récentes seront conservées, même si elles dépassent la période de 365 jours.
Les valeurs de 365 jours et de 5 versions peuvent-être ajustée dans votre fichier JSON selon vos besoins.
{
"Rules": [
{
"ID": "LEVIIA-G\u00e9rer-Versions-Non-Courantes",
"Status": "Enabled",
"Filter": {},
"NoncurrentVersionExpiration": {
"NoncurrentDays": 365,
"NewerNoncurrentVersions": 5
}
}
]
}
3. Uploads multipart incomplets
Les uploads multipart incomplets seront supprimés 7 jours après leur initiation. Cette valeur de 7 jours peut être ajustée dans votre fichier JSON selon vos besoins.
{
"Rules": [
{
"ID": "LEVIIA-Nettoyer-Uploads-Multipart",
"Status": "Enabled",
"Filter": {},
"AbortIncompleteMultipartUpload": {
"DaysAfterInitiation": 7
}
}
]
}
Il est également possible de combiner l'ensemble de ces règles pour n'en former qu'une seule :
Exemple JSON combinant les 3 règles ci-dessus :
{
"Rules": [
{
"ID": "LEVIIA-Configuration-Combinée",
"Status": "Enabled",
"Filter": {},
"Expiration": {
"ExpiredObjectDeleteMarker": true
},
"NoncurrentVersionExpiration": {
"NoncurrentDays": 365,
"NewerNoncurrentVersions": 5
},
"AbortIncompleteMultipartUpload": {
"DaysAfterInitiation": 7
}
}
]
}
Dans cet exemple combiné, le cycle de vie :
- Supprime les Delete Markers expirés
- Supprime les versions non courantes après 365 jours tout en conservant toujours les 5 dernières versions, même si celles-ci ont plus de 365 jours
- Efface les MultiParts Upload échoués après 7 jours
Anatomie de la configuration pour LEVIIA Storag3:
Rules
: Liste des règles de cycle de vie
ID
: Identifiant unique de la règle
Status
: État de la règle (Enabled/Disabled)
Filter
: Filtres pour cibler des objets spécifiques
Expiration
: Configuration pour la suppression des objets courants
ExpiredObjectDeleteMarker
: Supprime les marqueurs de suppression expirés
NoncurrentVersionExpiration
: Configuration pour les anciennes versions
NoncurrentDays
: Nombre de jours avant suppression
NewerNoncurrentVersions
: (optionnel) Nombre minimum de versions à conserver
AbortIncompleteMultipartUpload
: Configuration pour les uploads incomplets
DaysAfterInitiation
: Nombre de jours avant nettoyage
**Notes importantes **:
- Les règles de cycle de vie sont exécutées de manière asynchrone, il peut y avoir un délai entre la configuration et l'application effective.
- Pour tester vos règles, nous recommandons d'appliquer d'abord la configuration sur un bucket de test avant de l'utiliser en production.
- Les objets protégés par S3 Object Lock (immuabilité) ne seront pas supprimés par les règles de cycle de vie avant la fin de leur période de rétention.
Mis à jour le : 21/05/2025
Merci !