Binkski - stock.adobe.com
Stockage et containers : pourquoi les entreprises n’arrivent pas à les marier
Les entreprises souhaitent bénéficier de la flexibilité des containers et de la fiabilité du stockage traditionnel. Mais combiner les deux technologies se heurte au manque de solutions et de méthodes de travail.
Alors que les entreprises continuent de développer leur infrastructure de cloud hybride, la relation entre le stockage sur site et les infrastructures de containers doit évoluer. Que ce soit dans la façon dont les équipes informatiques travaillent, comme dans la façon dont l’infrastructure fonctionne. C’est en tout cas le constat que font ensemble utilisateurs et fournisseurs, lesquels ont été interrogés par nos confrères de TechTarget USA dans le cadre d’une vaste enquête sur le cloud hybride.
« Le stockage que les entreprises utilisent toujours a été conçu pour dépendre d’un réseau installé derrière un pare-feu, où les équipements SAN ou NAS interagissent avec des machines virtuelles et des serveurs. Il n’a pas été conçu pour une infrastructure cloud-native, faite de containers qui visent à apporter élasticité et portabilité à des applications en cours de développement ou déjà accessibles aux utilisateurs », constate ainsi Dmitrii Ivashchenko, ingénieur logiciel et développeur de jeux chez l’éditeur My.Games.
Selon lui, les entreprises qui embrassent actuellement le cloud hybride ont un besoin urgent de technologies pour surmonter les différences, compte tenu des racines profondes du stockage dans l’entreprise et de l’attrait continu pour les containers, désormais indissociables du cloud.
Une incompatibilité technique qui reste à résoudre
Selon Vikas Kaushik, PDG de TechAhead, une société de développement d’applications mobiles, il faut repenser les processus, ceux du stockage classique, mais aussi ceux présentés pour les containers, une approche clé qui serait la seule à garantir la combinaison des deux mondes.
« Les containers sont plus flexibles, mais s’accompagnent de problèmes supplémentaires en matière de protection des données, par exemple. Une approche combinant les avantages du stockage traditionnel et des containers serait idéale et permettrait d’atténuer les problèmes de flexibilité, de protection des données et d’autres préoccupations propres aux entreprises », dit-il.
Pour Dave Rafffo, analyste au cabinet de conseil Futurum Group, cette situation, où deux technologies s’entrechoquent en attendant que l’on ait trouvé un moyen de les réconcilier, n’est pas inédite : « Ce n’est qu’une redite de la situation que les entreprises ont connue lors de l’arrivée des machines virtuelles ou, plus exactement, lorsque VMware est devenu populaire. Les fournisseurs de stockage ont dû retravailler leur équipement parce que les serveurs devaient être traités différemment lorsqu’ils étaient virtualisés. Avec les containers, c’est exactement la même chose. »
En clair, avec les VMs, il a fallu prendre en compte que plusieurs serveurs s’exécutaient depuis la même machine physique, voire pouvaient changer de machine physique. Avec les containers, il faut tenir compte de la faculté des containers à se multiplier au fil de la production, à s’éteindre sans crier gare et à faire tout ceci sans aucune inertie vis-à-vis du matériel.
Sam Werner, directeur des produits de stockage chez IBM, explique pourquoi le problème est techniquement épineux : « Faire correspondre des ressources physiques à des ressources virtuelles est beaucoup plus simple avec des VMs qu’avec des containers. Chaque VM a son volume de stockage, ce qui permet de créer des groupes cohérents dans le stockage, de mettre en place des snapshots, du mirroring, etc. Avec les containers, il n’y a plus cette correspondance. Le fonctionnement est beaucoup plus dynamique : les applications containerisées peuvent correspondre à des milliers de volumes. »
Des solutions techniques existent, mais sont trop jeunes
Pourtant, des solutions existent, comme le système de stockage Portworx qui a été développé à partir des containers et non en amont.
« Certes. Mais le problème est que les entreprises n’utilisent pas encore ces solutions-là, car elles considèrent qu’elles continuent de travailler de manière classique, que leur usage des containers est encore trop marginal pour changer les technologies », pointe Dave Raffo.
« Quand les besoins en stockage pour containers seront suffisamment importants, les produits de stockage sur site tels que Portworx ou d’autres systèmes de stockage spécifiques aux containers feront leur entrée dans les commandes », ajoute-t-il.
Selon les experts, l’inconvénient de Portworx, surtout, est qu’il est pour ainsi dire unique. Il est encore trop tôt pour que les entreprises puissent le comparer à des concurrents, voire pour qu’elles aient la garantie qu’il fonctionne de la manière idéale.
IBM comme Supermicro estiment par exemple qu’une solution plus efficace viendra d’un SDS, c’est-à-dire un système qui virtualise toutes les fonctions d’une baie de stockage à partir d’équipements génériques.
« Une approche SDS permet de faire abstraction de tout matériel et de créer des politiques pour respecter les accords de niveau de service sans modifier le système existant », commente Paul McLeod, ingénieur applications chez Supermicro.
« Surtout, l’histoire a montré que l’approche SDS permet aux fournisseurs de faire preuve d’une plus grande innovation dans la conception de leur offre, avec un meilleur support pour les logiciels, d’une part, et pour le matériel, d’autre part », ajoute-t-il.
Il y a surtout des problèmes de méthodes entre les équipes
Dmitrii Ivashchenko en appelle aux administrateurs de stockage pour trouver sur le marché des solutions. Selon lui, « ils ont un profil essentiel pour servir de pont entre deux technologies conçues pour des époques informatiques différentes. Ils ne doivent pas se contenter de dire qu’ils ne comprennent pas assez les subtilités des containers pour proposer des solutions. »
« Quelle que soit la technologie, à mesure que la relation entre les containers et le stockage évoluera dans l’entreprise, ce sont les administrateurs de stockage qui joueront le rôle de pivot », insiste-t-il.
Sam Werner nuance cette pensée. Selon lui, ce n’est pas tant que les administrateurs du stockage seraient les mieux placés pour résoudre les incompatibilités entre stockage traditionnel et containers modernes. C’est surtout qu’il leur incomberait d’abord, à eux plus qu’à quiconque, de changer de mentalité pour faire avancer les choses.
« Si vous dépendez toujours des administrateurs de stockage pour aller chercher votre stockage et allouer certaines quantités de capacité dans le cadre d’un SLA [accord de niveau de service, N.D.R.], vous allez vous heurter aux mêmes obstacles que d’habitude », dit-il. Il pointe un paradoxe : l’informatique en cloud promet la flexibilité de l’infrastructure, mais le stockage sur site oblige les utilisateurs à attendre que l’administrateur du stockage mette en place l’infrastructure nécessaire.
Mais selon lui, il ne s’agit là que de la première partie du problème. Qui en entraîne une seconde : face à des processus qui ne leur conviennent pas, les équipes de développement font le pari de se débrouiller seules.
« Le scénario classique est celui des équipes responsables des applications qui décident de mettre en place un environnement DevOps, en modifiant leur modèle de développement d’applications pour qu’il soit plus agile (c’est-à-dire avec une méthodologie du type “je construis une fois, je déploie partout”). Mais ces équipes n’ont jamais parlé de cela à l’équipe responsable de l’infrastructure. »
Parmi les problèmes qui se posent, il devient impossible de sauvegarder une application avec les outils VMware habituels, ou d’utiliser l’habituel vMotion pour déplacer des données vers des ressources disponibles.
« Ce manque de communication entraîne un manque de visibilité », indique Dave Raffo. « Les administrateurs de stockage sont chargés de maintenir les politiques de protection des données et d’adhérer aux politiques de gouvernance. Mais s’ils ne savent plus ce dont les équipes chargées des applications ont besoin, une partie de ces tâches sera effectuée après coup, ce qui réduira leur efficacité. »
Pour éviter ces écueils, les équipes responsables de l’infrastructure et celles des applications doivent obligatoirement se rencontrer avant le déploiement de toute application.
« Les équipes DevOps doivent fournir une vision claire de ce dont elles ont besoin, ou admettre que leurs projets seront ralentis. Il est essentiel que les administrateurs sachent à l’avance quelles politiques sont nécessaires », conclut Dave Raffo.