Egress inattendu sur S3 glacier deep archive

Posté par letellier-juliette le 04/10/2024
RÉSOLU

letellier-juliette

Membre depuis le 04/12/2019

La c'est la cata j'ai reçu la facture aws du mois et on a 5000$ d'egress sur s3 glacier deep archive. 5000$ pour un truc qui sert que pour l'archivage long terme c'est impensable. le pire c'est qu'on a fait aucune restore "manuelle".

on stocke des backups là dedans avec des lifecycles rules pour qu'ils partent en deep archive après 90j. le problème c'est qu'on a genre 100to de data archivées.


{
  "Rules": [
    {
      "ID": "MoveToGlacierDeepArchive",
      "Prefix": "backups/",
      "Status": "Enabled",
      "Transitions": [
        {
          "Days": 90,
          "StorageClass": "GLACIER_DEEP_ARCHIVE"
        }
      ]
    }
  ]
}

Quelqu'un a déjà eu ça ? une idée d'où ça peut venir ?

Commentaires

alexandre29

Membre depuis le 28/02/2020

oh putain le deep archive egress c'est la mort. t'as pas une app ou un script qui liste les objets dans un bucket glacier ? même un list objets avec un préfixe ça compte comme retrieve si l'objet est dans deep archive. c'est vicieux.

isaac-toussaint

Membre depuis le 30/12/2019

+1 à 2. et surtout la suppression anticipée ! si tes objets sont supprimés avant la durée minimale (180j pour deep archive) aws te facture comme si t'avais stocké pendant toute la durée ET tu peux avoir des frais d'egress si ces objets ont été consultés avant suppression. check cloudtrail sur les actions s3:GetObject et s3:ListObjects

plebon

Membre depuis le 10/09/2024

c'est pas une réplication cross-region qui fait ça ? si tu répliques des objets qui sont déjà en deep archive, ça compte comme un restore puis un re-upload. et si t'as une règle qui supprime les objets sources après réplication, ça peut générer du egress aussi.

rlegall

Membre depuis le 21/09/2024

t'as des bucket policies ou des ACL qui donnent accès à des tiers ? un partenaire par exemple qui ferait un audit ou un scan de tes backups ? on a vu des cas où un tiers avait scanné un bucket sans savoir que c'était du deep archive.

letellier-juliette

Membre depuis le 04/12/2019

merde c'est beaucoup de pistes. on fait pas de cross-region replication. par contre le list objets c'est possible. on a un job de nettoyage qui liste les vieux backups pour s'assurer qu'ils sont bien purgés. ça fait un s3:ListObjectsV2 avec le préfixe. ça compte vraiment comme un retrieve pour glacier deep archive ?

alexandre29

Membre depuis le 28/02/2020

oui ça compte à fond. même un list objects sur glacier peut te coûter. aws doit faire une "restauration" temporaire de l'index des objets pour te donner la liste. c'est pas un retrieve du contenu mais c'est un retrieve de metadata qui est traité comme tel pour les tarifs. c'est spécifié dans leur doc sur les frais de retrieve pour glacier.

isaac-toussaint

Membre depuis le 30/12/2019

et la suppression anticipée ça ? tes backups sont peut être supprimés avant 180j si ton job de nettoyage est trop agressif. ça te coûte cher. check les logs cloudtrail pour s3:DeleteObject.

plebon

Membre depuis le 10/09/2024

pour le listobjects sur glacier, un moyen de contourner c'est de garder un index séparé dans dynamodb ou un autre bucket s3 standard des objets que t'as envoyé en glacier. comme ça tu listes pas le bucket glacier direct.

letellier-juliette

Membre depuis le 04/12/2019

ok je comprends mieux la douille. le job de nettoyage il liste et si les objets sont trop vieux il les supprime. mais le lifecycle rule est à 90j et le deep archive min duration est 180j. du coup on se prend une double peine : le list objects et la suppression anticipée. faut que je revois toute la strat de rétention et de gestion de l'index. merci les gars pour le coup de main je suis moins seul face à 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