Le stockage

Systèmes de fichiers dans Windows Server 2022

1. Introduction

Il y a trois systèmes de fichiers utilisés dans Windows Server 2022, exFAT, NTFS et ReFS. Nous ne parlerons pas dans ce livre du système de fichiers exFAT car il est trop peu utilisé, nous nous concentrerons sur NTFS et ReFS.

Si NTFS est bien connu et utilisé dans les systèmes Windows depuis 1993, ReFS est présent dans Windows Server depuis la version 2012 mais il est moins connu du grand public. ReFS a été développé à partir de NTFS, et partage avec ce dernier le système d’arborescence à partir d’une racine d’un volume. On ne peut pas vraiment dire que l’un est meilleur que l’autre, tant les cas d’usage sont différents. Si certaines fonctionnalités de Windows Server ne peuvent être exploitées qu’avec le système NTFS, comme le rôle de serveur DFS, d’autres tirent pleinement parti des nouvelles fonctionnalités de ReFS.

Bien que plus ancien, NTFS conserve des fonctionnalités uniques, comme les quotas sur les disques, les volumes bootables (Windows ne peut pas démarrer depuis un volume ReFS), les hard links, le cryptage EFS, et d’autres qui manquent à ReFS. On ne peut donc pas voir ReFS comme un système de fichiers qui va remplacer NTFS, mais plutôt un système de fichiers qui a été pensé pour remplir d’autres fonctions.

ReFS apporte une meilleure gestion de la corruption des données, de meilleures performances en termes de rapidité, une gestion des volumes de très grande taille, une meilleure déduplication des données. Toutes ces fonctionnalités en font un système de fichiers de choix pour stocker des données en masse, des disques de machines virtuelles dont il améliore les performances, ou encore les espaces de stockage.

Il n’y a donc pas de compétition entre les deux systèmes de fichiers, les deux remplissent des rôles différents au sein de Windows Server. Il est à noter cependant que ReFS est un système de fichiers réputé pour être gourmand en ressources et solliciter le matériel, mémoire...

Le lab

Le lab de ce chapitre comporte trois serveurs :

  • un contrôleur de domaine DC-ecole pour le domaine Ecole.com ;

  • un serveur STOCK1, qui sera dans le domaine ;

  • un serveur STOCK2, qui ne sera pas membre du domaine ;

  • une machine client Windows 10 qui sera dans le domaine.

images/04EI01.PNG

Dans notre lab les serveurs STOCK1 et STOCK2 ont le contrôleur de domaine comme serveur DNS dans leurs réglages réseau.

Pools de stockage et espaces de stockage

1. Concepts de base

Un pool de stockage est un regroupement logique de plusieurs disques physiques. Des disques de différentes natures, SSD sata, NVMe, HDD, peuvent être regroupés au sein du même pool de stockage. Une fois les disques réunis dans un même pool, on pourra y créer un ou plusieurs disques virtuels. Ces disques virtuels sont appelés espace de stockage dans la terminologie de Windows Server. On pourra formater ces disques virtuels en NTFS ou ReFS pour créer dedans un ou plusieurs volumes. Les volumes ainsi créés seront accessibles via l’explorateur de fichiers. Un pool de stockage peut contenir un ou plusieurs espaces de stockage. Les disques virtuels ne sont pas des disques de machines virtuelles Hyper-V, mais plutôt des entités vues par le système comme des disques.

On pourra mettre en œuvre les mêmes types de redondance qu’avec des systèmes raid traditionnels, agrégé par bande, parité et miroir. De plus, ces systèmes ne nécessitent pas de contrôleur raid physique.

