5 Ce n’est pas tous les jours qu’on surfe sur la vague d’une mutation technologique fondamentale. J’aimerais vous expliquer un peu comment je garde la tête hors de l’eau. J’ai découvert le stockage partagé avec la première gamme HP EVA. C’était assez génial : une seule interface web conviviale permettait de passer de la mise sous tension à la production en quelques heures. Des LUN (Logical Unit Numbers) si vastes qu’ils pouvaient héberger plus de 20 machines virtuelles étaient automatiquement répartis sur des centaines de disques, exploitant la capacité et les performances cumulées pour offrir ce qu’on finirait par appeler des « clouds privés ». Des réseaux Fibre Channel (FC) dédiés, isolés et redondants garantissaient une livraison efficace des données même sous la charge la plus extrême. Au fil des ans, ces clouds privés ont connu une croissance exponentielle. N’importe qui disposant d’une carte bancaire et d’une dizaine de minutes pendant sa pause déjeuner peut lancer 20 machines virtuelles. Les données non structurées distancent les données plus traditionnelles depuis des années, et la ligne d’arrivée se situe désormais au niveau de l’exaoctet. J’ai fait le tour des fournisseurs de stockage pour grandes entreprises, en travaillant avec certaines des baies les plus grandes, les plus rapides et les plus impressionnantes du marché. Ces mastodontes à la latence inférieure à la milliseconde, capables littéralement d’encaisser une balle et de continuer à tourner, garderont toujours une place à part dans mon cœur, mais j’ai récemment décidé de faire un bond en avant et de monter dans le train du stockage software-defined massivement évolutif. Je suis loin d’être un gourou, mais j’aimerais partager avec vous une partie du cheminement intellectuel qu’exige le passage d’un monde à l’autre. J’apprends encore chaque jour, mais voici quelques-uns des principaux obstacles mentaux que j’ai dû franchir : Le RAID est un handicap. Autrefois, les disques de parité me rassuraient, et les disques de secours m’aidaient à dormir la nuit. La protection RAID est un choix solide pour un système de stockage unique, dans un seul rack, au sein d’un seul datacenter, qui sert les données d’une seule application. Mais dès que l’échelle augmente, les problèmes apparaissent. Il est aujourd’hui courant de regrouper les groupes de disques pour simplifier la gestion. La perte d’un seul groupe RAID dans une baie FC moderne provoque l’arrêt complet du système, je l’ai vu de mes yeux. Il suffit que 2 ou 3 disques tombent en panne en même temps pour que quelqu’un reçoive un appel à 3 h du matin pour gérer la panne et tenter de la résoudre au plus vite. Pour s’en prémunir, les administrateurs système doivent protéger leurs données par RAID sur un système de stockage principal, tout en maintenant des copies complètes répliquées sur un système secondaire sur site. Si les données sont critiques, elles sont aussi répliquées vers un autre système dédié hors site. Soit 3 copies complètes de vos données sur des systèmes qui perdent déjà 25 % de leur capacité à cause du RAID-6. Concrètement : 100 To de capacité utile sur une baie partagée avec des groupes de disques R6 (6+2) exigent environ 133 To d’espace disque brut. Il faut ensuite en faire un snapshot local vers un système de secours dans le même datacenter et le répliquer hors site pour la reprise après sinistre. Soit 400 To de stockage brut pour héberger une application de 100 To. Ajoutez-y les commutateurs FC, la charge de gestion du clustering et du basculement, voire des sauvegardes locales pour éviter qu’une corruption ne se réplique. Cela fait beaucoup de système pour peu de données. De nouvelles méthodes de protection des données sont en préparation depuis des années, et les deux plus pertinentes dans un système distribué sont l’erasure coding logiciel et les réplicas en copie complète. Chacune a ses forces et ses faiblesses, c’est pourquoi il est important que les systèmes de stockage modernes prennent en charge les deux, avec une attribution automatique des politiques selon des critères comme la taille des fichiers et le point d’accès. Il y aurait de quoi écrire un article entier sur le sujet, mais sachez simplement qu’on parle désormais de surcoûts de l’ordre de 28 %, contre les 300 % évoqués plus haut, avec des niveaux de disponibilité supérieurs de plusieurs ordres de grandeur à ceux du stockage traditionnel. Le monde ne tourne pas à la microseconde. SAP HANA. Oracle. HPC. Ce sont des environnements qui se nourrissent d’IOPS (opérations d’entrée/sortie par seconde) et de très faible latence. Les systèmes qui les prennent en charge sont très impressionnants et très chers. Ils conservent une place essentielle dans le datacenter, mais c’est un coin qui rétrécit, éclipsé par l’échelle incroyable des données non structurées créées et consommées par les utilisateurs du monde entier. Quand je m’installe pour regarder le dernier épisode de Game of Thrones en streaming, je le veux tout de suite. Je ne compte pas regarder une roue tourner pendant 10 minutes le temps que le contenu se charge. Je peux en revanche tolérer une petite marge : disons une vingtaine de millisecondes pour que le backend récupère les premiers octets, et encore quelques secondes pour que la lumière traverse le pays jusqu’à mon salon. C’est ce type de données qui se généralise dans le datacenter, et l’accessibilité, la facilité de gestion et la simplicité de montée en charge priment sur des performances inférieures à la milliseconde. Il faut commencer à penser la performance autrement, en termes de capacité d’un système de stockage à fournir les contenus au niveau des attentes de l’utilisateur final, ou mieux. Vous entendrez de plus en plus parler d’« objets par seconde » (OPS). Le débit restera un indicateur clé de performance, produit des OPS par la taille des données livrées. Le spécialisé n’est pas le Saint Graal. Administrateurs d’applications et architectes du stockage ne sont pas toujours d’accord, mais ils poursuivent un objectif commun : générer du chiffre d’affaires et réduire les risques. Il leur arrive de s’affronter pour atteindre la même destination : les équipes applicatives veulent que leur application tourne dans l’environnement le plus efficace, disponible et performant possible. Elles veulent déployer davantage de ressources quand elles le souhaitent, et que tout fonctionne. Les équipes stockage veulent respecter leurs SLA sans construire un nouveau datacenter à chaque nouvelle initiative. Ces dernières années, les équipes applicatives ont contourné les processus d’achat traditionnels du stockage en achetant elles-mêmes leurs systèmes. Elles ont du budget et de l’influence. Récemment, les entreprises ont commencé à sévir contre ce « Shadow IT », et les systèmes finissent par revenir dans le datacenter. Et devinez qui doit les gérer ? Eh oui, l’équipe stockage. Ne serait-il pas formidable que l’équipe stockage puisse fournir aux équipes applicatives exactement les charges de travail dont elles ont besoin, accessibles via les protocoles qu’elles veulent, dans des délais qui ne retardent personne ? Des achats ponctuels de solutions à usage unique peuvent dépanner, mais ils nuisent aux objectifs à long terme de toutes les parties. Une solution polyvalente et multiprotocole, bâtie sur du matériel standard pour répondre aux multiples besoins d’un secteur, voilà le Saint Graal, et elle est prête dès aujourd’hui. Et ensuite ? À mesure que la part des données non structurées augmente par rapport aux données structurées, la part des systèmes de stockage conçus pour les premières augmentera aussi. Je ne crois pas que les baies de stockage dédiées vont disparaître. Je pense même que les grands fournisseurs de stockage préparent des innovations vraiment intéressantes pour créer des systèmes toujours plus puissants, capables de mener certaines des opérations nécessaires pour tirer réellement de la valeur de toutes ces données non structurées. Mais le monde change, et nous devons continuer à penser autrement si nous voulons rester pertinents. Pensez technologie pair-à-pair. Composants standard. Abstraction des fonctions traditionnelles du matériel vers le logiciel, pour créer un environnement centré sur les applications qui évolue avec son temps. Pensez stockage software-defined. Photo de Samuel Zeller sur Unsplash