Le nerf de la guerre, combien est ce que cela nous coûterais?

Dans ce premier volet, on va essayer de démistifier un petit peu le fonctionnement des coûts pour nos trois fournisseurs. On y crois chez toto corp alors on n’hésite pas sûr la qualité des produits et l’infrastructure, comme dirait Hammond: « J’ai dépensé sans compter ! »… On verra aussi les outils mis à notre disposition afin de pouvoir optimser les coûts.

Amazon Web Service (AWS)

Pour notre exemple ici nous allons utiliser la région eu-west-1 (Irlande), c’est la plus importante d’Europe et aussi la moins cher. Pour rappel, tous les services/type d’instance ne sont pas disponible dans toutes les régions (peuvent même être spécifique aux AZ) et même la tarification varie en fonction de votre région.

estimation réalisé à partir du pricing calculator d’AWS

La facturation chez AWS est assez complexes, mais j’ai eu l’opportunité de travailler sur des projets de plutôt grande envergure, ce qui m’a permit de manipuler plusieurs de leurs outils et mieux appréhender tout ça… je ferais probablement un article dédié… plus tard ^^

Nous disions donc…

  • 1 équilibreur de charge pour recevoir le trafic
  • 8 serveurs pour traiter les requêtes
  • 1 base de donnée pour stocker les données relative à l’application

Je vais, dans le tableau ci-dessous, calculer le coûts de chacune de ces pièces, et je vais aussi vous proposer une alternative pour optimiser ces coûts. Pour cela je vais utiliser les outils ci-dessous fournit par nosamis américains afin de nous permettre de réduire nos dépenses.

  • Les Reserved Instance (RIs): qui nous permettent d’acheter ces instances en avance et de bénéficier de réduction.
  • Le « saving plan » qui permet d’acheter de la puissance sur plusieurs années sans tenir compte du type d’instance.
  • Les instances de type spot, qui sont des instances que AWS peut récupérer quand il le souhaite, mais on peu avoir jusqu’à 90% de réduction alors…
ressource caractéritiques quantité prix (€/mois) total après 3 ans optimisation total optimisé après 3 ans
équilibreur de charge LB classique 1 15 540 aucune 540
machines virtuelles EC2 – m5.xlarge (150Go ebs gp2) 8 1150 41 400 Spot instance 17 334
DB managé RDS – cpu: 4, mem 16 Go, multiAZ, disk: 135 Go 1 506 18 216 RIs – 3 ans -full 9 335

Dans ce tableau on va donc retrouver tout d’abord, un load Balancer classique parce qu’ici il n’est pas nécessaire d’avoir un ALB ou un NLB, et leur facturation un peu peu plus complexe.

On retrouve ensuite EC2 (Elastic Compute Cloud) qui est le service de provisionnement de VM et nos 8 m5 (dernière génération, quand j’écris cet article) de machine à usage général avec des processeurs intel (ils ont pas mal innové sur la génération 5), et leurs disques (EBS) gp2, qui sont des ssd.

Enfin nous retrouvons notre base de donnée RDS, ici je n’ai pas opté pour aurora car, bien que je l’ai utilisé massivement (DB de plusieurs To et centaine de milliers d’iops) c’est un service qui n’est pas proposé par ses concurrent alors, pour garder le jeux équitable point vue coûts on restera sur du RDS PG 🙂

mensualité total après 3 ans total optimisé après 3 ans
TOTAL 1 671 € 60 156 € 27 209 €

Donc si vous suivez toujours, on vient de s’offrir 32 947€ (-54%) avec nos optimisations… Mais surtout, on a toujours notre capacité à grossir car il n’y a pas d’engagement sur les spot instances et les engagements (RIs ou saving) sont convertibles, ce qui veut dire que si vous devez doubler la taille de votre base de donnée, ce que vous avez acheté n’est pas perdu, soit vous avez la moitié qui n’est pas « discounté » soit vous acheter la différence en saving/RIs et c’est reparti 🙂