Le fait de réunir des disques dans des ensembles logiques, et de les exploiter via des disques virtuels apporte toute la souplesse du logiciel, et des nouvelles fonctionnalités. On parle alors de virtualisation du stockage :

  • Cela permet le provisionnement dynamique, où le disque virtuel n’occupe que l’espace nécessaire sur les disques physiques, et grandit au fur et à mesure des besoins, jusqu’à sa taille maximale.

  • Cela permet aussi les niveaux de stockage (tiering), où le système va placer les fichiers les plus utilisés dans les disques physiques les plus rapides, et les fichiers les moins utilisés dans les disques les plus lents.

  • Le système créera un cache d’écriture dans les disques les plus rapides, pour pouvoir écrire plus rapidement, et répartira ensuite les données dans les différents niveaux de stockage potentiellement plus lent.

  • Il est possible de mélanger des disques virtuels qui exploitent différents types de redondance dans le même espace de stockage. Ainsi si le nombre de disques physiques le permet, il est tout à fait possible de faire un volume agrégé...

Partages avancés

Windows Server offre des fonctionnalités avancées pour la gestion des partages. Il tire parti des apports de la version 3 du protocole SMB, le protocole utilisé par Windows pour les partages, et sait faire des partages NFS compatibles avec Linux et Unix.

1. Gestion du protocole SMB

La version 1 du protocole SMB n’est pas installée par défaut dans Windows Server 2019 et 2022. Il représente une faille de sécurité et ne répond plus aux standards actuels. Toutefois il peut être activé à la main pour des raisons de rétrocompatibilité. Et il est possible aussi de surveiller les accès en SMB 1. Nous recommandons de laisser SMB 1 désactivé.

a. Monitoring du SMB 1

La commande PowerShell suivante permet de voir la configuration du protocole SMB :

Get-SmbServerConfiguration 

Le résultat de la commande fournit beaucoup de paramètres. La ligne EnableSMB1Protocol qui indique si la version est activée ou non. La ligne juste en dessous concerne la version 2 du protocole.

images/04EI34.PNG

 Il est aussi possible d’activer la surveillance des tentatives de connexion via le protocole SMB 1. Pour cela, utilisez la commande PowerShell :

Set-SmbServerConfiguration -AuditSmb1Access $true 

Cela permettra d’inscrire dans les journaux d’évènements les tentatives d’accès au serveur avec le protocole SMB 1.

Ces évènements de type information se trouvent dans Microsoft - Windows logs - Applications and Services Logs - Windows - SMB server - audit. Il faudra alors chercher les évènements avec le numéro d’ID 3000.

Dans le descriptif de l’évènement, on trouve la date de connexion et l’adresse IP du client.

b. Activation et désactivation du protocole SMB

Si pour des raisons de rétrocompatibilité vous êtes obligé d’utiliser SMB 1, il faut alors installer la fonctionnalité avec le gestionnaire de serveur.

Dans le gestionnaire de serveur, il faudra ajouter des rôles et des fonctionnalités.

 Installez ensuite le serveur SMB 1 dans les fonctionnalités.

images/04EI35.PNG

 Puis activez-le à l’aide de PowerShell :

Set-SmbServerConfiguration...

File Server Resource Manager (FSRM)

Dans la section précédente de ce chapitre, afin de pouvoir faire des partages avancés, nous avons installé le service du rôle serveur de fichiers et de stockage File Server Resource Manager.

L’installation de ce service de rôle donne accès à une console du même nom que l’on peut retrouver dans le start/windows administration tools et qui permet le paramétrage du serveur de fichiers.

images/04EI73.PNG

Depuis cette console, nous allons configurer les options du serveur. Il est possible de créer des quotas personnalisés, d’interdire certains types de fichiers comme les .mp3 ou les .iso, ou encore de gérer la classification des données et d’automatiser certaines tâches de gestion de ces données.

1. Paramétrage de base du serveur de fichiers

 Dans la console, faites un clic droit sur le serveur et dans le menu déroulant sélectionnez Configure Options.

images/04EI74.PNG

Une fenêtre s’ouvre avec différents onglets dédiés au paramétrage du serveur de fichiers. 

images/04EI75.PNG

a. Paramétrage du serveur d’e-mail

