FinOps comment réduire la facture S3

Posté par lemaire-noel le 13/07/2024
RÉSOLU

lemaire-noel

Membre depuis le 18/07/2023

Salut les FinOps ! On a une facture AWS S3 qui s'envole ces derniers mois. On stocke des téraoctets de données (logs, backups, assets web). Je sais que S3 c'est pas cher mais là on explose le budget. J'ai déjà mis des lifecycle rules pour passer les backups de Standard à S3-IA puis Glacier après 30 et 90 jours. Y'a d'autres astuces pour grappiller des euros sur S3 ?

Commentaires

oguillon

Membre depuis le 26/06/2024

Déjà bonne initiative pour les lifecycle rules. T'as regardé les coûts de retrieval depuis S3-IA et Glacier ? Des fois on gagne sur le stockage mais on perd sur l'accès si les données sont souvent récupérées. Faut un bon équilibre entre le coût de stockage et le coût d'accès. S3-IA c'est pour l'accès peu fréquent, pas pour du quasi-standard.

qbaron

Membre depuis le 05/07/2024

Et la taille des objets ? Si t'as des millions de petits objets (quelques ko), les coûts de requêtes (GET/PUT) peuvent s'accumuler. C'est pas juste le stockage qui coûte, c'est aussi les ops. Les logs, si c'est des millions de petits fichiers, ça peut faire mal.

lemaire-noel

Membre depuis le 18/07/2023

Les coûts de retrieval sont ok, on y touche pas souvent. Mais oui, j'ai des millions de petits objets pour les logs et certains assets. C'est probablement ça le souci. Comment je gère ça ? Compresser et fusionner les logs avant de les uploader ?

philippine56

Membre depuis le 25/06/2024

Exactement ! Pour les logs, si t'as beaucoup de petits fichiers, un service qui agrège les logs genre Fluentd ou Logstash pour les uploader par batch et en les compressant dans des fichiers plus gros (genre 100MB-1GB) ça réduit énormément les coûts de PUT/GET et ça optimise le stockage. Et tu peux les mettre en Parquet ou ORC pour query avec Athena.

oguillon

Membre depuis le 26/06/2024

Pense aussi à S3 Intelligent-Tiering. C'est un peu plus cher que IA/Glacier de base mais il gère automatiquement le déplacement des objets entre Standard, IA et Archive en fonction des patterns d'accès. Pas de lifecycle rules à maintenir, ça peut faire la différence pour des workloads imprévisibles.

qbaron

Membre depuis le 05/07/2024

et pour les assets web, si c'est des images ou vidéos, utilise des services de cdn comme cloudfront. le edge cache réduit les requêtes directes à s3, et ça optimise la delivery pour tes users en plus. le transfert de données depuis s3 vers cloudfront est moins cher que s3 vers internet direct.

philippine56

Membre depuis le 25/06/2024

dernier truc : pour les buckets de logs, t'as activé s3 server access logging ou cloudtrail ? les logs de s3 peuvent générer des logs sur s3, un peu meta mais si t'as un volume de requêtes énorme, ça peut générer des millions de petits objets. assure-toi que ces logs-là sont aussi archivés intelligemment ou désactivés si pas critiques.

lemaire-noel

Membre depuis le 18/07/2023

Wow merci pour toutes ces pistes ! L'agrégation des petits fichiers de logs et S3 Intelligent-Tiering ça semble être le gros chantier. Pour les assets web le CDN est déjà là mais j'ai pas vérifié les settings de cache. Je vais revoir tout ça. Ça va clairement faire baisser la facture !

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