couts s3 qui explosent pour notre infra serverless

paris-christophe 02/01/2025
RÉSOLU
paris-christophe
Auteur Actif
Avatar de paris-christophe
paris-christophe
Auteur Actif

hello la commu finops

on a mis en place une infra serverless complète avec des lambdas qui génèrent pas mal de data stockée sur s3. ça tourne depuis quelques mois et les coûts s3 sont juste incroyables genre 5k$ par mois. on stocke que des petits fichiers json et images. j'ai vérifié les metrics et on a quelques To stockés mais ça justifie pas un tel coût. des idées de ce qui pourrait plomber le budget s3 ?


{
  "bucket_name": "my-serverless-data",
  "region": "eu-west-1",
  "storage_class": "STANDARD",
  "estimated_size_tb": 2.5,
  "estimated_objects_count_billions": 1.2
}
02/01/2025 à 05:18

11 commentaires

antoine-raymond
Membre Actif
Avatar de antoine-raymond
antoine-raymond
Membre Actif

salut

1.2 milliard d'objets pour 2.5To ça fait des objets super petits. s3 te facture par requête (get put list delete) et par volume de stockage. les objets petits sont plus coûteux en requêtes. et si tu es en STANDARD c'est le plus cher pour les accès fréquents. tu devrais voir si tu peux archiver en IA ou Glacier pour les objets moins accédés

Modifié le 23/05/2026 à 16:20
paris-christophe
Auteur Actif
Avatar de paris-christophe
paris-christophe
Auteur Actif

oui on a pas mal de petits objets c'est clair. mais on doit les accéder régulièrement pendant les 30-60 premiers jours. après c'est plus rare. l'archivage c'est une piste. mais ça explique pas tout le coût de dingue

03/01/2025 à 20:39

t'as le versioning d'activé sur ton bucket ? si oui chaque modification d'un objet crée une nouvelle version et s3 te facture pour toutes les versions stockées. si tes lambdas écrivent beaucoup sur les mêmes objets ça peut faire exploser le coût de stockage sans que la taille "logique" augmente tant que ça

04/01/2025 à 17:13
vrenaud
Membre Actif
Avatar de vrenaud
vrenaud
Membre Actif

et le data transfer out ? si tes users ou tes services accèdent aux objets s3 depuis l'extérieur d'aws ou d'une autre région ça coûte cher en egress. regarde les metrics cloudwatch pour bytesdownloaded et bytesuploaded et filtre par region et apiname

Modifié le 23/05/2026 à 16:20
adelaide03
Membre Actif
Avatar de adelaide03
adelaide03
Membre Actif

t'as pas de replication cross-region d'activée sur le bucket ? ça double le stockage et les coûts de transfert. et les s3 lifecycle rules tu les as bien configurées pour passer les vieux objets en IA ou les supprimer ? sinon tu paies des objets que personne ne lit

Modifié le 23/05/2026 à 16:20
paris-christophe
Auteur Actif
Avatar de paris-christophe
paris-christophe
Auteur Actif

ha le versioning... j'avais pas pensé. oui il est activé. et nos lambdas font pas mal d'updates d'objets existants pour ajouter des métadonnées. ça doit être ça une grosse partie du problème. pour la réplication non j'ai pas ça. les lifecycle rules sont en place mais ptete pas assez agressives

07/01/2025 à 10:47
antoine-raymond
Membre Actif
Avatar de antoine-raymond
antoine-raymond
Membre Actif

si le versioning est actif et que tu update beaucoup le même objet ça coûte cher. tu peux aussi configurer une lifecycle rule pour purger les anciennes versions d'objets après x jours ou x versions. ça réduira drastiquement le coût de stockage lié au versioning

08/01/2025 à 07:15

et même si tu as beaucoup de petits objets qui sont accédés souvent les 30-60 premiers jours tu pourrais potentiellement les passer en intelligent-tiering. s3 s'occupe de bouger les objets entre standard et ia en fonction des patterns d'accès. ça peut faire des économies substantielles sans effort

Modifié le 23/05/2026 à 16:20
vrenaud
Membre Actif
Avatar de vrenaud
vrenaud
Membre Actif

check aussi les list requests. si ton app ou des services tiers (backup monitoring) font des list récurrents sur des buckets avec des milliards d'objets ça peut aussi plomber les coûts de requêtes. c'est souvent sous-estimé

Modifié le 23/05/2026 à 16:20
paris-christophe
Auteur Actif
Avatar de paris-christophe
paris-christophe
Auteur Actif

ok le versioning c'est clair c'est une piste chaude. j'ai vu des objets avec 200 versions ! je vais mettre une lifecycle rule pour ça. et intelligent-tiering c'est une super idée pour les objets récents. pour les list requests je vais investiguer aussi

Modifié le 23/05/2026 à 16:20
paris-christophe
Auteur Actif
Avatar de paris-christophe
paris-christophe
Auteur Actif

alors verdict : le versioning était bien le coupable numéro 1. j'ai mis une règle de cycle de vie pour ne garder que les 5 dernières versions après 30 jours et ça a déjà coupé la facture de moitié. en plus j'ai activé intelligent-tiering pour les nouveaux objets. les coûts de list étaient aussi un peu élevés mais moins critiques. merci à tous pour les excellents tips !

Modifié le 23/05/2026 à 16:20

Laisser une réponse

Vous devez être connecté pour poster un message !

Rejoindre la communauté

Recevoir les derniers articles gratuitement en créant un compte !

S'inscrire