ekzman - Fotolia
Les bases de Microsoft Storage Spaces Direct
Avec Storage Spaces Direct, Microsoft propose une solution de stockage logicielle permettant aux utilisateurs de Windows Server de bâtir une infrastructure de stockage résiliente et économique déployable en mode convergé ou hyperconvergé. LeMagIT revient sur les bases de la technologie.
Depuis le lancement de Windows Server 2016, Microsoft a ajouté à son système d’exploitation serveur une technologie de stockage distribuée baptisée Storage Spaces Direct.
Cette technologie de « software defined storage » permet de créer des pools de stockage partagés et résilients en assemblant en un tout cohérent les stockages répartis sur plusieurs nœuds serveur.
Elle peut être déployée de façon autonome, afin de fournir l’équivalent d’une baie SAN/NAS ou être déployée en mode hyperconvergée en complément d’Hyper-V
Les prérequis
Si Storage Spaces Direct est relativement simple à déployer, la technologie requiert un minimum de prérequis. Microsoft recommande ainsi que chaque nœud serveur participant au cluster de stockage soit équipé de cartes 10Gigabit Ethernet supportant les protocoles iWARP (Internet Wide Area RDMA Protocol) ou RoCE (RDMA over Converged Ethernet). Le support de la technologie RDMA est en effet nécessaire pour assurer des performances de communication optimales entre les nœuds de stockage via SMB3.
Chaque cluster Storage Spaces Direct peut comprendre entre 2 et 16 et chacun d’entre eux doit disposer d’au moins 2 disques SSD pour le cache — idéalement des SSD optimisés pour l’écriture avec une capacité de 3 réécritures complètes par jour — et de 4 disques durs pour le stockage à froid. Il est tout à fait possible de concevoir des configurations 100 % Flash, qui peuvent être soit homogène soit composées de Flash rapide NVME et de disques SSD SATA plus lents (auquel cas les disques NVMe seront utilisés comme cache).
Microsoft recommande que chaque serveur dispose au moins de 4 Go de mémoire vive par To de cache en SSD pour la gestion des métadonnées et recommande aussi que la taille du cache en SSD soit d’environ 10 % de la capacité totale de chaque nœud.
Il est à noter que le fonctionnement du cache est différent selon les déploiements. Dans le cadre d’un déploiement hybride avec des SSD et des disques durs L’ensemble des opérations de lecture et d’écriture passent par le cache Flash. Dans le cadre d’un déploiement 100 % Flash mixant disques NVMe et SSD SATA, seules les écritures passent par le cache NVMe, les lectures s’effectuant directement depuis les SSD.
Il est possible de commencer un déploiement Storage Spaces Direct avec deux nœuds, la protection des données étant alors assurée par un simple miroir des données. À partir de trois nœuds, il est possible de mettre en œuvre un mécanisme de triple réplication (une copie de chaque donnée et stockée sur chaque nœud).
Au-delà, la taille du cluster permet de déployer des mécanismes de protection plus sophistiqués de type erasure coding avec de multiples niveaux de parité pour protéger à la fois contre la panne de multiples nœuds ou de multiples périphériques (le billet de blog de Claus Joergensen sur Technet est une excellente lecture sur les modes de protection de Storage Spaces Direct).
Déploiement en mode désagrégé
Dans ce mode, Storage Spaces Direct permet de mettre en œuvre une architecture de stockage évolutive pour servir les besoins de clusters applicatifs. L’idée est de permettre de faire évoluer séparément les capacités de stockage et de calcul pour les grands déploiements de cloud privés.
Concrètement, l’architecture préconisée par Microsoft consiste à configurer Storage Spaces Direct sur un cluster de nœuds puis de partager le pool de stockage ainsi créé via une couche de serveur de fichiers distribué, en l’occurrence le service SoFS (Scale-out File Server) de Windows Server. Ces services de fichiers peuvent ensuite être consommés par un cluster Hyper-V, par des serveurs SQL Server, ou par IIS.
Déploiement en mode hyperconvergé
Dans ce mode, le stockage et les services de calcul sont colocalisés sur les mêmes nœuds ce qui permet de créer une infrastructure hyperconvergée à la Nutanix ou à la VMware VSAN.
L’avantage de Storage Spaces Direct et que chaque nœud participant au cluster à un accès natif au stockage, il est donc possible à Hyper-V ou à toute autre application de consommer nativement le stockage exposé par la technologie. Avec cette approche, l’objectif de Microsoft est de permettre à des PME de réduire le coût de leur infrastructure en s’épargnant un investissement coûteux dans une baie de stockage externe.
En planifiant correctement la distribution des nœuds de stockage (et donc les domaines de pannes), il est même possible de concevoir des architectures hautement résilientes de type stretched Cluster afin de se protéger contre des sinistres.
L’utilisation conjointe de Storage Spaces Direct et de Storage Replica permet aussi d’envisager des scénarios de métro cluster avec réplication synchrone ou asynchrone vers un site distant.
Notons pour terminer que le principal défaut de Storage Spaces Direct que le recours à PowerShell reste incontournable pour l’administration et la maintenance d’un système Storage Spaces Direct. System Center Virtual Machine Manager offre de multiples tableaux de bord et outils pour gérer la technologie, mais il n’y a pas à ce jour de console d’administration cohérente pour superviser simplement l’ensemble des services de stockage de Windows Server, à l’instar de Prism chez Nutanix.