EMC World : John Roese, le CTO d'EMC, revient sur la plate-forme de virtualisation de stockage ViPR
A l'occasion d'EMC World, le numéro un mondial du stockage a dévoilé sa nouvelle plate-forme de virtualisation de stockage. LeMagIT s'est entretenu avec le CTO de la firme, John Roese, pour faire le point sur cette plate-forme et sur son impact potentiel sur les baies de stockage.
A l’occasion du récent EMC World, le numéro un mondial du stockage a annoncé l’arrivée pour le second semestre de ViPR, une nouvelle technologie de virtualisation de stockage destinée à simplifier l’administration de grands environnements de stockage et à faciliter leur automatisation. ViPR est une appliance de virtualisation «out-of-band» qu’EMC présente en fait comme un plate-forme de type «software defined storage». Dans sa première incarnation, elle permet de centraliser l’administration des plates-formes de stockage en mode blocs et fichiers conçues par EMC et NetApp, avec à terme le support annoncé de systèmes de constructeurs tiers comme HP ou IBM. L’idée est de permettre de gérer les ressources de stockage sous-jacentes sous la forme de pools de stockage et de permettre leur gestion et leur affectation de façon avancée à base de règles.
ViPR dispose aussi de fonctions avancées de transcodage permettant d’ajouter des fonctions de stockage objet à des plates-formes de stockage en mode bloc ou fichiers qui en sont dépourvues (l’appliance est alors bien évidemment dans le chemin de données). ViPR permet ainsi à une application d’accéder à une baie de stockage unifiée via des protocoles de stockage comme HDFS, S3, OpenStack Swift ou Atmos. ViPR est pilotable via un jeu d’API ouvertes et publiques de type RestFul.
Afin d’en savoir un peu plus sur ViPR et sur les ambitions d’EMC en matière de Software defined Storage, LeMagIT a pu s’entretenir avec John Roese, le CTO d’EMC. Ce dernier revient sur les principes qui ont guidé le développement de ViPR mais aussi sur la stratégie d’EMC en matière de plates-formes logicielles. Il revient aussi sur l’impact que ces travaux pourraient avoir, à terme, sur les architectures de stockage du constructeur.
John Roese est CTO d'EMC depuis le début du mois d'octobre 2012.
LeMagIT : Vous avez profité d’EMC World pour dévoiler ViPR, votre nouvelle solution de virtualisation du stockage. Elle semble offrir des capacités objets intéressantes mais pour ce qui est des fonctions en mode blocs et fichiers, elle ne semble guère apporter de nouvelles fonctions sinon la possibilité d’administrer les services de stockage depuis un point central. Quelle est la valeur pour vous de ViPR?
John Roese : Ce qui est intéressant avec ViPR est qu’elle ne fait peut être rien en elle même d’un point de vue stockage, mais elle sait quelles capacités existent [dans les baies sous-jacentes] et comment les classifier et les présenter. Par exemple, ViPR peut assembler une classe de service comprenant des baies de stockage primaires et des appliances de sauvegarde et les présenter comme un service de baie virtuelle. Dans l’exemple précédent, cela peut être une collection de baies VNX et de systèmes DataDomain ou Avamar. On peut même envisager d’y ajouter des éléments de disponibilité géographique en incluant des éléments Recoverpoint ou Vplex. L’idée est que l’on ne provisionne plus simplement un stockage pour une application donnée. On crée des agrégats ou des abstractions qui sont en fait des classes de services que l’on peut consommer plus facilement.
Ma plus grande question avec ViPR est de savoir où doit désormais se dérouler l’innovation. Est-ce que les baies de stockage sont désormais des composants d’infrastructure stupides ou est-ce qu’il y a toujours des fonctions intéressantes dans les baies qui sont utiles à ViPR et plus généralement, comment gère-t-on l’équilibre entre les deux. La réponse d’EMC est que les deux faces de la pièce sont importantes.
La différence entre les deux faces est que parfois un nouveau service de données peut être créé comme une abstraction dans ViPR. Dans d’autres cas, ViPR est plutôt utile pour la présentation du service, mais la réalisation de ce dernier n’est pas possible ailleurs que dans la baie.
Par exemple, nous avons une baie, qui s’appelle XtremIO, que nous allons bientôt livrer en volume. Elle a une fonction très intéressante liée à VMware qui permet de faire un Xcopy de façon très rapide. Normalement un Xcopy est une commande VMware qui génère un clone d’une VM (et donc toutes les commandes de copies de blocs associées). Dans XtremIO cette opération est instantanée. Car pour copier des centaines de milliers de blocs, on ne copie en fait que les métadonnées associées.
Cela fait de XTremIO le stockage idéal pour un service comme le VDI. Bien sûr, si on réfléchissait sur la seule base d’un coût apparent au Gigaoctet, un tel service ne serait jamais positionné sur une baie XtremIO, mais sur une baie moins coûteuse. Mais une fois que vous comprenez que cette baie embarque des capacités de la déduplication avancées et que son efficacité est très supérieure à celle d’une baie traditionnelle pour ce type d’application, il est possible de présenter intelligemment à VMware ces caractéristiques de façon à ce que VMware dise «je veux le stockage le mieux adapté pour le provisionning rapide d’une VM». Alors, les choses deviennent vraiment intéressantes.
ViPR agit comme cette couche de présentation intelligente.
L'architecture ViPR telle que présentée par EMC lors d'EMC World
LeMagIT : La seule appliance de virtualisation de stockage out-of-band du marché, aujourd’hui défunte, s’appelait Invista et elle venait aussi d’EMC. Elle a une une vie courte et n’a pas vraiment convaincu. Elle se présentait comme un service du réseau SAN...
J.Roese : Ce n’est pas le cas de ViPR. En fait nous avons appris beaucoup d’Invista et surtout ce qu’il ne faut pas faire (rires)
LeMagIT :Sous quelle forme se présente alors ViPR? Sous la forme d’appliances ? Autonomes, distribuées?
J.Roese : Il s’agit de machines virtuelles en cluster [pour l’instant seulement sous VMware vSphere, N.D.L.R.] avec un protocole de communication internœuds. Le modèle est 100 % logiciel. Ce qui ne veut pas dire qu’il n’y aura pas d’implémentation matérielle par exemple, sur VMAX nous avons de la puissance disponible et il serait possible d’embarquer ViPR sous forme de VM dans un contrôleur VMAX. Une telle configuration permettrait par exemple d’accéder à un VMAX comme à un système de stockage objet. Ce qui est pour le moins intéressant.
On a parallèlement un programme interne que l’on appelle Virtual Everything et qui vise à ce que tout service ou produit qui couple matériel et logiciel puisse à terme être séparé de façon à offrir à nos clients une option permettant un déploiement purement logiciel sous forme de machine virtuelle. Et cela couvre bien sûr nos baies de stockage qui pourraient, si le client le souhaite, devenir des offres 100 % logicielles. De façon intéressante, lorsque cette option est disponible aujourd’hui 90 % de nos clients choisissent notre matériel. Mais on sait aussi que certains clients sont ouverts à de nouveaux modèles de déploiement.
LeMagIT :Lorsque vous regardez la couche VMware, elle ne se limite plus à la virtualisation des serveurs. Avec le Software Defined DataCenter, on parle désormais de virtualisation des services réseau - avec Nicira -, de virtualisation du stockage, etc. Dune certaine façon avec VASA ou les travaux sur les vvols, ou vSAN, on peut considérer que le stockage était déjà partiellement contrôlé par VMware...
J.Roese : En fait on peut arguer qu’il n’était pas contrôlé mais plutôt consommé. Il y a vVols, VASA et un tas d’interfaces, qui malgré leurs bénéfices, contraignent toujours les administrateurs à provisionner le stockage dans les baies. Ce n’est pas automatisé et il y a toujours des couches d’administration spécifiques à ces baies. C’est ce que nous voulons simplifier et automatiser avec ViPR.
LeMagIT :Dans VMware, le commutateur distribué est remplaçable. La couche de stockage pour l’instant ne l’est pas. A première vue intéressant, il semblerait pourtant intéressant qu’une plate-forme comme ViPR se présente comme un module enfichable dans VMware de la même façon que Nicira va l’être.
J.Roese : En fait, dès son installation, il se présente comme un service compatible vvols et VASA.
LeMagIT : C’est pour cela que ViPR ne sera disponible qu’au second semestre ? Parce que vous dépendez de capacités fournies par le prochain vSphere ?
J.Roese : ViPR tourne déjà dans nos labs. Mais pour qu’il fonctionne chez les clients, nous avons effectivement besoin de la prochaine mouture de VMware vSphere. Sur ce point, vous avez raison.
Nous pensons que la meilleure façon de tirer parti de vSphere est de consommer ces nouvelles baies virtuelles qu’expose ViPR. Cela donne plus de flexibilité. Nous coordonnons nos efforts avec VMware autour de ce qu’ils appellent Storage Policy based Management [Gestion du stockage à base de règles, N.D.L.R.] pour que ,dans le futur, VMware puisse avoir une compréhension bien plus fine des caractéristiques des services de stockage exposés par ViPR. Il nous faut pour cela enrichir les interfaces de l’hyperviseur.
Une des conséquences de l’arrivée de ViPR est la simplification des architectures de stockage : aujourd’hui, les contrôleurs doivent présenter un grand nombre d’interfaces et de services et cela a un impact perceptible sur leur charge CPU. Avec ViPR on simplifie grandement les interfaces entre les baies de stockage et les serveurs, car notre plan de contrôle offre une interface uniforme. On pense ainsi qu’à terme, avec une architecture comme ViPR, on va pouvoir décommissionner ou du moins désactiver un grand nombre d’interfaces et de fonctions qui sont aujourd’hui largement inutiles dans les baies et qui consomment inutilement du CPU, accroissent les coûts, nuisent à la « scalabilité »…
En fait, comme dans tout système, si vous normalisez, il y a un bénéfice et dans notre cas, ce bénéfice consiste en la libération de cycles CPU. Eventuellement, cela permet d’envisager d’utiliser un plan de contrôle moins performant dans les baies, car une partie des fonctions de ce plan de contrôle aura été bifurquée dans un plan de contrôle de plus haut niveau.
LeMagIT :On voit aussi des efforts similaires de rationalisation dans le domaine des composants. Par exemple, avec la technologie NVMe [qui permet de raccorder directement des SSD sur le bus PCIe tout en simplifiant le jeu de commande SCSI, N.D.L.R.]. D’une certaine façon, on est en train de nettoyer des protocoles et des architectures qui sont en œuvre dans l’univers du stockage depuis près de 30 ans.
Exactement. Par exemple, dans un SSD, les travaux de garbage collection sont une fonction des disques et plus du plan de contrôle. XTremIO en tire parti à l’extrême. Leur plus grand défi en matière d’ingénierie est de définir ce qui ne doit pas relever du contrôleur de la baie et de tirer parti au maximum des innovations autour du contrôleur. C’est un vrai travail de simplification.
LeMagIT :Vous avez une taille qui vous permettrait de demander à un Seagate des composants à façon. Par exemple aujourd’hui un disque parle forcément SAS, ce qui veut dire qu’il arrive avec un bagage important de commandes qui ne sont pas forcément utiles… En trente ans, on a empilé des couches et des couches de technologies sur les autres sans forcément faire le ménage. Et ce qui est vrai pour les disques l’est pour les serveurs et même dans une certaine mesure pour les couches de virtualisation qui doivent émuler des composants qui ont bientôt près de 15 ans…
Je viens d’autres sociétés dont Nortel. Si vous regardez un standard comme LTE, il s’agit d’un exercice de séparation et d’élimination des couches redondantes [« delayering »]. Le principe de conception du standard est qu’il ne fallait pas ajouter de fonctionnalité existant déjà dans l’univers 3G. On est parti de zéro et on a mis dans le standard que ce qu’il fallait, pour fournir des services de données mobiles à haut débit. Il n’y a pas de TDM, pas de commutation de circuit, le plan de contrôle est simplifié, le « backhaul » est simplifié… Et le résultat est que LTE affiche une efficacité spectrale bien supérieure à la 3G, mais est aussi le standard mobile qui a été adopté le plus rapidement au monde, car il est simple.
Je suis un grand fan de ce type d’exercices de « delayering ». C’est d’ailleurs ce qu’à fait XtremIO. Ils ont compris et identifié les innovations nécessaires et n’ont pas cherché à dupliquer des fonctionnalités existantes. Cela requiert de la discipline, car les utilisateurs veulent toujours tout ce qu’ils ont déjà et des fonctions en plus. XtremIO a rompu avec ce modèle.
Pour revenir à votre question sur les disques durs et j’ai travaillé chez Broadcom [Roese y a été CTO jusqu’en 2006]. On travaillait sur les puces contrôleurs pour disques durs. Broadcom était alors tout à fait prêt à apporter des modifications spécifiques à ses puces et c’est en fait assez facile à réaliser pour un grand client cherchant à réaliser une optimisation spécifique.
LeMagIT :Pour aller plus loin sur ViPR, pourrait-il jouer un rôle dans l'évolution des mécanismes de tiering des baies ?
En fait, pas vraiment. ViPR est plutôt conçu pour faire du « tiering horizontal ». Je m’explique : le « tiering vertical » est ce que fait une baie en répartissant ses données entre les différents types de supports de stockage qui la composent. Il s’agit en fait de positionner au mieux les données en fonction de leur statut, actif ou inactif. C’est ce que fait très bien FAST dans nos baies. Lorsque vous faites entrer ViPR dans l’équation, vous pouvez commencer à réfléchir horizontalement. Ce n’est pas que vous ne devez plus faire de tiering vertical, au contraire. Mais maintenant, vous pouvez prendre des décisions sur le positionnement de données entre des systèmes de stockage présentant des caractéristiques différentes et qui individuellement peuvent aussi avoir des capacités de tiering interne différentes.
Par exemple, vous pouvez faire en sorte qu’une partie des données d’une application soient placées sur une baie XTremIO du fait de ses caractéristiques spécifiques de déduplication, de transactions, de latence… et placer les données moins sensibles de la même application sur une autre type de baie. On peut même imaginer des caractéristiques plus « cool » comme la possibilité de déplacer des données qui se prêtent mal à la déduplication [et donc mal à l’économie d’une baie comme une baie XtremIO] vers une baie plus adaptée à ces données.
Le fait de réfléchir de façon horizontale ouvre des possibilités fascinantes par rapport à une approche purement verticale. Mais il y a une nouvelle classe de stockage qui est entrain d’apparaître et qui rapproche la Flash des microprocesseurs comme les cartes Flash PCIe XtremSF. Imaginez que vous puissiez prendre une centaine de systèmes équipés de cartes Flash et les agréger entre elles. Et que vous ajoutiez des systèmes de gestion à l’échelle horizontale. VMware à une initiative en cours qui vise à faire cela et qui s’appelle vSAN (sur 32 nœuds). On pense que l’on peut aussi faire de la réplication horizontale, du tiering horizontal, de la résilience par distribution horizontale des données…
Et encore une fois, ViPR pourrait être la couche d’orchestration de tout cela. C’est une approche très différente des approches verticales actuelles. Il y a des applications qui n’ont pas besoin d’une baie de stockage mais qui ont quand même besoin de services de données sophistiqués, de capacités avancées de positionnement de données et de capacités d’orchestration. ViPR est neutre de ce point de vue et est capable de gérer les deux types d’infrastructures.
La Flash n’est au final que de la Flash, l’intelligence n’est pas dans le matériel. Tout est question de logiciel. Toute la question est de savoir comment en tirer parti au mieux et comment faire un système intégré. Pour l’instant on le fait sous la forme d’une approche verticale avec XtremIO, mais il y a aussi une vaste opportunité pour fournir des services de données à l’échelle horizontale. La clé est de disposer de la plate-forme pour ce faire. De façon intéressante la seule façon d’y parvenir est d’avoir des capacités d’orchestration horizontales et c’est ce qu’est ViPR.
LeMagIT :VMware a racheté Virsto et cette société avait commencé à travailler sur l’aptitude à gérer la flash à l’échelle d’un cluster…
J.Roese : Ce qu’ils ont fait avec vSAN et Virsto est une approche en fait assez verticale. Le problème est que l’on ne peut avoir une approche trop verticale à l’échelle de grands datacenters. Dès que les applications deviennent trop diverses, avoir une approche homogène pour répondre à tous les besoins devient difficile. Lorsque l’on franchit une certaine barrière, on a tendance à s’intéresser à une approche plus horizontale. Et c’est là que l’on veut de la virtualisation et de l’orchestration.
Il faut donc les outils de VMware mais aussi une couche d’overlay qui unifie des capacités de stockage diverses ce qui est le but de ViPR. Plus on monte en taille et en complexité, plus on passe d’une approche verticale à une approche horizontale. Ce qui est en fait une bonne nouvelle pour nous car EMC ne joue pas vraiment sur le marché des petites PME. Donc, le fait que VMware réponde aux besoins de ce marché et parte en chasse des acteurs du stockage sur ce marché avec une architecture de stockage vraiment simple, va permettre d’éliminer des produits qui n’auraient jamais dû exister.