Introduction
Une équipe conserve les exports temporaires pendant quatre-vingt-dix jours, tandis que les documents permanents du même compartiment doivent rester en dehors de cette politique. Vous configurerez et examinerez une règle de cycle de vie ciblée, puis nettoierez les ressources d'entraînement.
Terminez d'abord Organisez les documents avec des clés et des métadonnées pour les préfixes, les propriétés, les téléchargements et le nettoyage. La connexion CLI, le compartiment, l'export et le document permanent sont préparés dans cette nouvelle VM. Utilisez Terminal et l'onglet AWS View, à côté. Vous vérifierez la configuration enregistrée plutôt que d'attendre des actions futures fondées sur l'âge des objets.
Lien avec les certifications
Ce laboratoire propose une pratique des sujets d’examen suivants.
- Cloud Practitioner (CLF-C02) · Tâche 3.6: Classes de stockage S3 et configuration ciblée du cycle de vie.
- Solutions Architect – Associate (SAA-C03) · Tâche 4.1: Classes de stockage S3 et configuration ciblée du cycle de vie.
- Developer – Associate (DVA-C02) · Tâche 1.3: Classes de stockage S3 et configuration ciblée du cycle de vie.
- CloudOps Engineer – Associate (SOA-C03) · Tâche 1.3: Classes de stockage S3 et configuration ciblée du cycle de vie.
- Security – Specialty (SCS-C03) · Tâche 5.2: Pratique des fondamentaux : Classes de stockage S3 et configuration ciblée du cycle de vie.
- Data Engineer – Associate (DEA-C01) · Tâche 2.3: Pratique des fondamentaux : Classes de stockage S3 et configuration ciblée du cycle de vie.
Examinez les données temporaires et permanentes
Dans cette étape, vous identifierez le périmètre prévu de la politique et examinerez le document permanent à exclure.
Une règle de cycle de vie précise quels objets gérer et quelles actions effectuer lorsqu'ils vieillissent. Une transition change la classe de stockage ; l'expiration supprime les objets stockés éligibles. Aucune de ces actions ne modifie un fichier local. Commencez par identifier les clés stockées qui doivent relever de cette règle.
Rejoignez l'espace de travail avec cd, qui change de répertoire :
cd /home/labex/project
Listez récursivement le compartiment préparé pour voir les clés d'objet complètes, préfixes compris :
aws s3 ls s3://labex-export-retention/ --recursive
Il y a deux clés : exports/monthly.csv et records/retention-policy.txt. L'export dépasse 128 KB ; le document permanent est un petit fichier texte. Un préfixe est le début d'une clé d'objet, pas un véritable répertoire. Une règle filtrée sur exports/ correspond à l'export, mais exclut records/retention-policy.txt.
Téléchargez le document permanent avec cp, puis examinez ses octets avec cat :
aws s3 cp s3://labex-export-retention/records/retention-policy.txt permanent-record.txt
cat permanent-record.txt
Permanent record: retain until approved removal.
Dans AWS View, développez records/retention-policy.txt pour voir le même texte stocké. Vous comparerez ce document après avoir configuré la règle. Une politique de cycle de vie ne doit pas faire expirer accidentellement des données sans rapport avec elle simplement parce qu'elles partagent un compartiment.
Rédigez et appliquez une règle de cycle de vie ciblée
Dans cette étape, vous enregistrerez une règle de cycle de vie décrivant les exigences de conservation de l'équipe.
S3 Standard est la classe par défaut pour les données fréquemment consultées. S3 Standard-IA (infrequent access, accès peu fréquent) conserve une récupération immédiate, mais facture la récupération et impose une durée minimale de stockage de trente jours. Ici, les exports deviennent peu consultés après trente jours et sont conservés jusqu'au quatre-vingt-dixième jour ; ils passent donc soixante jours dans Standard-IA. Les objets inférieurs à 128 KB ne sont pas transférés vers une autre classe par le comportement par défaut du cycle de vie ; l'export préparé dépasse ce seuil. Ce sont des critères de choix, pas une promesse d'économies précises.
Une expiration après quatre-vingt-dix jours convient aux exports jetables, pas aux documents permanents. La gestion des versions est désactivée dans ce compartiment ; l'expiration peut supprimer définitivement les objets éligibles. Dans un compartiment versionné, l'expiration de la version actuelle et la suppression des versions non actuelles ont des effets différents et nécessitent des actions étudiées séparément.
Schéma : la règle s'applique à exports/. Les seuils en jours décrivent l'éligibilité ; ils ne garantissent pas une exécution à un instant précis.

