Gestion du cycle de vie des objets Object Storage
Découvrez comment utiliser la gestion du cycle de vie des objets pour gérer automatiquement l'archivage et la suppression des objets.
En utilisant Object Lifecycle Management pour gérer les données Object Storage et Archive Storage, vous pouvez réduire les coûts de stockage et le temps de gestion manuelle des données.
La gestion du cycle de vie des objets effectue des actions automatisées en fonction de règles que vous définissez. Ces règles indiquent à Object Storage de supprimer les téléchargements multipart non validés, de déplacer des objets vers un autre niveau de stockage et de supprimer les ressources prises en charge en votre nom dans un bucket donné. Les règles de cycle de vie d'un bucket sont collectivement appelées stratégie de cycle de vie des objets. Les ressources prises en charge par la gestion du cycle de vie des objets incluent les objets, les versions d'objet et les téléchargements multipart non validés ou en échec.
Par exemple, vous pouvez définir des règles qui effectuent automatiquement les opérations suivantes :
-
Déplacement d'objets de niveau standard avec une extension
.doc
vers le niveau Accès rare ou Archive 60 jours après leur création ou leur dernière mise à jour. -
Déplacer des objets de niveau Standard vers le niveau Archive 30 jours après leur création ou leur dernière mise à jour, puis supprimer automatiquement ces objets archivés au bout de 180 jours.
-
Déplacer les objets de niveau Standard vers le niveau Accès rare 90 jours après leur création ou leur dernière mise à jour.
-
Suppression de toutes les versions d'objet précédentes 120 jours après le passage de la version d'objet du statut de dernière version au statut de version précédente.
-
Suppression des téléchargements multipart non validés ou en échec au bout de 5 jours.
-
Suppression de tous les objets et de toutes les versions d'objet d'un bucket en vue de la suppression de ce dernier.
Chaque bucket Object Storage ou Archive Storage peut disposer d'une seule stratégie de cycle de vie composée de 1 000 règles au maximum. Les règles d'objet peuvent dépendre de conditions de préfixe de nom d'objet et de correspondance de motif. Les règles de téléchargement multipart vers le serveur non validé ne prennent pas en charge les conditions de préfixe et de correspondance de motif.
Les règles s'exécutent normalement dans les 10 minutes suivant leur déclenchement. Cependant, cela est au mieux et peut prendre plus de temps. Les règles peuvent être appliquées à tous les objets de la plupart des buckets dans les 24 heures, mais elles peuvent prendre plus de temps pour les buckets très volumineux. Dans des circonstances inhabituelles, le temps peut être beaucoup plus long que prévu, en particulier lorsqu'une règle affecte plusieurs objets à la fois. Vous continuez à être facturé pour la tranche dans laquelle se trouve l'objet, même après qu'une règle a été déclenchée mais n'a pas encore été traitée.
Tâches de stratégie de cycle de vie des objets
Vous pouvez effectuer les tâches de gestion du cycle de vie des objets suivantes :
Stratégies IAM requises
Vous ne pouvez pas utiliser la gestion du cycle de vie des objets tant que vous n'avez pas autorisé le service Object Storage à archiver et à supprimer des objets en votre nom. Pour plus d'informations, reportez-vous à Droits d'accès du service.
Si vous ne connaissez pas les stratégies, reportez-vous à Gestion des domaines d'identité et à Stratégies courantes.
Droits d'accès utilisateur
Pour utiliser Oracle Cloud Infrastructure, un administrateur doit être membre d'un groupe disposant d'un accès sécurisé dans une stratégie par un administrateur de location. Cet accès est requis, que vous utilisiez la console ou l'API REST avec un kit SDK, une interface de ligne de commande ou un autre outil. Si un message vous indique que vous ne disposez pas des droits d'accès ou des autorisations nécessaires, vérifiez auprès de l'administrateur de location le type d'accès dont vous disposez et le compartiment dans lequel votre accès fonctionne.
Pour les administrateurs :
- La stratégie Autoriser les administrateurs Object Storage à gérer des buckets et des objets permet au groupe indiqué de réaliser toutes les actions possibles sur les buckets et les objets, y compris l'ajout et la gestion des stratégies de cycle de vie.
- Si vous créez des stratégies plus restrictives qui accordent des droits d'accès individuels, tenez compte des points suivants :
- OBJECT_VERSION_DELETE est requis pour supprimer des versions d'objet précédentes en votre nom à l'aide de stratégies de cycle de vie.
- OBJECT_UPDATE_TIER est requis pour modifier le niveau de stockage d'un objet.
Pour plus d'informations sur les droits d'accès utilisateur Object Storage, reportez-vous à Détails relatifs à Object Storage, Archive Storage et Data Transfer.
Droits d'accès du service
Pour exécuter les stratégies de cycle de vie des objets, vous devez autoriser le service à archiver et à supprimer des objets en votre nom. Pour ce faire, créez la stratégie suivante dans le compartiment racine de votre location :
Allow service objectstorage-<region_identifier> to manage object-family in compartment <compartment_name>
Object Storage étant un service régional, vous devez autoriser le service Object Storage dans chaque région où s'appliquent des stratégies de cycle de vie. Object Storage garantit que vos données ne sont pas lues à partir d'une région non autorisée.
Si vous ne disposez pas de droits d'accès permettant d'écrire des stratégies pour le compartiment racine de votre location, contactez l'administrateur Oracle Cloud Infrastructure. Pour déterminer la valeur de l'identificateur d'une région Oracle Cloud Infrastructure, reportez-vous à Régions et domaines de disponibilité.
Au lieu d'utiliser le verbe de stratégie manage
, vous pouvez accorder des droits d'accès individuels au service. Par exemple :
Allow service objectstorage-<region_identifier> to manage object-family in compartment <compartment_name> where any {request.permission='BUCKET_INSPECT', request.permission='BUCKET_READ', request.permission='OBJECT_INSPECT', request.permission='OBJECT_UPDATE_TIER', request.permission='OBJECT_DELETE', request.permission='OBJECT_VERSION_DELETE'}
Options
Lors de la création de règles de stratégie de cycle de vie des objets, vous disposez des options suivantes :
-
Lorsqu'une règle de cycle de vie est créée, le système génère un nom par défaut pour cette règle, par exemple lifecycle-rule-20190321-1559. Ce nom de règle indique l'année, le mois, le jour et l'heure en cours lors de la création de la règle. Vous pouvez utiliser ce nom généré par le système pour la nouvelle règle ou vous pouvez lui attribuer un autre nom.
-
Vous pouvez créer des règles de cycle de vie qui effectuent les actions suivantes :
-
Déplacement ou suppression de tous les objets du bucket.
-
Déplacement ou suppression des objets du bucket qui correspondent aux filtres de nom d'objet que vous indiquez. Vous pouvez sélectionner des objets à l'aide de préfixes de nom d'objet et d'une correspondance de motif. Pour plus de détails, reportez-vous à Utilisation de filtres de nom d'objet.
-
Suppression des téléchargements multipart non validés ou en échec. Pour plus d'informations, reportez-vous à Téléchargements multipart vers le serveur Object Storage.
Si la gestion des versions d'objet est activée ou suspendue sur un bucket, vous pouvez également créer des règles de cycle de vie qui effectuent les actions suivantes :-
Déplacement ou suppression des versions précédentes de tous les objets du bucket.
-
Déplacement ou suppression des versions précédentes des objets du bucket qui correspondent aux filtres de nom que vous indiquez. Vous pouvez sélectionner des objets à l'aide de préfixes de nom d'objet et d'une correspondance de motif. Pour plus de détails, reportez-vous à Utilisation de filtres de nom d'objet.
-
-
Vous indiquez le nombre de jours avant l'exécution de l'action indiquée.
-
Vous décidez si une nouvelle règle est activée ou désactivée lors de sa création.
Utilisation de filtres de nom d'objet
Utilisez des filtres de nom d'objet pour spécifier un sous-ensemble d'objets, de versions d'objet ou de versions d'objet précédentes auquel s'applique une règle de cycle de vie. Créez une règle de filtre de nom d'objet distincte pour chaque cible de règle (objets, versions d'objet ou versions d'objet précédentes).
N'indiquez pas de filtres de nom d'objet si vous voulez qu'une règle s'applique à la cible de tous les objets, de toutes les versions d'objet ou de toutes les versions d'objet précédentes.
Deux types de filtre de nom d'objet sont pris en charge :
-
La correspondance de préfixe est une correspondance exacte des caractères les plus à gauche d'un nom d'objet. La correspondance de préfixe ne prend pas en charge les caractères génériques. Bien que les buckets et les objets Object Storage figurent dans une structure plate, les préfixes vous permettent de simuler une structure de répertoires lorsqu'ils sont utilisés avec une barre oblique (/). Pour plus d'informations, reportez-vous à Dénomination des objets à l'aide de préfixes et de hiérarchies.
-
La correspondance de motif effectue la mise en correspondance avec l'intégralité du nom d'objet, mais prend en charge l'utilisation de caractères génériques et d'autres structures de correspondance de motif, le cas échéant, pour mettre en correspondance aucun ou plusieurs caractères dans le nom d'objet.
Les filtres de nom d'objet s'appliquent à l'intégralité du nom d'objet. Les préfixes (affichés en tant que dossiers et sous-dossiers virtuels dans la console) font partie du nom d'objet.
Par exemple, pour le chemin >marathon>participants>p_21.jpg, le nom de l'objet est /marathon/participants/p_21.jpg
et non p_21.jpg
.
Vous pouvez ajouter des filtres de nom d'objet dans n'importe quel ordre. La gestion du cycle de vie des objets évalue la priorité des règles comme suit :
-
Exclusions de motif
-
Inclusions de motif
-
Inclusions de préfixe
Utilisation de la correspondance de préfixe pour filtrer les objets
Vous pouvez utiliser des chaînes de préfixe à des fins de mise en correspondance lors de la réalisation d'opérations liées à la gestion du cycle de vie. Certaines opérations en masse peuvent également être réalisées en effectuant la mise en correspondance avec les parties de préfixe du nom d'objet.
- Dans les exemples de nom d'objet suivants, les préfixes incluent des barres obliques (/) pour simuler une structure de répertoires. La chaîne
marathon/
ou marathon/participants/ peut servir de préfixe à des fins de mise en correspondance dans les règles de cycle de vie :marathon/finish_line.jpg marathon/podium.jpg marathon/participants/p_21.jpg marathon/participants/p_29.jpg
- Dans les exemples de nom d'objet suivants, la chaîne
gloves_27_
peut servir de préfixe à des fins de mise en correspondance dans les règles de cycle de vie :gloves_27_dark_green.jpg gloves_27_light_blue.jpg gloves_27_deep_purple.jpg gloves_27_bright_orange.jpg
Utilisation de la correspondance de motif pour filtrer les objets
Object Storage prend en charge les caractères de correspondance de motif suivants pour inclure ou exclure des objets :
Caractère | Description | Exemples de modèle | Correspond à | Ne correspond pas à |
---|---|---|---|---|
* | Correspond à 0 caractère ou plus | *.tmp |
foo.tmp foo/bar/baz.tmp |
tmp Atmp |
temp/*.tmp |
temp/working.tmp temp/new/file.tmp |
file.tmp temp.tmp temp/new.draft |
||
*.xls |
.xls /home/user/file.xls |
xls .xl |
||
/archive/* |
/archive/sub/dir/ /archive/1/2/3/4/foo.txt |
/src/archive/a archive/b |
||
? | Correspond à n'importe quel caractère | X?Z |
XyZ X_Z |
XZ XYYZ |
\ | Echappe le caractère suivant | \\dir\\sub\\* |
\dir\sub\ABC \dir\sub\ |
dir\sub\abc dirsub |
[...] |
Correspond à un groupe de caractères qui peut être :
|
[-ab3] |
- a b 3 |
-a -ab 3b |
backup.tar.gz.[0-9] |
backup.tar.gz.0 backup.tar.gz.5 backup.tar.gz.9 |
backup.tar.gz10 backup.tar.gz |
||
page-[0-9]* |
page-0 page-2 page-22 page-2X |
page- page-A1 |
||
\[a-z\] | [a-z] |
a z [a-z |
Limites du filtre de nom d'objet
Les limites suivantes s'appliquent aux filtres de nom d'objet :
-
Au maximum, 20 modèles sont autorisés sous les filtres de nom d'objet.
-
Les modèles sont limités à 1 024 caractères. Voici des exemples de motifs non valides :
- \
- [^a-z]
- [z-a]
-
[:isalpha:]
Utilisation des stratégies de gestion du cycle de vie des objets
Vous pouvez créer, supprimer, modifier ou désactiver les règles de stratégie de cycle de vie à l'aide de la console, de l'interface de ligne de commande (CLI), d'un kit SDK ou de l'API.
La stratégie de suppression de la gestion du cycle de vie des objets fonctionne en fonction de l'heure de dernière modification de l'objet au format UTC (temps universel coordonné), en capturant l'heure de création ou la dernière heure de remplacement. L'heure de modification est arrondie au jour le plus proche au format UTC.
La plate-forme exécute la stratégie de cycle de vie une fois par jour. Lorsque vous configurez ou modifiez une stratégie de cycle de vie, l'entrée en vigueur des modifications et le démarrage de la première exécution peuvent prendre jusqu'à 24 heures. Le temps nécessaire à l'exécution des actions de stratégie dépend du nombre d'objets à évaluer et à utiliser.
Les objets supprimés en votre nom par les stratégies de cycle de vie ne peuvent pas être récupérés. Lors de la création et de la modification de stratégies de cycle de vie, veillez à ne pas supprimer involontairement des données à conserver. Nous vous recommandons de tester votre stratégie de cycle de vie sur des données de développement avant d'utiliser cette stratégie en production.