Nous avons vu lors de la création des partages avancés qu’il était possible de définir une adresse e-mail pour prévenir les administrateurs quand certains quotas de données sont dépassés. Bien évidemment, cela ne fonctionne que si le serveur de fichier sait où joindre le serveur de messagerie.

 Allez dans l’onglet Email Notifications, renseignez l’adresse du serveur de messagerie, l’adresse de courrier électronique des administrateurs à joindre, ainsi que l’adresse...

Déduplication des données

1. Concepts de base

La déduplication des données est une technique qui consiste à ne stocker qu’une seule fois les trains de données binaires identiques et à noter leurs emplacements dans un fichier de référence.

Par exemple, si l’on prend plusieurs documents Word de la même entreprise, ils auront des parties identiques, comme les métadonnées de Word, les en-têtes des documents ou encore le logo de l’entreprise. Tous ces documents vont donc avoir des suites de données binaires identiques.

Le système va repérer ces suites binaires identiques et découper les fichiers en conséquence, en blocs de tailles variables. Ces blocs ne vont être stockés physiquement qu’une seule fois sur le disque, dans un magasin, et éventuellement compressés.

images/04EI97.PNG

Leur emplacement dans les fichiers d’origine sera remplacé par des points d’analyse et noté dans un fichier de référence.

images/04EI98.PNG

La déduplication intervient après l’écriture des données. Les données sont écrites sur le disque de manière classique puis dédupliquées. Les performances en écriture du système ne sont donc pas impactées.

À la lecture, le système va lire les points de référence dans les fichiers et aller chercher les blocs correspondants. La partie utile d’un document, hors métadatas, est appelée « flux de fichier » dans le jargon de la déduplication.

La déduplication permet d’économiser jusqu’à 95 % d’espace disque, selon le type de fichier :

  • Fichiers Microsoft Office : 30 - 50 %. Quand elle est paramétrée pour ce type de fichiers, la déduplication a lieu en tâche de fond.

  • Fichiers ISO, disques durs de machines virtuelles, VDI : 80 - 95 %. La déduplication de ce type de fichier a lieu aussi en tâche de fond.

  • Fichiers de déploiement .msi .cab, binaires de logiciels : 70 - 80 %. Ce type de déduplication aura lieu suivant un réglage de priorité.

De plus, il est à noter que la déduplication est particulièrement performante avec le système de fichiers...

Réplica de stockage

1. Présentation des réplicas de stockage

Le réplica de stockage est un outil pour la réplication de volumes entre des serveurs ou des clusters de serveurs. Il permet la réplication synchrone et asynchrone. Il a pour but de mettre en œuvre une solution de récupération d’urgence et de plan de reprise d’activité après un sinistre. Les réplicas de stockage nécessitent Active Directory pour être mis en œuvre.

La réplication se fait avec le protocole SMB3 et peut utiliser la compression des données dans la version Datacenter Azure Edition de Windows Server 2022. Les échanges entre les serveurs sont cryptés et les nœuds de réplication utilisent l’authentification Kerberos.

  • La réplication synchrone se fait en temps réel et est prévue pour fonctionner dans les environnements réseau à faible latence, au sein du même bâtiment ou dans la même ville. Elle ne garantit aucune perte de données. La latence réseau maximale supportée pour la réplication synchrone est de 5 ms. Elle nécessite aussi des ensembles de stockage avec de bonnes performances en lecture/écriture, car si la réplication synchrone est activée, alors la tâche d’écriture ne sera pas considérée comme complète avant que les données ne soient inscrites dans les deux disques. La réplication synchrone est la réplication par défaut.

  • La réplication asynchrone est quant à elle prévue pour fonctionner entre deux sites physiques distants avec une connexion à latence élevée et ne garantit pas qu’il n’y aura pas de perte de données en cas de désastre. La latence n’est pas prise en compte pour la réplication asynchrone.

Le réplica de stockage met en œuvre une réplication au niveau des blocs de données et permet la réplication des fichiers qui sont en cours d’utilisation. Avant les réplicas de stockage, beaucoup d’entreprises utilisaient DFS pour répliquer des fichiers entre deux sites distants, mais DFS gère la réplication au niveau des fichiers ce qui ne permet pas la réplication...

