IaaS : les hyperscalers mis à l'épreuve des coûts et des performances
Publié par Clément Bohic le | Mis à jour le
L'écart se resserre entre AWS, Azure et GCP dans le dernier benchmark IaaS de CockRoach Labs. Sur quels éléments la différence se fait-elle ?
Nom : c5a.4xlarge. Nature : machine virtuelle. Fournisseur : AWS. Particularité : obtient le meilleur rapport prix/transaction sur le benchmark OLTP de CockRoach Labs.
Ce benchmark s'inscrit dans une démarche plus large que l'entreprise américaine a menée pour la troisième année consécutive. En l'occurrence, la mise à l'épreuve des offres IaaS d'Amazon Web Services, de Google Cloud et de Microsoft.
D'une année sur l'autre, les outils de test ont tous changé. Sur la partie calcul, CoreMark a remplacé stress-ng. Pour le réseau, Netperf a supplanté le duo iPerf-ping. Pour le stockage, Sysbench a laissé place à FIO.
CockRoach Labs admet que ses indicateurs souffrent de biais. Il n'a, par exemple, pas la main sur l'emplacement exact des VM, ce qui peut jouer sur la latence réseau. Côté stockage, ses expérimentations n'ont pas tiré parti de certains éléments, comme le cache en lecture sur Azure ou la maximisation des IOPS sur une partie des disques d'AWS.
Un bon point pour Arm.
Qu'en est-il sur le volet calcul ? À l'échelle des 54 VM testées, les processeurs Intel se distinguent en performance monocour. En revanche, en multicour, les indicateurs sont plus favorables pour AMD. Et encore plus pour les seules puces Arm du benchmark : les Graviton2 d'AWS.
Les différences entre les hyperscalers sont nettement plus importantes sur la partie réseau. Comme l'an dernier, GCP offre, en moyenne, beaucoup plus de bande passante. En la matière, sa meilleure VM dépasse de 165 % la référente d'AWS et de 237 % celle d'Azure. C'est, note CockRoach Labs, cohérent avec les débits théoriques qu'affichent les trois fournisseurs pour les VM à 16 vCPU (le maximum testé). GCP annonce jusqu'à 32 Gbps ; AWS, jusqu'à 10 ou 25 Gbps ; Microsoft, jusqu'à 8 Gbps.
Dans la pratique, il est ressorti quelques anomalies. Notamment chez AWS : les VM c5n.4xlarge, m5dn.4xlarge et m5n.4xlarge, axées sur la performance réseau, n'ont délivré en moyenne que 5 Gbps sur environ la moitié des tests. Entre GCP et Azure, c'est ce dernier qui s'approche le plus du plafond de bande passante promis.
AWS se distingue, au contraire, positivement sur la latence. Au 90e percentile, sa meilleure VM (c6g.4xlarge) en est à 40 µs. Soit respectivement 28 et 37 % de moins que les meilleures sur Azure et GCP.
. et pour les disques standard
Les tests sur la partie stockage ont inclus quelques disques locaux. CockRoach Labs a toutefois donné, plus que les années précédentes, la primauté au NAS. En différenciant les disques « standard » des disques « avancés ». Ces derniers s'appellent io2 chez AWS et ultra chez Microsoft. Google Cloud a quant à lui la gamme Extreme PD. Mais celle-ci n'était pas disponible au moment du benchmark.
Les disques io2 permettent d'ajuster la limite d'IOPS. Comme les ultra, qui permettent aussi de jouer sur la bande passante. CockRoach Labs reconnaît ne pas les avoir exploités à leur plein potentiel : il s'est arrêté à des configurations de 2,5 To par disque, à 5400 IOPS et 300 Mbps.
En termes de coût mensuel, les disques EBS GP2 d'AWS s'en tirent le mieux. Ses io2 font de même dans la catégorie « avancée ». Les disques standard de GCP (pd-ssd) apparaissent comme un bon parti, avec des performances à peine plus faibles que des concurrents plus onéreux.
Chez les trois hyperscalers, il existe globalement une corrélation entre le coût du stockage et ses performances en IOPS. C'est également - plus ou moins - vrai concernant la bande passante. Point sur lequel Google se détache là encore, en lecture comme en écriture. Notamment parce que les limites qu'il fixe dépendent de la taille du disque. Et non, comme chez AWS et Microsoft, du nombre de vCPU et du type de disque.
OLTP : GCP leader sur la performance, AWS sur les coûts
Sur le benchmark OLTP, l'instance c2-standard-16 de Google Cloud l'emporte en nombre de tpm (transactions par minute), bien qu'elle ait les pires performances en I/O. CockRoach Labs l'explique par une sous-utilisation du stockage lors de ses tests.
En calculant le rapport $/tpm sur la base des tarifs à la demande, l'instance c5a.4xlarge que nous évoquions plus haut l'emporte. Avec des disques standard, elle revient à 0,81 $/tpm. Sur Azure, c'est 0,95 $/tpm au minimum (VM Standard_F16s_v2 avec disques ultra). Chez GCP, 0,92 $/tpm (VM n2-highcpu-16 avec disques standard).
Illustration principale © viperagp - stock.adobe.com