5 points par GN⁺ 2024-01-16 | 1 commentaires | Partager sur WhatsApp

Comment réduire de 99 % les coûts de transfert de données sur AWS

  • Lorsqu’on transfère des données sur AWS, il est facile d’engager par erreur des coûts excessifs, en particulier si l’on ne fait pas attention aux frais de transfert de données.
  • AWS facture les transferts de données comme suit :
    • Lorsqu’on transfère des données depuis AWS vers l’Internet public, le coût va de 0,09 $ à 0,154 $ par Go selon la région.
    • Le transfert de données entre régions AWS est facturé de 0,02 $ à 0,147 $ par Go ; il s’agit du coût d’un transfert de données qui ne sort pas du réseau AWS.
    • Le transfert de données entre zones de disponibilité d’une même région AWS coûte 0,01 $ par Go, et ce tarif est identique dans toutes les régions.

Utiliser AWS PrivateLink et les endpoints VPC

  • En utilisant AWS PrivateLink et les endpoints VPC, il est possible d’empêcher les données de sortir du réseau AWS, ce qui est utile non seulement pour le prix mais aussi du point de vue de la sécurité.
  • Ces fonctionnalités ne sont pas gratuites et ont leurs propres limites ainsi qu’une tarification complexe, mais davantage de détails sont disponibles auprès d’AWS et de Vantage.

Contourner les coûts de transfert de données avec S3

  • La plupart des classes de stockage S3 stockent les données au niveau de la région plutôt qu’au niveau d’une zone de disponibilité.
  • Certaines classes de stockage, comme S3 One Zone-Infrequent Access et S3 Express One Zone, stockent les données dans une seule zone de disponibilité.
  • Les données stockées dans un bucket S3 standard sont disponibles de manière équivalente depuis toutes les zones de disponibilité AWS, et télécharger des données depuis S3 est gratuit (les frais de transfert de données standard ne s’appliquent qu’aux transferts inter-régions ou vers l’Internet public).

Démo

  • Un nouveau compte AWS est créé afin d’éviter tout bruit dans la mesure des prix.
  • Deux expériences sont menées :
    1. Dans la première expérience, deux instances EC2 sont placées dans un VPC avec des sous-réseaux privés, puis un fichier de 1 To est transféré depuis l’instance us-east-1a vers l’instance us-east-1b.
    2. Dans la seconde expérience, deux instances sont placées dans un VPC avec un endpoint S3 Gateway ; un fichier de 1 To est d’abord téléversé depuis l’instance us-east-1a vers un bucket S3, puis téléchargé depuis l’instance us-east-1b.

Résultats

  • L’expérience de transfert de données standard a entraîné un coût de 20 $, comme prévu.
  • L’expérience de transfert de données basée sur S3 n’a généré que quelques centimes de coût de stockage et, en pratique, aucun coût de stockage S3 n’a été facturé.

Conclusion

  • AWS réplique les données S3 entre zones de disponibilité, et ce coût est inclus dans le coût de stockage S3.
  • En téléversant les données sur S3 puis en les supprimant immédiatement, il est possible d’atteindre une réduction de coût de 99 %.
  • Cette méthode ne remplace pas le code de transfert de données existant et peut avoir une latence plus élevée qu’une connexion réseau directe, mais si la réduction des coûts est la principale priorité, c’est une approche efficace.

Avis de GN⁺

  • Cet article présente une méthode créative pour réduire les coûts de transfert de données sur AWS, ce qui peut permettre des économies importantes aux entreprises comme aux particuliers utilisant des services cloud.
  • En particulier, la méthode de transfert de données via S3 constitue une stratégie efficace pour réduire sensiblement les coûts liés au déplacement de données à l’intérieur d’AWS.
  • Ces méthodes de réduction des coûts fournissent des informations très utiles aux architectes cloud et aux administrateurs système d’entreprises cherchant à optimiser leur infrastructure cloud.

1 commentaires

 
GN⁺ 2024-01-16
Avis Hacker News
  • Utiliser des instances Lightsail

    • Les instances Lightsail peuvent servir à « proxyfier » des données depuis des ressources AWS (par ex. des instances EC2 ou des buckets S3).
    • Chaque instance Lightsail inclut un certain volume de transfert de données dans son prix ($3.5 pour 1 To, $5 pour 2 To, etc.).
    • L’instance à $10 offre 3 To de trafic et présente le meilleur rapport qualité-prix.
    • Sur EC2, 3 To de trafic coûtent $276.48, et $69 depuis un bucket S3.
    • Inconvénient : avec Lightsail, le trafic entrant comme sortant est comptabilisé comme du « trafic ».
  • Mise en garde sur les astuces de réduction des coûts

    • Il existe diverses astuces pour réduire les coûts et obtenir des ressources gratuites.
    • Ces méthodes sont ingénieuses, mais peu fiables.
    • C’est le même type de bidouille que le minage de cryptomonnaie via GitHub Actions à travers des dépôts OSS.
    • À considérer comme un exercice de hacking intéressant, mais à ne pas déployer en production au risque de voir son compte AWS suspendu.
  • Réflexion sur l’usage du cloud plutôt qu’un VPS

    • Avec un VPS, comment gérez-vous les questions de haute disponibilité (High Availability) ?
    • Même une petite entreprise doit rester disponible en permanence.
    • En général, on déploie la même infrastructure sur au moins deux instances VPS et on met en place un équilibrage de charge.
  • Calcul du coût de stockage S3

    • Le stockage S3 est facturé au Go-mois.
    • Si 1 To de données reste une heure dans un bucket, le coût est d’environ 3 centimes.
    • Le coût peut être encore plus faible juste avant la suppression des données.
    • La valeur TimedByteStorage dans les rapports de coût et d’utilisation est déterminante.
  • Patch d’une faille similaire chez GCP

    • GCP a corrigé en 2023 une faille similaire en raison des abus des utilisateurs.
    • On peut s’attendre à ce qu’AWS fasse de même si ce type de pratique se généralise.
  • Autres conseils pour réduire les coûts cloud

    • Si vous êtes un gros client AWS, vous pouvez demander une remise.
    • Mettre tous les services dans une seule zone de disponibilité (AZ) peut aider à réduire les coûts.
    • Lorsqu’on utilise plusieurs AZ, on équilibre les AZ en fonction de la charge.
  • Alternatives au cloud

    • Au lieu d’utiliser des services cloud complexes et coûteux, on peut auto-héberger, utiliser un service sans frais de transfert de données comme Cloudflare, ou recourir à un hébergement VPS bon marché.
    • Si vous en êtes au point de devoir analyser en détail vos coûts cloud, il peut être temps de reconsidérer l’usage du cloud.
  • Complexité d’AWS et problème d’optimisation

    • AWS est tellement complexe qu’il est difficile pour les clients d’optimiser un seul paramètre isolément.
    • Si trop de gens utilisent ce genre d’astuces, AWS peut fermer la faille.
  • Alternatives en cas de forte consommation de bande passante

    • Envisagez des services comme Leaseweb, PhoenixNAP, Hetzner ou OVH, où la bande passante coûte bien moins cher.
    • Il arrive aussi qu’AWS refuse de négocier ses prix de bande passante.
  • Astuce avec ECR

    • Avec ECR, il est possible de transférer gratuitement jusqu’à 5 To par mois vers Internet.
    • Les images de conteneur doivent être publiques, mais leur contenu peut être chiffré.
    • Cela peut être utile pour stocker des archives média sur Glacier.