Bonjour,
Voulant optimiser mon stockage sur mon serveur servant à monter mes maquettes, je me suis dit qu’il étant temps de découvrir l’univers du Storage Pool, du Storage Space et du Storage Tiered.
Parmi les nouveautés apportées par Windows Server 2012 concernant le stockage, on trouve la fonctionnalité Storage Pool qui consiste à grouper des disques standard (SATA,SAS..) et ensuite à créer des Espace de Stockage (Storage Space) à partir de la capacité disponible au niveau du pool de stockage.
Nous allons voir que Windows Server 2012 R2 amène lui aussi des évolutions.
Storage Pool
Comme expliqué plus haut, le Storage Pool est l’agrégat de disques durs. Ils peuvent être de technologies différentes (SAS, SATA, 7.2k,10k,15k tr/min) et même de tailles différentes.
C’est un peu comme prendre une grosse boite, y installer tout les disques durs qu’on trouve et on se retrouve avec un seul gros disque.
Il est bien entendu possible d’en ajouter à tout moment en fonction des besoins.
Comme sur les baies de disques, il est possible de déclarer un ou plusieurs disques de spare et d’être alerté en cas de dysfonctionnement ou lorsque l’espace disque disponible atteint certains seuils.
Dans Windows Server 2012 R2, un Storage Pool peut contenir au maximum 240 disques physiques et gérer un volume maximal de 480 To.
Afin de sécuriser l’installation, vous pouvez faire votre Storage Pool en cluster. C’est à dire que vous allez avoir plusieurs Windows Servers avec dans Failover Cluster le Storage Pool.
Un exemple ici : http://blogs.msdn.com/b/clustering/archive/2012/06/02/10314262.aspx
Un cluster peut utiliser un maximum de 4 Storage Pool.
Storage Space
Le Storage Space (ou Virtual disk ou encore espace de stockage) permet de créer des disques logiques virtuels dans l’espace rendu disponible par les Storage Pool.
C’est le Storage Space qui à « l’intelligence » de la solution.
C’est lors de la création d’un nouvel espace de stockage, que l’on défini les caractéristiques du disque virtuel en termes de haute disponibilité.
3 modes sont disponible :
- Simple : aucune redondance et utilisation de tout l’espace disque.
- Mirror : les données sont dupliquées sur 2 ou 3 disques physiques. Nécessite 2 disques physiques pour la tolérance de panne d’un disque ou 5 disques physiques pour la tolérance de panne de 2 disques.
- Parity : les données et les informations de parité sont écrites et réparties sur les différents disques physiques. Nécessite 3 disques pour la tolérance de panne d’un disque ou 7 disques pour la tolérance de panne de 2 disques.
On peut dire que les fonctionnalités proposées sont comparables à celles embarquées dans les baies de stockage SAN.
Un autre point concerne l’utilisation des pools et des espaces de stockage pour les applications. En effet, tous ces nouveaux mécanismes ont été conçus dans l’esprit d’offrir leurs services de haute disponibilité et de performances élevées aux environnements de type cluster Windows, serveurs de fichiers, SQL Server et bien entendu machines hôtes Hyper-V. Un petit plus sera abordé rapidement à la fin: la Data Deduplication.
Il est possible de créer jusqu’à 128 Storage Space par Storage Pool.
Storage Tiered
Le Storage Tiered autorise l’utilisation de SSD et de HDD dans le même Storage Pool. Il s’agit d’une fonctionnalité apporté avec Windows Server 2012 R2.
L’idée est d’être capable de mixer des SSD et des HDD afin d’avoir la possibilité de stocker les blocs les plus accédées sur le SSD afin d’obtenir une amélioration globale de la performance.
A rappeler que vous devez avoir le nombre de SSD nécessaire au choix de votre mode de haute disponibilité.
Par exemple dans le mode Mirror, vous devez avoir 2 SSD avec l’espace de stockage nécessaire.
Write-Back Cache
Le Write-Back Cache est un espace de stockage dédié se trouvant dans la partie SSD. Il a pour but de faire tampon lors d’un pic d’écriture.
Il ne s’agit pas d’un choix au moment de la création entre le stockage pur ou le tampon.
Les deux technologies doivent être utilisées pour obtenir de bonnes performances. Le SSD dans le Storage Tiered permet d’obtenir une performance globale, tandis que le Write-Back cache permet d’assurer ces performances même en cas de pic d’écriture.
Les même SSD dans le Storage Pool peuvent être utilisées comme stockage SSD et Write-Back cache.
Par défaut, lors de la création d’un Storage Tiered via l’interface graphique, un Write-Back cache de 1Go est créé.
Mise en place uniquement avec des disques magnétiques
/!\ Avant toute chose tous les paramètres RAID de la carte mère doivent être désactivés. Il s’agit d’un pré-requis. C’est le système qui doit gérer les disques.
J’ai sur mon serveur les disques suivants :
- 2 x Samsung 150Go (un des disques est utilisé par le système. Il ne sera donc pas utilisé par la suite.)
- 1 x HDD Samsung 250Go
- 1 x HDD Seagate 250Go
- 1 x SSD ScanDisk 64Go (il ne sera pas utilisé dans cette configuration, mais pour le Storage Tiered)
Les disques sont de tailles différentes et de marques différentes. Par contre ils sont tous en SATA.
Les disques ne doivent pas avoir de volumes dessus. Pour supprimer un volume, vous pouvez le faire via Computer Management.
Pour créer un Storage Pool, il faut se rendre dans
On voit la liste des disques durs
1 |
Get-PhysicalDisk -CanPool $true | Sort Size | FT -AutoSize |
Pour créer le Storage Pool
Je ne sélectionne que mes disques durs physiques pour cette partie
Le Storage Pool apparait bien
Deux disques durs n’ont pas de Media Type de défini.
Pour le modifier, il va falloir utiliser PowerShell avec la commande suivante :
1 |
Get-StoragePool vhds | Get-PhysicalDisk | Set-PhysicalDisk –MediaType HDD |
(Ma commande PowerShell va mettre pour tous les disques le Media Type à HDD)
Maintenant que les disques sont correctement configurés au sein du Storage Pool, nous passons au Storage Space
Par défaut, la taille maximum d’un Virtual Disk est la taille du disque dur le plus petit x le nombre de disque.
Dans mon cas j’ai 1 x 150Go et 2 x 250Go, soit 3 x 150Go = 450Go
Par contre il est tout à fait possible de l’étendre après la création.
C’est ici que l’on configure le mode de sécurité. Dans mon exemple je choisis Simple afin d’avoir le plus de place possible (équivalent du RAID 0)
On peut créer des Storage Space en dynamique et ainsi rajouter par la suite des disques durs dans le Storage Pool si l’on veut lisser les achats.Un petit récapitulatif avant la mise en place
Après le Storage Pool, le Storage Space, il suffit maintenant de créer le Volume afin de pouvoir l’utiliser !
Voila, votre Volume est disponible et accessible comme un disque dur normal.
Mise en place avec SSD et HDD (Storage Tiered)
Cette fois-ci je vais utiliser le SSD afin d’utiliser la fonction de Storage Tiered.
La mise en place est identique qu’avec des disques durs physiques. Si on sélectionne le SSD, il vous proposera de passer en Storage Tiered.
Au niveau de la configuration du Virtual Disk, bien sélectionner « Create Storage Tiers on this virtual disk »
Au moment de la création du Storage Space, je n’ai pas le choix d’utiliser le Parity car ce mode n’est pas supporté.
Un Storage Space en Tiered est obligatoirement en Fixed Size
On peut ici modifier la taille que l’on souhaite utiliser pour ce Storage Space. On peut voir que par défaut j’ai le même symptôme avec une taille maximum bloqué à 444Go.
On peut très facilement passer au maximum d’espace disque en faisant un Extend du Virtual Disk.
Chose importante, le volume qui sera créé dans ce Storage Space DOIT prendre tout le disque.
Par defaut, la création d’un Storage Tiered en mode GUI induit la création d’un Write-Back Cache de 1Go. Il est impossible de modifier la taille du Write-Back Cache après la création.
Si vous souhaitez modifier le paramètre, il faudra passer par la création du Storage Space en PowerShell.
Un exemple de commande :
1 2 3 4 5 |
$SSD = Get-StorageTier -FriendlyName *SSD* $HDD = Get-StorageTier -FriendlyName *HDD* New-VirtualDisk -StoragePoolFriendlyName "VHDs" -FriendlyName "VHDs" –StorageTiers $SSD, $HDD -StorageTierSizes 56GB, 612GB -ResiliencySettingName "Simple" -WriteCacheSize 2GB |
Et la Data Deduplication ?
Vous devez installer le rôle sur le serveur
L’activation de la Data Déduplication se fait au niveau du Volume. Si le rôle n’est pas installé, l’étape n’apparaitra pas.
Au niveau du Set Deduplication Schedule, on a les options, afin de lui donner des tranches horaires de travail.
En conclusion cette solution est globalement satisfaisante car :
– Le Storage Pool me permet d’utiliser tous mes disques peut importe la taille,
– Le Storage Tiered j’utilise mon SSD afin d’y gagner en rapidité
– La Data Deduplication me fait gagner des Go.
Liens :
Les nouveautés de Windows Server 2012 R2 sur la partie des Storage Spaces : http://blogs.technet.com/b/storageserver/archive/2013/12/18/windows-storage-server-2012-r2-new-storage-spaces-functionality-and-improved-data-deduplication.aspx
Un article rentrant rapidement dans les détails : http://blogs.technet.com/b/stanislas/archive/2014/04/07/windows-server-2012-r2-storage-space-concepts-et-un-peu-de-vocabulaire.aspx
Explication sur l’expansion d’un Storage Pool : http://blogs.technet.com/b/askpfeplat/archive/2013/09/25/storage-spaces-understanding-expansion.aspx
La FAQ sur Storage Spaces : http://social.technet.microsoft.com/wiki/contents/articles/11382.storage-spaces-frequently-asked-questions-faq.aspx
Un cours en Français sur le sujet dans le MVA : http://www.microsoftvirtualacademy.com/training-courses/stockage-dans-windows-server-2012-r2-fr
-Mickaël