Pure Storage inaugure les baies SAN qui communiquent directement en NVMe
Dotées des nouvelles extensions DirectFlash, les baies FlashArray//X donnent accès à leurs unités de stockage NVMe aussi rapidement que si elles étaient installées dans les serveurs.
Pure Storage met à jour ses baies SAN FlashArray//X avec des cartes DirectFlash qui leur permettent de communiquer directement en NVMe avec les serveurs.
Selon le constructeur, les tests menés sur la première version de ces cartes, à base d’Ethernet, afficheraient des performances 20 % meilleures qu’en Fiber Channel, le protocole habituel des SAN en réseau FCP, et encore plus si on les compare à une configuration en iSCSI.
« Pour améliorer les performances de nos baies FlashArray//M à base de SSD, nous avions lancé les baies FlashArray//X à base d’unité NVMe. Cependant, la connexion vers les serveurs se faisait toujours soit en Fiber Channel, soit en iSCSI, comme pour des SAN à base de disques durs classiques. En mettant le protocole NVMe sur la liaison avec les serveurs, nous nous débarrassons du dernier goulet d’étranglement qui nous empêchait de profiter de toute la vitesse des unités de stockage NVMe », explique Gabriel Ferreira, directeur technique de Pure Storage France. Rappelons qu’une unité NVMe supporte une bande passante 50 fois supérieure à celle d’un disque dur classique.
Du NVMe de bout en bout, sans passer par de l’émulation SCSI sur des couches réseau
D’ordinaire, les serveurs communiquent avec leurs disques durs via des commandes SCSI. Quand ces disques durs sont sur une baie externe, ils sont reliés aux serveurs soit par un réseau FCP (Fiber Channel Protocol) et communiquent avec des commandes Fiber Channel qui empaquètent le SCSI, soit via un réseau Ethernet en TCP/IP moins cher, via une version adaptée du SCSI, l’iSCSI. L’empilement de toutes ces couches protocolaires réduit le débit des communications. Et pas seulement en termes de bande passante : elles consomment aussi de la puissance de calcul puisque le processeur est à la manœuvre pour procéder à tous les encodages de données dans des paquets au bon format.
Avec les unités NVMe, qui correspondent à des composants Flash montés sur bus PCIe, les accès ne se font plus par SCSI mais via un jeu de commandes directement exécutées par le processeur et que l’on appelle, également, NVMe. Passer par de l’iSCSI ou du Fiber Channel revient donc à une perte de temps, pour ne pas dire un gâchis de ressources. Commercialement parlant, cela signifie que les entreprises ont plutôt tendance à délaisser les baies SAN au bénéfice d’unités NVMe directement installées dans les serveurs afin de donner les meilleures performances à leurs applications d’analytique particulièrement gourmandes en bande passante.
C’est pour éviter cette dérive que l’industrie du stockage, sous la bannière du consortium NVM Express, planche depuis 2016 sur le protocole NVMe over Fabric (alias NVMe oF). Celui-ci implémente la communication de commandes NVMe directement par-dessus la couche réseau la plus basique.
Du RoCE v2 pour réduire au minimum les couches protocolaires
En ce qui concerne cette première version de la solution DirectFlash, Pure Storage a choisi la couche réseau Ethernet. Afin de minimiser l’empaquetage de données, la technologie spécifiquement choisie est le RDMA over Converged Ethernet v2 (RoCE v2, qui se prononce « Rocky 2 »).
Celui-ci consiste d’une part à copier les données contenues dans la mémoire du serveur directement sur la carte contrôleur Ethernet (RDMA, ou Remote Direct Memory Access), sans passer par un encodage du système d’exploitation qui solliciterait du temps de calcul sur le processeur. Et d’autre part à utiliser une norme de l’Ethernet, le DCB (Datacenter Bridging, ou 802.1az) qui utilise le protocole UDP pour éviter la congestion et la perte des paquets.
Une alternative à RoCE v2 existait, la technologie iWarp [Internet Wide Area RDMA protocol], qui ne repose pas sur UDP mais sur TCP. L’iWarp présente l’avantage de fonctionner avec un plus grand nombre de switches, alors que RoCE v2 n’est compatible qu’avec les modèles qui le supportent spécifiquement. Il souffre néanmoins de l’inconvénient d’être moins rapide.
Selon des tests menés sur le SGBDR Oracle 18c, l’une des principales applications qui justifient l’achat d’un SAN, et présentés par Pure Storage sur un billet de blog, l’utilisation du NVMe over RoCE v2 conduirait à une baisse de 33% de l’utilisation du processeur, à des IOPS améliorés de 9% en lecture ou 12% en lecture et à une latence diminuée de 5% en lecture ou 23% en écriture.
Du NVMe sur Ethernet en attendant le NVMe sur Fiber Channel
Plus tard cette année, Pure Storage devrait lancer une seconde version de DirectFlash, basée cette fois-ci sur du réseau Fiber Channel (NVMe over FC) comme nombre d’autres acteurs du stockage. « L’avantage de commencer avec du NVMe over RoCE v2 est qu’Ethernet supporte nativement d’envoyer des paquets dans le désordre. Le protocole FCP est en revanche susceptible de perdre des paquets et nous menons encore des tests d’interopérabilité entre les différentes marques de switches Fiber Channel et de cartes contrôleur HBA pour nous assurer que cela n’arrivera pas », indique Gabriel Ferreira.
De manière pratique, les cartes DirecFlash offrent deux ports sur les 32 que peut comporter une baie FlashArray//X. Moyennant une simple mise à jour du firmware, ces baies peuvent mixer des cartes contrôleur de différentes natures pour proposer à la fois des ports FCP sur FC en 16 ou 32 Gbits/s, des ports iSCSI sur Ethernet en 25 Gbits/s, des nouveaux ports NVMe sur Ethernet en 50 Gbits/s et, bientôt, des ports NVMe sur Fiber Channel, a priori toujours sur 32 Gbits/s, bien qu’une version à 100 Gbits/s serait plus ou moins dans les cartons.
Gabriel Ferreira assure que l’utilisation d’une fabric Ethernet au lieu d’une Fiber Channel permettrait accessoirement d’équiper les serveurs de cartes contrôleurs moins chères. Il ne nous a cependant pas été possible de vérifier cette informations d’après les tarifs en vigueur des cartes Ethernet 25 Gbits/s ou Fiber Channel 8 Gbits/s que Pure Storage recommande. Il confirme néanmoins que la prochaine génération NVMe sur Fiber Channel permettra d’atteindre des performances encore meilleures.
Seuls les serveurs Linux sont pour l’heure compatibles
Enfin, précisons que, pour l’heure, seul Linux dispose des bons pilotes pour communiquer en NVMe over RoCE V2. VMware et Microsoft promettent de se doter du nécessaire plus tard dans l’année, sans toutefois s’engager sur une date.
« En tout état de cause, la cible principale de cette nouvelle offre ce sont les utilisateurs d’applications d’analytique dites Scale-Out, comme Elastic Search, Kafka et autres Cafe qui fonctionnent sur Linux. Ces applications demandent des performances telles qu’on ne les installait jusqu’ici que sur des serveurs équipés de modules NVMe en interne. Avec DirectFlash, nous leur proposons dorénavant la facilité d’un stockage consolidé sur baies externes », argumente Gabriel Ferreira.