JSON décrit la configuration avec des objets ({}), des tableaux ([]), des noms de champs entre guillemets, des chaînes et des nombres de jours. Le tableau Rules contient toute la politique du compartiment. ID nomme la règle, Status l'active et Filter.Prefix limite son périmètre. Transitions et Expiration précisent les deux actions.
La commande du shell cat > lifecycle.json <<'JSON' écrit les lignes suivantes dans un fichier jusqu'au JSON final. Il s'agit d'un here-document ; le délimiteur entre guillemets conserve le contenu littéral. Copiez le bloc complet, y compris son délimiteur final :
cat > lifecycle.json <<'JSON'
{
"Rules": [
{
"ID": "temporary-export-retention",
"Status": "Enabled",
"Filter": {"Prefix": "exports/"},
"Transitions": [{"Days": 30, "StorageClass": "STANDARD_IA"}],
"Expiration": {"Days": 90}
}
]
}
JSON
Examinez le fichier avant de l'appliquer :
cat lifecycle.json
Confirmez que le préfixe est exports/, avec sa barre oblique finale. Un préfixe vide viserait tous les objets du compartiment, y compris le document permanent.
aws s3api expose les opérations individuelles de l'API S3. put-bucket-lifecycle-configuration écrit la configuration ; --bucket choisit le compartiment et file://lifecycle.json fait lire à la CLI son argument JSON depuis votre fichier local. Cette opération remplace toute la configuration de cycle de vie du compartiment ; lorsque vous mettez à jour une configuration existante, incluez toutes les règles à conserver. Cet exercice commence sans configuration :
aws s3api put-bucket-lifecycle-configuration --bucket labex-export-retention --lifecycle-configuration file://lifecycle.json
Une commande réussie n'affiche aucun corps de réponse. Examinez ensuite ce que le service a réellement enregistré plutôt que de vous fier uniquement au fichier local.
Examinez la politique enregistrée et le document préservé
Dans cette étape, vous relirez la politique depuis S3 et confirmerez que les nouvelles données et le document permanent exclu restent accessibles.
Récupérez la configuration de cycle de vie du compartiment :
aws s3api get-bucket-lifecycle-configuration --bucket labex-export-retention
Le tableau Rules de la réponse contient une règle Enabled : préfixe exports/, transition vers STANDARD_IA à trente jours et expiration à quatre-vingt-dix jours. Le service peut inclure des champs de réponse supplémentaires ; comparez les champs de la règle aux exigences. Cette réponse constitue une preuve faisant autorité de la configuration, tandis qu'un fichier JSON local seul ne montre pas qu'une règle a été appliquée.
AWS View affiche la même règle enregistrée au-dessus des objets. Il n'affiche pas de transition ni de suppression effectuée : ces seuils sont futurs.

Cet exemple montre la configuration enregistrée et les octets actuels du document. Il ne représente pas une action fondée sur l'âge déjà effectuée.
head-object lit les propriétés d'un objet sans télécharger son contenu. Examinez l'export récemment créé :
aws s3api head-object --bucket labex-export-retention --key exports/monthly.csv
Son ContentLength dépasse 131072 octets. Il reste dans Standard aujourd'hui ; le champ StorageClass peut être omis pour cette classe par défaut. La règle ne change pas immédiatement la classe de stockage d'un nouvel objet simplement parce que vous l'avez activée. Le traitement planifié est asynchrone après l'éligibilité ; ce n'est pas un compte à rebours démarrant à l'exécution de cette commande.
Téléchargez à nouveau le document permanent exclu :
aws s3 cp s3://labex-export-retention/records/retention-policy.txt permanent-record-after.txt
cmp compare les fichiers octet par octet. && affiche un message uniquement si la comparaison réussit :
cmp permanent-record.txt permanent-record-after.txt && echo 'Permanent record unchanged'
Le message confirme que son contenu reste intact. Les deux clés apparaissent toujours dans le compartiment :
aws s3 ls s3://labex-export-retention/ --recursive
Le préfixe enregistré établit que le document permanent est en dehors de cette règle. Sa présence continue aujourd'hui confirme aussi que vous ne l'avez pas supprimé ou écrasé accidentellement pendant la configuration de la politique ; elle ne prouve pas à elle seule le comportement futur du planificateur.
Supprimez la politique et les ressources de l'exercice
Dans cette étape, vous supprimerez la politique enregistrée, puis les objets et le compartiment du laboratoire sans attendre une expiration future.
Retirer une configuration de cycle de vie empêche cette politique de régir le compartiment ; cela ne supprime pas ses objets. Supprimez la politique avec l'opération API individuelle :
aws s3api delete-bucket-lifecycle --bucket labex-export-retention
Vérifiez qu'elle n'est plus configurée :
aws s3api get-bucket-lifecycle-configuration --bucket labex-export-retention
Cette commande doit échouer avec NoSuchLifecycleConfiguration. Le compartiment existe toujours, mais plus sa politique de cycle de vie. AWS View retire le résumé de la règle et conserve les deux objets.
Le document permanent était exclu de l'expiration automatique. Vous allez maintenant le supprimer volontairement dans le cadre du nettoyage de cet exercice jetable, en utilisant sa clé exacte. Supprimez d'abord l'export temporaire :
aws s3 rm s3://labex-export-retention/exports/monthly.csv
aws s3 rm s3://labex-export-retention/records/retention-policy.txt
Confirmez que la liste réussie ne contient aucune ligne d'objet :
aws s3 ls s3://labex-export-retention/ --recursive
Supprimez le compartiment vide avec rb, puis confirmez que le stockage répond toujours :
aws s3 rb s3://labex-export-retention
aws s3 ls
Le message remove_bucket nomme le compartiment de cet exercice ; la liste finale ne contient aucun compartiment et AWS View affiche No buckets. Votre politique locale et vos copies du document restent disponibles pour examen. Vous avez configuré une politique de conservation future et nettoyé explicitement les ressources d'entraînement ; ce sont des opérations distinctes.
Résumé
Vous avez traduit les exigences de données temporaires en une règle de cycle de vie S3 au périmètre précis, choisi une classe de stockage en tenant compte de l'accès et de la durée minimale, puis configuré l'expiration. Vous avez relu la règle depuis S3 et confirmé que le document permanent restait en dehors de son préfixe et inchangé.
Une preuve de configuration diffère d'une exécution future planifiée. Vous avez terminé en supprimant la politique et en supprimant explicitement les ressources de stockage du laboratoire, sans attendre les actions fondées sur l'âge.