La mécanique de facturation chez AWS n’est pas forcément très simple à appréhender au premier abord, mais elle permet vraiment de faire des économie importante si on sait bien l’utiliser… On vient quand même de se faire une réduction de sans impacté notre infrasctructure ni rien changer dans notre code…

Google Cloud Platform (GCP)

Pour notre exemple ici nous allons utiliser la région eu-west1 (Belgique), c’est la plus importante d’Europe et aussi la moins cher. Pour rappel, comme AWS, tous les services/type d’instance ne sont pas disponible dans toutes les régions (peuvent même être spécifique aux AZ) et même la tarification varie en fonction de votre région.

estimation réalisé à partir du simulateur de coûts de GCP

GCP a beaucoup moins de systèmes de facturation et je serais tenté de dire qu’elle est plus simple… On paie à l’heure, et si on utilise une machine tout le temps, on a une réduction automatique sur l’usage (~30%). On retrouvera quand même le système de réservation que nous avons vu chez AWS et les instances préemptibles.

Nous disions donc…

  • 1 équilibreur de charges pour recevoir le trafic
  • 8 serveurs pour traiter les requêtes
  • 1 base de donnée pour stocker les données relatives à l’application

Je vais, dans le tableau ci-dessous, calculer le coûts de chacune de ces pièces, et je vais aussi vous proposer une alternative pour optimiser ces coûts. Pour cela je vais utiliser les outils ci-dessous fournis par nos amis américains afin de nous permettre de réduire nos dépenses.

  • Les engagements: qui nous permettent d’acheter ces instances en avance et de bénéficier de réductions.
  • Les instances de type préemptibles, qui sont des instances que GCP peut récupérer quand il le souhaite, mais on a une réduction importante alors…
ressource caractéritiques quantité prix (€/mois) total après 3 ans optimisation total optimisé après 3 ans
équilibreur de charge Load Balancer 1 15 540 aucune 540
machines virtuelles e2-standard-4 + standard ssd 150Go 8 728 26 208 préemptible 17 334
DB managé CP-DB-PG-CUSTOM-4-16 + 135Go 1 373 13 428 engagement 3 ans 7164

Dans ce tableau on va donc retrouver tout d’abord, un Cloud load Balancer. Chez GCP, il n’y a qu’un seul type de LB et ils ont la particularité d’être disposés au niveau mondial, c’est à dire qu’ils ne sont pas attachés à une région en particulier.

On retrouve ensuite nos VM 8 E2 (dernière génération, quand j’écris cet article)  à usage général à processeurs variables, la puissance de calcul est assurée mais la famille de processeurs va dépendre du centre de donnée où l’instance a été créé.

Enfin nous retrouvons notre base de donnée Cloud SQL, sur postgres le type d’instance est customisable, c’est à dire que l’on choisit exactement le nombre de processeurs et de mémoire que l’on veut… A noter qu’il y a un ratio cpu/mem min et max à respecter.

mensualité total après 3 ans total optimisé après 3 ans
TOTAL 1 116 € 40 176 € 25 038 €

En regardant la colonne après optimisation on a réussi à économiser 15 138€ (-38%) avec nos optimisations… Mais surtout, comme AWS, on a toujours notre capacité à grossir car il n’y a pas d’engagement sur les instances préemptibles.

La mécanique de facturation chez GCP est plus jeune donc dispose de moins de leviers cependant ils pratiquent des tarifs déjà très agressifs grâce à la remise automatique à l’usage (applicable sur les instances VM et les Cloud SQL)

Scaleway

Scaleway ne pratique pas de différences de prix entre ses différentes région, ce qui rend la tarification plus simple et plus prédictible cependant, contrairement aux deux autres que nous avons vus ici, il y a beaucoup moins de customisations possibles comme les disques prédéfinis (on peut en ajouter d’autre) et bande passante faible mais non facturée à la consommation

estimation réalisé à partir de la page tarifaire de Scaleway

