Exécutez la commande lifecycle pour configurer des règles qui transfèrent automatiquement les objets vers des classes de stockage froid ou les suppriment après une période donnée. Cette démarche réduit les coûts de stockage et facilite le respect des exigences de conformité. Les règles se déclenchent selon la date de dernière modification ou la date du dernier accès. Les règles basées sur la date d'accès permettent à OSS d'analyser les modèles d'accès et de classer automatiquement les données froides afin de réduire les coûts.
Notes d'utilisation
La création ou la modification de règles nécessite l'autorisation
oss:PutBucketLifecycle. La consultation requiert l'autorisationoss:GetBucketLifecycle. La suppression exige l'autorisationoss:DeleteBucketLifecycle. Pour plus d'informations, consultez la rubrique Accorder une stratégie personnalisée.Avant de configurer des règles de cycle de vie basées sur la date de dernière modification ou la date du dernier accès des objets, assurez-vous de bien comprendre cette fonctionnalité. Pour plus d'informations, consultez les rubriques Règles de cycle de vie basées sur la date de dernière modification et Règles de cycle de vie basées sur la date du dernier accès.
À partir de la version 1.6.16 d'ossutil, utilisez directement
ossutilcomme nom de commande, quel que soit le système d'exploitation. Pour les versions antérieures à la 1.6.16, vous devez utiliser le nom d'exécutable spécifique au système d'exploitation. Pour plus d'instructions, consultez la rubrique Références des commandes ossutil.
Pour plus d'informations sur les règles de cycle de vie, consultez la rubrique Cycle de vie.
Les règles de cycle de vie peuvent supprimer des objets dans les buckets CloudBox, mais ne peuvent pas modifier leur classe de stockage.
Créer ou modifier des règles de cycle de vie
Pour créer ou modifier des règles de cycle de vie :
Créez un fichier XML local contenant les règles de cycle de vie.
Exécutez ossutil pour appliquer la configuration au bucket cible.
-
Syntaxe de la commande
ossutil lifecycle --method put oss://bucketname local_xml_fileParamètres :
Paramètre
Description
bucketname
Nom du bucket cible.
local_xml_file
Fichier XML local contenant les règles de cycle de vie. Exemple :
localfile.xml. -
Exemples
ImportantVous pouvez définir plusieurs règles au sein d'une même configuration de cycle de vie. Chaque règle doit posséder un ID unique. Des ID en double entraînent l'échec de l'opération avec le code d'état HTTP 409.
-
Créez un fichier nommé
localfile.xmlet définissez les règles de cycle de vie.Configurations exemples :
-
Exemple 1
Cette configuration comprend deux règles.
test-rule1s'applique à tous les objets du bucketexamplebucketet les expire 365 jours après leur dernière modification.test-rule2s'applique aux objets dont le préfixe esttest/et les fait passer vers la classe de stockage Archive 30 jours après leur dernière modification.Pour obtenir la liste des classes de stockage prises en charge par les règles de cycle de vie, consultez la rubrique Convertir automatiquement les classes de stockage des objets à l'aide de règles de cycle de vie.
<?xml version="1.0" encoding="UTF-8"?> <LifecycleConfiguration> <Rule> <ID>test-rule1</ID> <Prefix></Prefix> <Status>Enabled</Status> <Expiration> <Days>365</Days> </Expiration> </Rule> <Rule> <ID>test-rule2</ID> <Prefix>test/</Prefix> <Status>Enabled</Status> <Transition> <Days>30</Days> <StorageClass>Archive</StorageClass> </Transition> </Rule> </LifecycleConfiguration> -
Exemple 2
Cette règle expire tous les objets du bucket
examplebucketdont la date de dernière modification est antérieure au 30 décembre 2019 :<?xml version="1.0" encoding="UTF-8"?> <LifecycleConfiguration> <Rule> <ID>test-rule0</ID> <Prefix></Prefix> <Status>Enabled</Status> <Expiration> <CreatedBeforeDate>2019-12-30T00:00:00.000Z</CreatedBeforeDate> </Expiration> </Rule> </LifecycleConfiguration> -
Exemple 3
Pour un bucket avec versioning activé
examplebucket, cette règle effectue les actions suivantes : Fait passer les versions actives vers la classe de stockage IA 10 jours après la dernière modification. Fait passer les versions non actives vers la classe de stockage Archive 60 jours après qu'elles soient devenues non actives. * Supprime les versions non actives 90 jours après qu'elles soient devenues non actives.<?xml version="1.0" encoding="UTF-8"?> <LifecycleConfiguration> <Rule> <ID>test-rule3</ID> <Prefix></Prefix> <Status>Enabled</Status> <Transition> <Days>10</Days> <StorageClass>IA</StorageClass> </Transition> <NoncurrentVersionTransition> <NoncurrentDays>60</NoncurrentDays> <StorageClass>Archive</StorageClass> </NoncurrentVersionTransition> <NoncurrentVersionExpiration> <NoncurrentDays>90</NoncurrentDays> </NoncurrentVersionExpiration> </Rule> </LifecycleConfiguration> -
Exemple 4
Cette règle fait passer les objets dont le préfixe est
data/vers la classe de stockage IA 200 jours après le dernier accès. Avec<ReturnToStdWhenVisit>défini surfalse, les objets restent dans la classe de stockage IA même s'ils sont consultés à nouveau.<?xml version="1.0" encoding="UTF-8"?> <LifecycleConfiguration> <Rule> <ID>test-rule4</ID> <Prefix>data/</Prefix> <Status>Enabled</Status> <Transition> <Days>200</Days> <StorageClass>IA</StorageClass> <IsAccessTime>true</IsAccessTime> <ReturnToStdWhenVisit>false</ReturnToStdWhenVisit> </Transition> </Rule> </LifecycleConfiguration>
-
-
-
Ajoutez la configuration de cycle de vie au bucket
examplebucket:ossutil lifecycle --method put oss://examplebucket localfile.xmlSortie en cas de succès :
0.299514(s) elapsed
Consulter les règles de cycle de vie
-
Syntaxe de la commande
ossutil lifecycle --method get oss://bucketname [local_xml_file]Paramètres :
Paramètre
Description
bucketname
Nom du bucket cible.
local_xml_file
Fichier de sortie pour la configuration de cycle de vie. Exemple :
localfile.xml. Si ce paramètre est omis, les règles sont affichées sur la sortie standard (stdout). -
Exemple
Consultez les règles de cycle de vie du bucket
examplebucket:ossutil lifecycle --method get oss://examplebucket localfile.xmlSortie en cas de succès :
0.212407(s) elapsed
Supprimer la configuration de cycle de vie
-
Syntaxe de la commande
ossutil lifecycle --method delete oss://bucketname -
Exemple
Supprimez les règles de cycle de vie du bucket
examplebucket:ossutil lifecycle --method delete oss://examplebucketSortie en cas de succès :
0.530750(s) elapsed
Options courantes
Pour accéder à un bucket situé dans une autre région, utilisez -e pour spécifier l'endpoint. Pour accéder à un bucket appartenant à un autre compte Alibaba Cloud, utilisez -i pour l'AccessKey ID et -k pour l'AccessKey Secret.
Par exemple, créez des règles de cycle de vie pour le bucket examplebucket dans la région Chine (Hangzhou), appartenant à un autre compte Alibaba Cloud :
ossutil lifecycle --method put oss://examplebucket localfile.xml -e oss-cn-hangzhou.aliyuncs.com -i yourAccessKeyID -k yourAccessKeySecret