Stockage : StorOne découpe une baie physique en tranches virtuelles
La startup propose de virtualiser tous les types de stockage – bloc, fichier, objet, performant, capacitif – depuis n’importe quel serveur rempli de disques, pour un coût deux fois inférieur à celui d’une solution dédiée.
StorOne, la startup qui prétend casser les prix du stockage avec des baies multifonction, refait parler d’elle : sa technologie vient d’être refondue autour d’un moteur de virtualisation qui accélérerait chaque application individuellement. Cette avancée permettrait notamment d’atteindre un objectif que personne n’a réellement su concrétiser jusque-là : disposer d’une baie de stockage qui soit à la fois très rapide et très capacitive, sans que cela coûte une fortune.
« Nous parvenons à stocker 1,5 Po dans un boîtier de seulement 5U, à atteindre 1 million d’IOPS par tranche de 2U. Notre système est si efficace que nous pouvons reconstruire un RAID en quelques heures à peine, là où cela peut prendre la semaine chez la concurrence. Et tout cela pour la moitié du prix de la concurrence », lance, en introduction, Gael Naor, le patron de StorOne.
Gael Naor avait autrefois fondé la startup StorWize, déjà innovante dans le stockage et grassement rachetée par IBM en 2010. LeMagIT a pu le rencontrer à l’occasion d’un événement IT Press Tour consacré aux startups israéliennes qui innovent dans le stockage.
Gael NaorPDG, StorOne
Gael Naor a la certitude que les fournisseurs de stockage font fausse route depuis dix ans. « En termes de vitesse, nous sommes passés de disques durs qui supportaient 10 000 IOPS à des SSD qui aujourd’hui grimpent à 1 million d’IOPS. Et d’une connectique réseau de 1 Gbit/s à une bande passante de 100 Gbit/s. Pour autant, les baies de stockage d’aujourd’hui sont-elles cent fois plus rapides que celles de 2013 ? Absolument pas ! »
« La raison de cette stagnation est que les processeurs des serveurs et des baies ont cessé d’augmenter en fréquences [les fameux GHz, N.D.R.] durant la dernière décennie. En revanche, c’est leur nombre de cœurs qui s’est mis à augmenter. Pour tirer parti de ce phénomène, il aurait donc fallu réécrire intégralement les systèmes d’exploitation des baies de stockage. Mais personne n’a voulu le faire. Nous, si », lance-t-il, en précisant que ses équipes planchent sur cette réécriture depuis huit ans.
Désolidariser les classes de stockage de la nature des disques
Selon Jeff Lamothe, le directeur produits StorOne, le travail de refonte d’un système d’exploitation pour baies de stockage dans lequel s’est lancé StorOne a d’abord consisté à gérer toutes les variantes à la place des utilisateurs. Le système jongle lui-même entre les différents supports physiques – disques durs, SDD en SAS/SATA, SSD en NVMe – et les modes d’accès – mode bloc, mode fichiers, mode objets – au gré des besoins.
« Nous consolidons tous les éléments dans un pool global, nous faisons une abstraction des vitesses et des capacités physiques. De sorte qu’il n’y ait plus un mode bloc lié à des SSD NVMe très rapides pour des applications qui n’ont pas toujours besoin de vitesse, ni de mode objet cantonné à des disques durs capacitifs pour des applications qui ont parfois besoin de performances. Ce silotage habituel est trop complexe à gérer, il coûte des efforts et de l’argent aux entreprises. Nous simplifions tout cela », argumente le directeur produit.
Ne plus cantonner des classes de stockage à telle ou telle caractéristique des unités physiques a été le premier pas vers la virtualisation. Au-dessus du système d’abstraction ONE Storage Engine, StorOne a mis au point un hyperviseur qui présente des baies virtuelles – appelées ici Virtual Storage Containers (VSC) – et route leurs accès vers les supports physiques les plus adaptés.
Jeff LamotheDirecteur Produits, StorOne
« Ce système de routage est si efficace que nous n’avons même plus besoin d’utiliser une zone de cache pour accélérer les accès. Ne plus utiliser de cache signifie que vous ne perdrez jamais de données même lors d’une coupure brutale du courant. Cela signifie aussi que vous avez moins de composants à acheter », argumente Jeff Lamothe.
StorOne s’est associé avec le fabricant Seagate il y a deux ans pour proposer des appliances de stockage prêtes à l’emploi. Ces appliances sont aujourd’hui mises à jour avec la version de ONE Storage Engine qui supporte les VSC. Pour autant, le système a vocation à pouvoir être installé sur n’importe quel serveur de n’importe quelle marque qui supporte, en façade ou via des tiroirs externes, au moins une vingtaine de disques.
Placer les données sur le meilleur support au meilleur moment
Le détail technique le plus saillant de ONE Storage Engine est que chaque baie virtuelle est physiquement éparpillée sur tous les disques de la baie. Dans sa présentation, StorOne prend l’exemple d’une baie Seagate contenant quatre SSD NVMe (très rapides) et quatorze unités connectées en SAS, lesquelles se répartissent en cinq SSD TLC (rapides), cinq disques durs mécaniques (capacitifs) et quatre SSD QLC (à mi-chemin entre rapides et capacitifs).
Sur cette baie physique fonctionnent trois baies virtuelles avec les vitesses respectives de 100 000 IOPS, 50 000 IOPS et 10 000 IOPS. Ces baies virtuelles supportent trois volumes : l’un en mode bloc de 35 To (accessible en FC, iSCSI ou NVMe-over-Fabric), l’autre en mode objet de 100 To (en S3) et le dernier en mode fichier (NAS en NFS ou SMB). Les volumes sont stockés sur toutes les baies virtuelles, qui sont elles-mêmes stockées sur tous les disques. Pour marier la vitesse d’accès des uns à la capacité des autres.
« Le système qui place les données sur le meilleur support au meilleur moment est appelé l’ODA (Optimized Data Placement). C’est une sorte de tiering 2.0 dans lequel toutes les écritures en provenance des applications vont d’abord sur les SSD les plus rapides. Puis, quand l’application cesse d’écrire, le système prend la main pour fragmenter les données vers les autres disques, d’où elles pourront être relues en plusieurs flux parallèles », décrit Jeff Lamothe.
On notera que l’administrateur peut néanmoins décider de cantonner certaines baies virtuelles à un seul type de disques.
vRAID, faux RAID mais vrai Erasure Coding
L’ODA présente un autre avantage : pour prévenir toute défaillance des disques, les données ne sont pas protégées par un RAID physique classique, mais par un algorithme d’Erasure Coding, appelé ici vRAID. Conçu pour la redondance des données dans un cluster, un algorithme d’Erasure Coding est beaucoup plus efficace pour restaurer un volume virtuel à partir de fragments dispersés sur tous les disques. StorOne avance un délai de 3 heures pour reconstruire un volume de 500 To, contre trois jours sur une baie de stockage classique à base de disques durs rotatifs.
Jeff LamotheDirecteur Produits, StorOne
« L’une des raisons de cette restauration rapide est que, dans un RAID classique, vous reconstruisez les données sur le seul disque de remplacement. En vRAID, les données sont reconstruites sur l’espace disponible de tous les disques présents. Le travail est donc parallélisé », dit Jeff Lamothe.
Chaque baie virtuelle a son propre vRAID, son propre protocole d’accès et ses propres performances, tandis que chaque volume a ses propres snapshots (« vSnaps ») et ses propres répliques (« vReplicate »), réalisés à son propre rythme. Selon les explications partagées par StorOne, effectuer des snapshots pour chaque volume à un rythme différent est normalement très compliqué à réaliser sur une baie classique. Car celle-ci temporise dans sa zone de cache les données en cours de tous ses volumes à la fois.
Le système ONE Storage Engine, basé sur Linux, est livré avec d’autres fonctions de plus haut niveau, notamment contre les ransomwares. Il dispose ainsi d’une fonction pour rendre les snapshots successifs immuables (le système n’autorise plus leur accès en écriture), soit jusqu’à une date donnée et à laquelle ils seront détruits, soit jusqu’à ce que l’administrateur système se soit identifié sur un système d’authentification multifactorielle.