Scaleway, le petit poucet (pas si petit, puisque c’est tout de même une filliale d’Illiad, infos: ici) Français qui commence à faire parler de lui, et je pense que ce n’est pas fini. Malheureusement, ils n’ont pas d’outils d’optimisation financière on va donc passer directement au calcul, voyons un peu ça…

Nous disions donc…

  • 1 équilibreur de charge pour recevoir le trafic
  • 8 serveurs pour traiter les requêtes
  • 1 base de donnée pour stocker les données relative à l’application
ressource caractéritiques quantité prix (€/mois) total après 3 ans
équilibreur de charge LB-GP-L 1 61 2196
machines virtuelles GP1-XS 8 500 18 000
DB managé DB-GP-XS 1 193 6 948

On va donc retrouver tout d’abord, notre load Balancer. Chez Scaleway le prix du load balancer dépend de la bande passante qui lui est allouée, dans notre cas, on va quand même s’allouer un petit Gbit/s (125Mo/s) parce qu’on a 8 serveur qui ont chacun 500Mbit/s d’alloués, bon je suis pas super satisfait de ça mais c’est de la tech, on est sur le financier là alors on en parlera plus tard…

On retrouve ensuite nos VM, 8 GP1-XS. Je trouve un peu dommage l’incapacité de redimensionner les disques et le fait que l’on ne puisse pas profiter d’un grosse bande passante, quite à payer.

Enfin nous retrouvons notre base de donnée managée, 1 DB-GP-XS. Là aussi, un petit manque de customisation mais à ce prix là… 🙂

mensualité total après 3 ans
TOTAL 754 € 27144 €

Conclusion du round 1 – les coûts

Sans optimisation financière

1 Scaleway 27 144 €
2 Google Cloud Platform 40 176 €
3 Amazon Web Service 60 156 €

Sans optimisation financière on retrouve sans grande surprise notre petit poucet avec ses tarifs très compétitifs, suivi par GCP et AWS… Mais qu’en est-il après avoir mis en place nos petites optimisations ?…

Avec optimisation financière

1 Google Cloud Platform 25 038 €
2 Scaleway 27 144 €
3 Amazon Web Service 27 209 €

Conclusion

Eh bien en tirant partie des divers outils mis à disposition par nos deux géants, la compétition se resserre dangereusement pour Scaleway qui se voit voler la première place par Google et AWS le rattraper à quelques euros…

On y est, le round est terminé… Aussi, voilà mon classement, pour ce premier round sur les coûts:

1 – GCP & Scaleway

Bon ok, c’est peut-être pas très bien de commencer le premier round avec des ex aequos mais objectivement j’ai un peu de mal à les départager pour la simple et bonne raison que GCP sera très avantageux pour des personnes ayant les capacités d’analyser, de se projeter et d’utiliser tous ces différents outils, ce qui n’est pas forcément très simple et peut sur le long terme finir par coûter en réalité beaucoup d’argent…

Quand Scaleway a simplement des tarifs agressifs de base et permet aux entrepreneurs de ne pas s’arracher les cheveux avec tous ces calculs… Voilà pourquoi j’ai envie de les mettre ex aequo, après c’est que mon avis hein 😉

2 – AWS

AWS, sans trop de surprise, est bon dernier ici mais il est connu pour être cher, plus cher que les autres du moins… Est ce à raison, on le verra dans les autres pages de cet article… 🙂

L’auteur

Charles-Alban, en quelques mots:

Je suis passionné de technologie et tout particulièrement d’architecture de système cloud et de base de données. De formation ops, j’ai fait évoluer ma carrière en qualité de DevOps pour ensuite devenir Data engineer.

J’aime tout particulièrement les start-up, j’aime créer les choses de zéro ou presque et les concevoir de manière scalable, sûre et performante. C’est pour cela que j’adore mon rôle de consultant qui me permet de travailler en collaboration avec des start-up différentes et les aider à se développer et leur apprendre comment tirer parti des ressources qu’offre le cloud aujourd’hui !