vInfra.ch

Guillaume LACAILLE's Blog

WS 2012 : La déduplication de données sous Windows Server 2012

Microsoft nous l’avait promis, les équipes de développement de la dernière version de Windows Server ont été à l’écoute des clients et de leurs besoins. Entre autres, la multiplication des données dans l’entreprise augmente de manière significative le besoin de stockage. C’est cette problématique que Microsoft adresse aujourd’hui, en permettant aux entreprises de faire des économies considérables grâce à la déduplication de données sur les serveurs de fichiers.

Déduplication ?

La déduplication de données est une technologie qui existe depuis des années, et encore trop méconnue, mais que l’on retrouve chez de nombreux constructeurs de SAN et de NAS, dont Dell et même sur des appliances propriétaires fonctionnant sous Windows Storage Server (via le module SIS – Single Instance Storage – qui n’a jamais été inclus sur d’autres éditions de Windows).

Pour simplifier à l’extrême, la déduplication de données, c’est la possibilité de stocker 1 seule fois les mêmes données que l’on a dans plusieurs fichiers différents.

Imaginez les fichiers suivants :

Chaque symbole  correspond à une suite de bits qui forment un « mot », un ensemble de données. Chaque « mot » pouvant avoir une taille variable de 32 à 128Kb (4 à 16 Ko).

Sans la fonctionnalité de déduplication, ces deux fichiers devraient être stockés tels quels sur le disque, alors que certains mots (ici symboles) sont identiques. Quel gâchis d’espace n’est-ce pas ?

Avec Windows Server 2012 et la déduplication de fichiers, nous pouvons désormais stocker les fichiers de la manière suivante :

 

Chaque fichier continu à être stocké avec  ses métadonnées, qui sont propres au fichier, mais les données ne sont plus attachée à celui-ci, elles sont stockées dans un magasin de données où chaque mot est unique.  Seul un pointeur permet de retrouver les données.

 

Et si mon disque est défectueux ?

La première question qui vient à l’esprit c’est « que se passe-t-il si j’ai un cluster défectueux sur mon disque ? Si un mot unique est référencé par 1000 fichiers, je perds les 1000 fichiers ? ».

En cas de corruption d’une partie du disque, pas de panique, vos fichiers resteront intacts ! Microsoft a introduit un mécanisme de multiplication des mots uniques afin de ne pas perdre la totalité des fichiers : si notre triangle du schéma ci-dessus venait à disparaitre. Les mots sont répliqués au moins 20 fois (100 fois par défaut).

 

Performances

En principe, lorsque l’on va dédupliquer les données, chaque mot unique est stocké sur le disque dans le magasin de données. Cette solution, par nature, va créer de la fragmentation au niveau des fichiers.

Microsoft avance trois nombres au niveau des performances :

  • Une copie d’un gros fichier peut prendre jusqu’à 50% de temps en plus ;
  • Une copie de nombreux petits fichiers  peut prendre jusqu’à 30% de temps en moins ;
  • On peut avoir une réduction de 10% d’utilisateurs sur un serveur de fichiers mettant en oeuvre cette technologie.

Evaluation du gain possible

Avant de mettre en place un nouveau serveur de fichiers avec la déduplication de données, vous pouvez évaluer le gain possible sur votre serveur de fichiers.

Pour cela, il existe un utilitaire sur Windows Server 2012 nommé DDPEval.exe. Celui-ci se trouve dans le répertoire C:\Windows\System32.

Vous pouvez le lancer sur des répertoires partagés distants pour pouvoir évaluer le gain.

Voici deux exemples des gains possibles :

Cette première évaluation a été réalisée sur le volume contenant la librairie VMM dans laquelle nous avons stocké tous nos templates de VM, de Services et toutes les sources utiles :

Le premier test est plutôt concluant, nous pouvons économiser 119Go sur un volume de données de 161Go. Le gain estimé est très intéressant bien que le volume de données de départ ne soit pas des plus grands.

La deuxième évaluation a été réalisée sur un serveur de fichiers personnel. Celui-ci contient entre autre des fichiers binaires, des templates de VM, des données bureautique, des photos et des backups. Le volume de données est beaucoup plus grand : 1,35To de données.