Distributed File System (DFS)

1. Introduction à DFS

DFS est une fonctionnalité de Windows Server constituée de deux services du rôle File and Storage Services et qui permet de regrouper plusieurs partages qui se trouvent sur différents serveurs en une seule adresse, appelée un espace de noms et d’assurer une réplication entre les dossiers partagés.

Le service de rôle DFS Spacename permet de regrouper les dossiers et DFS Replication assure la réplication. Il est possible de n’installer que le service d’espace de noms, la réplication n’est pas obligatoire.

DFS sait travailler avec Active Directory et peut être paramétré pour tenir compte des sites Active Directory dans la gestion de la réplication. La réplication DFS est une réplication de niveau fichier qui ne permet pas la réplication des fichiers en cours d’utilisation. 

DFS nécessite des volumes formatés avec le système de fichiers NTFS.

Il est possible de déployer de plusieurs façons ces services de rôles, mais nous recommandons d’installer le service d’espace de noms sur un contrôleur de domaine. Il ne fera alors que la gestion des espaces de noms et la réplication DFS sera installée sur les serveurs qui contiennent les dossiers partagés, si l’on décide de les répliquer.

Il est aussi possible d’utiliser DFS sans Active Directory, on parle à ce moment-là d’espaces de noms autonomes. Cette solution est à privilégier si votre entreprise n’utilise pas Active Directory. Toutefois la réplication ne sera pas possible puisqu’elle nécessite Active Directory pour fonctionner.

La réplication peut être mise en place sans utiliser d’espace de noms. Les dossiers partagés seront répliqués mais ils ne seront pas réunis dans un espace de noms et ne bénéficieront pas d’une adresse unique.

DFS est une fonctionnalité largement répandue dans les entreprises et il est bon d’avoir des bases solides en la matière.

2. Principes de fonctionnement

a. Principes de base

Le serveur d’espace de noms peut héberger plusieurs espaces de noms. Chaque espace de noms débute avec une racine...

Stockage iSCSI

1. Introduction à l’iSCSI

L’iSCSI (Internet Small Computer System Interface) est une technologie qui permet de connecter des machines à du stockage via le réseau IP. On parle alors de Storage Area Network, ou réseau SAN, dans lequel des serveurs peuvent via l’iSCSI utiliser du stockage qui se trouve ailleurs dans le réseau de l’entreprise ou dans un réseau distant. L’iSCSI est une technologie de stockage block level.

Les machines qui se connectent à du stockage iSCSI utilisent des initiateurs pour accéder aux volumes et les machines qui contiennent le stockage iSCSI utilisent des cibles pour rendre les volumes accessibles (target). Un volume iSCSI est appelé un LUN (Logical Unit Number).

Les machines qui utilisent l’iSCSI ont besoin d’un adaptateur réseau, qui peut être soit matériel sous la forme d’une carte PCI que l’on ajoute à la machine, soit un composant logiciel qui va simuler une carte de ce type.

L’iSCSI encapsule les commandes iSCSI dans des paquets TCP/IP standards, ce qui permet l’utilisation de réseaux traditionnels pour exploiter des stockages iSCSI.

Pour établir une connexion iSCSI l’initiateur doit découvrir les cibles, puis établir une session de communication avec ces cibles. Une fois ceci fait, les données peuvent alors être transmises, en lecture et en écriture. Les cibles et les initiateurs ont un identifiant unique, l’IQN (iSCSI Qualified Name) qui sont utilisés pour établir de sessions et s’identifier.

Comme le stockage est ailleurs sur le réseau, plusieurs machines peuvent l’utiliser en même temps. C’est un des principes de base du clustering où plusieurs machines sont réunies en une seule entité et utilisent un stockage partagé qui est distant sur le réseau. 

Il existe d’autres technologies pour faire du stockage SAN, comme le Fibre Channel, ou le Fibre Channel over Ethernet (FCoE), mais ils nécessitent d’acheter...