Tomasz Zajda - Fotolia

SanDisk et Nexenta inventent la baie Flash surpuissante en kit

En assemblant le tiroir disque de l’un et le logiciel de stockage de l’autre sur un serveur x86 sans ASIC, on obtient une alternative peu chère aux baies de stockage ultra rapides des grandes marques.

Les jours sont comptés pour les baies de stockage Flash hors de prix. SanDisk et Nexenta viennent ainsi de lancer un modèle qui fait aussi bien, voire mieux que les « All-Flash-Array » des grandes marques et, surtout, qui coûte 1,56 dollar le Go de stockage, contre environ 3 à 5 dollars chez EMC, NetApp ou 3PAR. Le secret ? Cette baie est un assemblage de produits achetables séparément dans le commerce. Comme les PC à monter en kit des années 90, bien moins chers que les configurations toutes intégrées des grands fabricants.

L’assemblage d’un JBOD, d’un serveur x86 et d’un OS

Élément le plus important de cette solution, le SanDisk IF100 n’est d’ordinaire qu’une sorte de gros disque SAS externe (un JBOD) ultra rapide : un tiroir 3U, rempli à ras bord de 64 cartes PCIe en NAND Flash de 8 To chacune (soit 512 To) et affichant une performance record d’un million d’IOPS. Sa fonction habituelle ? Permettre au serveur auquel il est relié en SAS d’exécuter plus vite telle base de données, ou tels postes virtuels en VDI. Comme les solutions de Violin Memory, en somme. Si ce n’est que le tiroir 3U Concerto 7300 de Violin n’offre, lui, que 70 To.

Vendu en bundle avec un serveur x86 doté du système NexentaStor 4.4, l’IF100 n’est plus un JBOD. Il devient une vraie baie All-Flash-Array, qui fournit au datacenter  les modes bloc et fichier. Qui supporte jusqu’à 2 Po de capacité brute en enchaînant 3 autres tiroirs IF100 en SAS. Qui offre la réduction de données en cours d’écriture (pour virtuellement augmenter la capacité, bien entendu, mais aussi pour préserver les cellules Flash qui ne sont pas réinscriptibles à l’infini), la parité des nœuds pour les applications Big Data, le thin provisionning, les outils de supervision et de gestion des événements, la réplication asynchrone entre sites ou encore l’hybridation vers des clouds de stockage externes (les protocoles vCloud Air, OpenStack et autres CloudStack seraient supportés).

NexentaStor est un OS, d’origine Open Source, peu cher, qui s’exécute sur du matériel générique, c’est-à-dire un serveur x86 simple, sans cet ASIC particulier qu’on trouve dans les baies de marque. Sur les prototypes montrés à la presse, le bundle de Nexenta-SanDisk comprenait tantôt un serveur PowerEdge R730 de Dell, tantôt une configuration SYS-6028U-TR4+ de Supermicro. Les revendeurs qui intégreront la solution finale chez le client choisiront eux-mêmes le modèle de machine x86 qui exécutera NexentaStor. Attention tout de même à prévoir assez de puissance pour supporter le débit des IF100 : le serveur Supermicro donné en exemple contient deux Xeon E5 et 1,5 To de RAM.

Plusieurs modules pour la baie en kit

Le bundle présenté par SanDisk et Nexenta est surtout un proof-of-concept, c’est-à-dire la démonstration que quiconque peut désormais assembler à la carte le nec-plus-ultra en matière de baies de stockage. En pratique, il permet surtout à Nexenta, dont on ne parlait plus trop depuis un an, de se faire un nom dans le monde des baies de stockage à monter soi-même.

Ainsi, en marge de son annonce conjointe avec SanDisk, Nexenta présentait déjà d’autres configurations, cette fois-ci basées sur des disques SSD plus classiques, de marque HGST (des Ultrastar 800 Go et 1,6 To) et un serveur Supermicro qui ne contient « plus que » 256 Go de RAM. L’intérêt de cette configuration est que le stockage est extrêmement modulaire, Supermicro fournissant des tiroirs de 24, 48 ou 72 disques.

Basé sur OpenSolaris et le système de fichiers ZFS, tous deux d’origine Sun, NexentaStor s’est initialement fait connaître pour sa capacité de « scale-out », à savoir étendre dynamiquement la capacité d’un volume logique à chaque fois que l’utilisateur ajoute des disques. Il y a un an, la sortie de la version 4.0 de ce qui s’appelait encore Nexenta OS, avait juste donné lieu à une machine virtuelle Nexenta Connect qui permettait aux appliances EVO:Rail de Dell de partager leur volume bloc VSAN en mode fichier avec le reste du datacenter.

NexentaStor n’est pas le seul logiciel à proposer de coller des fonctions de stockage sur du matériel générique. Chez EMC, ScaleIO sert à transformer tous les disques d’un réseau de serveur x86 en SAN géant (mode bloc) et ViPR Controller transforme à son tour la ressource donnée par ScaleIO en stockage fichier ou objet. VSAN et SANsymphony sont les équivalents chez VMware et Datacore de ScaleIO, tandis que Ceph l’équivalent dans le monde Open source de ViPR. Tous font partie de la galaxie SDS, ou Software Defined Storage. Nexenta a d’ailleurs profité de la sortie de la baie-bundle avec SanDisk pour dire que son système était de « l’openSDS ».

SanDisk, qui propose aussi des bundles alternatifs, a d’ailleurs à son catalogue une baie IF500 orientée stockage objet ; celle-ci est identique au bundle précédent, si ce n’est que Ceph - sous l’égide d’un Linux Ubuntu - remplace ici NexentaStor. 

De puissants modules Flash à l’horizon

Pour sa part, le JBOD IF100 n’est autre que l’évolution du ION Accelerator, une appliance issue du rachat de Fusion-io en 2014 et qui devait regrouper dans un module externe plusieurs cartes PCIe de stockage Flash maison. Le principal avantage de cette solution est son extrême densité : une X-Brick, la brique de base de la baie Flash XtremIO d’EMC, contient 40 To de capacité et un double contrôleur dans 5U, là où le bundle IF100 (3U) + serveur Supermicro (2U) offre 512 To.

Différents acteurs sont sur les rangs pour proposer des technologies Flash au moins aussi denses. Citons Samsung avec ses mémoires 3D TCL NAND, lesquelles devraient équiper de nouveaux disques SSD de 4 To de capacité. Également les mémoires 3D Xpoint d’Intel et Micron qui, elles, seront 1000 fois plus rapides que celle des SSD. Les formats NVME qui, eux aussi, concentrent de la mémoire Flash sur PCIe. Ou encore DSSD d’EMC qui consiste, avec des puces Flash, à externaliser dans le même tiroir de la mémoire additionnelle pour tous les serveurs connectés.

 

Pour approfondir sur DevOps et Agilité

Close