Cours > Module > Chapitre

Lab : Gestion du Cycle de Vie des Objets S3 avec S3 Lifecycle Policies

Objectif

Dans ce lab, nous allons apprendre à utiliser les règles de cycle de vie S3 (S3 Lifecycle Policies) pour automatiser la gestion des objets stockés dans un bucket Amazon S3. Nous allons configurer une règle qui :
Transitionne les objets vers une classe de stockage moins coûteuse après un certain délai.
Supprime les objets après une période définie.

Architecture du Lab

Nous allons :

  • Créer un bucket S3.
  • Mettre en place une règle de cycle de vie pour :
    • Déplacer les objets vers S3 Standard-IA après 30 jours.
    • Déplacer les objets vers S3 Glacier après 60 jours.
    • Supprimer les objets après 90 jours.

Tester la règle en téléchargeant un fichier et en simulant l’évolution du temps.

Étape 1 : Créer un Bucket S3

📌 Via la Console AWS :

  1. Accéder à la console AWS S3 : AWS S3 Console
  2. Cliquer sur “Créer un bucket”.
  3. Renseigner un nom unique (ex: mon-lab-s3-lifecycle).
  4. Choisir une région AWS (ex: us-east-1).
  5. Désactiver le Blocage de l’accès public (facultatif pour ce lab).
  6. Cliquer sur “Créer un bucket”.

📌 Via AWS CLI :

				
					aws s3api create-bucket --bucket mon-lab-s3-lifecycle --region us-east-1 --create-bucket-configuration LocationConstraint=us-east-1
				
			

Étape 2 : Télécharger des fichiers dans le Bucket

Ajoutons un fichier de test :

📌 Via AWS CLI :

echo "Ceci est un fichier de test" > test-file.txt
aws s3 cp test-file.txt s3://mon-lab-s3-lifecycle/

Étape 3 : Créer une Règle de Cycle de Vie

📌 Via la Console AWS :

  1. Aller sur S3 > Votre bucket > Gestion > Configuration du cycle de vie.
  2. Cliquer sur “Créer une règle de cycle de vie”.
  3. Nommer la règle : LifecycleRule-Test.
  4. Filtrage : Appliquer à tous les objets du bucket.
  5. Ajouter une transition :
    • Après 30 jours : S3 Standard-IA
    • Après 60 jours : S3 Glacier
  6. Ajouter une expiration :
    • Supprimer les objets après 90 jours.
  7. Enregistrer la règle.

📌 Via AWS CLI (JSON Policy)
Crée un fichier lifecycle-policy.json :

				
					{
  "Rules": [
    {
      "ID": "TransitionToStandardIA",
      "Status": "Enabled",
      "Prefix": "",
      "Transitions": [
        {
          "Days": 30,
          "StorageClass": "STANDARD_IA"
        },
        {
          "Days": 60,
          "StorageClass": "GLACIER"
        }
      ],
      "Expiration": {
        "Days": 90
      }
    }
  ]
}

				
			

Applique la policy avec :

aws s3api put-bucket-lifecycle-configuration --bucket mon-lab-s3-lifecycle --lifecycle-configuration file://lifecycle-policy.json

Étape 4 : Tester la Règle (Simulation)

🔍 Vérifier la politique appliquée

aws s3api get-bucket-lifecycle-configuration --bucket mon-lab-s3-lifecycle

⏳ Simuler l’évolution du temps (via AWS CLI)

Comme on ne peut pas accélérer le temps, voici comment vérifier les classes de stockage au fil du temps :

aws s3api head-object --bucket mon-lab-s3-lifecycle --key test-file.txt --query "StorageClass"

🚀 Astuce : On peut utiliser Amazon S3 Batch Operations pour tester des règles sur un grand nombre d’objets.

Étape 5 : Nettoyer les ressources

Supprime le bucket et son contenu :

aws s3 rb s3://mon-lab-s3-lifecycle --force

Conclusion

✔️ Nous avons appris à créer une règle de cycle de vie S3 pour gérer le stockage automatiquement.
✔️ Nous avons configuré une transition entre différentes classes de stockage et une expiration des objets.
✔️ Nous avons exploré comment tester et vérifier la politique appliquée.

×

Panier