Premier point important : le temps d’évaluation de la déduplication de données sur ce volume a été de 4 jours. Voici les gains évalués sur ce volume aux données disparates :

Sur ces fichiers qui ne se ressemblent pas au premier abord, nous avons un gain de presque 50% et une économie de 685Go !

 

Installation du rôle déduplication de données

Maintenant que l’on connait à peu près les gains que l’on peut espérer sur nos volumes de fichiers, voici comment l’installer sur notre serveur :

Installation avec Server Manager :

  1. Ouvrez une console Server Manager dans Windows Server 2012.
  2. Dans le menu Manage, sélectionnez Add Role and Features.
  3. Dans l’assistant d’ajout des rôles et fonctionnalités, sélectionnez Role-based or feature-based installation.
  4. Sélectionnez le serveur de fichier sur lequel vous souhaitez configurer la déduplication de données :
  5. Sous le rôle File and Storage Services, sélectionnez Data Deduplication sous Files and iSCSI Services :
  6. Si vous ne l’aviez pas fait précédemment, l’assistant vous proposera d’ajouter le rôle File Server qui est un prérequis à la déduplication de données.
  7. Ne sélectionnez aucune Feature.
  8. A l’écran de confirmation, vérifiez les informations puis cliquez sur Install.

Installation avec PowerShell :

  1. Ouvrez une console PowerShell.
  2. Tapez les lignes suivantes :

 

 

Bien entendu, changez FILESERVER_NAME et DOMAINADMIN_USER respectivement par le nom du serveur de fichiers, et le compte d’un utilisateur ayant les droits d’administration sur ce dernier.

 

Configuration de la déduplication de données

Pour configurer la déduplication de données sur un volume, rien de plus simple :

Configuration avec Server Manager :

  1. Ouvrez une console Server Manager ;
  2. Sélectionnez l’onglet File and storage services puis Volumes.
  3. Sélectionnez le volume à dédupliquer, puis faites un clic-droit puis Configure Data Deduplication :
  4. Cochez la case Enable Data Deduplication, puis sélectionnez à partir de quel âge un fichier doit être analysé pour être dédupliqué. Puis cliquez sur Set Deduplication Schedule…
  5. La fonctionnalité de déduplication de données est active en tâche de fond en priorité minimale, et s’arrête automatiquement si un programme nécessite des ressources supplémentaires. Cependant, vous pouvez configurer jusqu’à 2 horaires permettant de « booster » l’analyse et la déduplication de données. Vous pouvez, par exemple, activer le déduplication de données la nuit lorsque vos utilisateurs ne travaillent pas :
  6. Cliquez sur Ok, et c’est configuré !

Configuration  avec PowerShell :

  1. Ouvrez une console PowerShell.
  2. Pour activer la déduplication sur le volume E :
  3. Pour configurer l’âge minimum des fichiers pour être dédupliqué :
  4. Pour configurer des horaires supplémentaires:

Limitations

Comme vous pouviez vous en douter, il y a quelques limitations à la déduplication de données.

Pour ceux qui espéraient dédupliquer leur volume CSV : ce n’est pas supporté.

Il n’est pas non plus possible de dédupliquer un volume système, ni les VHD de machines virtuelles instanciées.

 

Quid des ressources ?

Au niveau des ressources CPU et Ram, Microsoft a travaillé sur une solution permettant d’utiliser des machines avec peu de ressources. Ainsi, avec 1 CPU, 4 Go de Ram et 1 disque SATA, il est possible de faire de la déduplication de volume sans avoir de problèmes de performances.

Une solution qui va à coup sûr se généraliser dans les mois à venir !

 

 

Pour plus d’informations et de détails:

http://blogs.technet.com/b/filecab/archive/2012/05/21/introduction-to-data-deduplication-in-windows-server-2012.aspx

Article initialement publié sur blog.sogeti.ch

 

, ,

One thought on “WS 2012 : La déduplication de données sous Windows Server 2012

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *