Travail de fin de session. Use Case : Z-File System. Par Mathieu Schmitt



Documents pareils
Travail de fin de session. Z-File System. Par Mathieu Schmitt

Ne laissez pas le stockage cloud pénaliser votre retour sur investissement

Le stockage. 1. Architecture de stockage disponible. a. Stockage local ou centralisé. b. Différences entre les architectures

PPE 1 PRISE EN MAIN DE VMWARE VSPHERE 5.5 & CONFIGURATION D UNE MACHINE VIRTUELLE

Concepts et systèmes de stockage

Virtualisation des Serveurs et du Poste de Travail

Adopter une approche unifiée en matière d`accès aux applications

DES SAUVEGARDES ET DES RESTAURATIONS DE DONNEES SANS CONTRAINTES DE LIEU NI DE TEMPS

Fiche technique RDS 2012

FAMILLE EMC RECOVERPOINT

L I V R E B L A N C P r o t ég e r l e s a p p l i c a t i o n s m ét i e r s c r i t i q u e s M a i n f r a m e, un b e s o i n c r u c i a l

Technologie de déduplication de Barracuda Backup. Livre blanc

Sauvegarde EMC pour solutions SAP HANA prêtes pour le datacenter. EMC Data Domain avec DD Boost

WHITE PAPER. Quels avantages la déduplication offre-t-elle aux entreprises? Livre blanc Acronis

Protection des données avec les solutions de stockage NETGEAR

Virtualisation CITRIX, MICROSOFT, VMWARE OLIVIER D.

Une solution de stockage VDI unifiée, flexible et disponible pour vos utilisateurs

VMWare Infrastructure 3

Techniques de stockage. Techniques de stockage, P. Rigaux p.1/43

Solutions libres de stockage. Patrice Langlois / Antoine Puechlong Service Informatique IGMM CRBM CPBS

Clients et agents Symantec NetBackup 7

FAMILLE EMC VPLEX. Disponibilité continue et mobilité des données dans et entre les datacenters AVANTAGES

Livre blanc. La sécurité de nouvelle génération pour les datacenters virtualisés

Système de stockage sur disque IBM Storwize V5000

FAMILLE EMC VPLEX. Disponibilité continue et mobilité des données dans et entre les datacenters

Square-IT-Consulting. Présentation

en version SAN ou NAS

Symantec Backup Exec.cloud

JOSY VIRTUALISATION 9 ET 10 JUIN 2011 POSTE DE TRAVAIL ET VIRTUALISATION. Sébastien Geiger IPHC

Backup , l intégration du backup sur disque

Tirez plus vite profit du cloud computing avec IBM

Gestion de mémoire secondaire F. Boyer, Laboratoire Sardes

Le stockage unifié pour réduire les coûts et augmenter l'agilité

EMC Data Domain Boost for Oracle Recovery Manager (RMAN)

EX4C Systèmes d exploitation. Séance 14 Structure des stockages de masse

Administration de Parc Informatique TP07 : Installation de Linux Debian

Une présentation de HP et de MicroAge. 21 septembre 2010

Symantec Endpoint Protection Fiche technique

Fonctions. Solution professionnelle pour le stockage de données, la synchronisation multi- plateformes et la collaboration

vbladecenter S! tout-en-un en version SAN ou NAS

EMC VSPEX END-USER COMPUTING

36 arguments clés en faveur de la virtualisation du stockage DataCore

Point sur la virtualisation

Architectures d implémentation de Click&DECiDE NSI

10 tâches d administration simplifiées grâce à Windows Server 2008 R2. 1. Migration des systèmes virtuels sans interruption de service

Informatique pour scientifiques hiver Plan général Systèmes d exploitation

Consolidation de stockage

VMware vsphere 5 Préparation à la certification VMware Certified Professional 5 Data Center Virtualization (VCP5-DCV) - Examen VCP510

ORACLE 10g Découvrez les nouveautés. Jeudi 17 Mars Séminaire DELL/INTEL/ORACLE

Tout d abord les pré-requis : Au menu un certain nombre de KB

Mise en oeuvre TSM 6.1

e need L un des premiers intégrateurs opérateurs Cloud Computing indépendants en France

Lettre d annonce ZP d IBM Europe, Moyen-Orient et Afrique,, datée du 20 octobre 2009

La virtualisation, des postes de travail

Pourquoi OneSolutions a choisi SyselCloud

Encryptions, compression et partitionnement des données

Gestion des sauvegardes

Les méthodes de sauvegarde en environnement virtuel

Fiche Technique Windows Azure

La Continuité d Activité

Les cinq raisons majeures pour déployer SDN (Software-Defined Networks) et NFV (Network Functions Virtualization)

RECHERCHER ACCÉDER PROTÉGER. Solutions professionnelles pour la protection et l exploitation sécurisée des données informatiques

Système de stockage IBM XIV Storage System Description technique

Le data center moderne virtualisé

Technologie SDS (Software-Defined Storage) de DataCore

CA ARCserve Backup. Avantages. Vue d'ensemble. Pourquoi choisir CA

CA ARCserve Backup Option NAS (Network Attached Storage) NDMP (Network Data Management Protocol)

CNAM Déploiement d une application avec EC2 ( Cloud Amazon ) Auteur : Thierry Kauffmann Paris, Décembre 2010

La nouvelle solution de stockage V3700

Présentation de. ProConServ-IT NEXINDUS Technologies

Fonctionnalités d Acronis :

LES 5 PRINCIPALES RAISONS DE DÉPLOYER MICROSOFT SQL SERVER SUR LE SYSTÈME DE STOCKAGE UNIFIÉ EMC VNX

Edition de février Numéro 1. Virtualisation du Poste de Travail

EVault Endpoint Protection en détails : Gestion de l entreprise, Sauvegarde, Restauration et Sécurité

L impact de la sécurité de la virtualisation sur votre environnement VDI

Conception d une infrastructure «Cloud» pertinente

Système de stockage EMC CLARiiON AX4

virtualisation et consolidation des infrastructure: comment amèliorer la performance du SI

Dynamic Computing Services solution de backup. White Paper Stefan Ruckstuhl

Backup Exec 2010 vs. BackupAssist V6

Perspectives pour l entreprise. Desktop Cloud. JC Devos IBM IT Architect jdevos@fr.ibm.com IBM Corporation

Mise en œuvre d une infrastructure de virtualisation au CNRGV

Plate-forme Cloud CA AppLogic pour les applications d entreprise

Kick Off SCC 2015 Stockage Objet. Vers de nouveaux horizons

L unique SAN industriel proposant un stockage multiniveau automatisé (Automated Tiered Storage)

EMC DATA DOMAIN OPERATING SYSTEM

EVault Software. Solution globale de protection des données sur disque. Pierre Aguerreberry Directeur Alliances Europe, Moyen-Orient, Afrique

UNIFIED. Nouvelle génération d'architecture unifiée pour la protection des données D TA. dans des environnements virtuels et physiques PROTECTION

Entrez dans l ère du Numérique Très Haut Débit

Virtualiser ou ne pas virtualiser?

CLOUD PRIVÉ EMC VSPEX VMware vsphere Jusqu à machines virtuelles

Configuration du serveur ESX

Logiciel HP StorageWorks Enterprise Virtual Array (EVA) Fiche technique

Recover2Cloud. Reprise accélérée des environnements x86 physiques & virtuels via une réplication dans le Cloud.

CLOUD PRIVÉ EMC VSPEX Microsoft Windows Server 2012 R2 avec Hyper-V - Jusqu à machines virtuelles

Transcription:

Travail de fin de session Use Case : Z-File System Par Mathieu Schmitt

Introduction Généralités Le cloud computing nécessite une capacité de stockage accrue par l objectif qu il s impose. Son but consiste en un transfert de l intégralité de l infrastructure informatique d une entreprise et des services associés vers des serveurs distants. Toute entreprise qui se veut florissante et exceller dans notre société mercantile actuelle se doit de posséder l Information. Le big data, l un des plus importants défis technologiques de ces dix prochaines années exige une capacité de stockage très conséquente. Cet expression anglophone "big data" désigne des ensembles de données tellement volumineux qu ils deviennent difficiles à travailler avec des outils classiques de gestion de base de données. Ce document fait suite au rapport théorique sur ZFS (Z-File System) écrit dans le cadre du cours MGL 7126 - Systèmes distribués, dispensé par M. Omar Cherkaoui. Le rapport est disponible en bibliographie ou sur internet 1. Nous souhaitons vérifier si ZFS peut prendre part à cette conquête technologique ; nous vous présentons en conséquence un use-case avec une expérience concrète. Problématiques Dans ce cas d utilisation, nous nous assurons que la solution ZFS correspond à l utilisation de bureaux virtualisés Citrix Xen Desktop. Pour ce faire, nous étayons notre rapport en 4 parties ci-après détaillées : 1. Dans un premier temps une mise en contexte permet d évoquer brièvement ZFS et définir le cadre de l expérience par un résumé du rapport fait par Oracle et Citrix. Ces deux protagonistes avancent des arguments sur l emploi de ZFS. Nous raisonnons de manière scientifique, non naïve, et dressons par conséquent une liste d arguments à vérifier. Nous terminons cette première partie par une présentation de l environnement de laboratoire, 2. Dans un deuxième temps nous procédons à la mise en place de l environnement de laboratoire par la configuration de VirtualBox et du système d exploitation Solaris 11, 1. Url vers le rapport : https://www.dropbox.com/s/irn68n3qkdy8t2i/%5bmathieu%20schmitt%5d% 20Travail%20sur%20ZFS.pdf i

3. La troisième partie, pièce maîtresse de ce rapport nous invite à découvrir diverses expériences répondant chacune à une partie des problématiques précitées, 4. la quatrième et dernière partie évalue les performances de ZFS à savoir sa vitesse d écriture et sa capacité à rebondir en cas de corruption de données. ii

Table des matières Introduction ii Généralités....................................... ii Problématiques.................................... ii Table des matières iii 1 Mise en contexte 2 1.1 Qu est ce que ZFS?............................... 2 1.2 Contexte de l expérience : ZFS avec les bureaux Citrix et la virtualisation d applications..................................... 3 1.2.1 Généralités................................ 3 1.2.2 Efficacité de stockage.......................... 4 1.2.3 Améliorer l efficacité opérationnelle................... 4 1.2.4 Protection fiable des données...................... 4 1.2.5 Flexibilité, rapidité et performance.................... 4 1.2.6 Pistes de réflexion............................ 5 1.3 Environnement de laboratoire.......................... 5 1.3.1 Hardware................................. 5 1.3.2 Logiciel de virtualisation : Oracle Virtual Box.............. 5 1.3.3 Système d exploitation : Solaris..................... 6 2 Mise en place de l environnement 7 2.1 Configuration d Oracle Virtualbox....................... 7 2.2 Oracle Solaris 11................................. 8 2.2.1 Installation de Solaris.......................... 8 2.2.2 Configuration de Solaris......................... 8 3 Expérimentations 10 3.1 Configuration du pool ZFS........................... 10 3.2 Vérification de la configuration......................... 11 3.3 Création d un fichier............................... 11 3.4 Création d un home............................... 12 3.5 Test d entrée/sortie............................... 13 3.6 Mise en place du striping dynamique...................... 14 3.6.1 Rappel sur le striping dynamique.................... 14 3.6.2 Ajout d un miroir au pool "poolmgl".................. 14 3.7 Mise en place de Quotas utilisateurs....................... 15 iii

3.8 Mise en place de la compression de données.................. 15 3.9 Création d un snapshot............................. 15 3.10 Mise en place d une grappe RAID-Z....................... 16 3.11 Striping dynamique sur deux grappes RAID-Z.................. 17 3.12 Conclusion des expérimentations......................... 18 4 Tests avancés sur la performance et l intégrité des données avec ZFS 19 4.1 Création de 100 systèmes de fichiers en miroir................. 19 4.2 Capacité de correction des données....................... 21 4.2.1 Définition de l expérimentation..................... 21 4.2.2 Création d un pool de stockage..................... 21 4.2.3 Création d un marqueur témoin..................... 21 4.2.4 Corruption massive du système de fichiers................ 22 4.2.5 Analyse de la réaction du système de fichiers ZFS........... 22 4.2.6 Nettoyage du disque infecté....................... 23 4.2.7 Remplacement d un disque défectueux à chaud dans le miroir..... 24 4.2.8 Remplacement automatique d un disque à chaud (hot spare)...... 24 4.2.9 Conclusion de l expérience........................ 25 Conclusion 26 Table des figures 27 Bibliographie 29 Appendices 30 A Installation de Solaris 11 31 1

Chapitre 1 Mise en contexte 1.1 Qu est ce que ZFS? Le système de fichiers open-source ZFS fut introduit et développé en 2005 par Sun Microsystem en proposant une capacité de stockage extrêmement haute. Découvrons ci-dessous quelques-uns de ses points forts : un système de fichiers 128 bits, une intégrité des données, une cohérence des données, une optimisation automatique des performances, une réplication des données en temps réel. Parce qu il élimine le concept de volume, ZFS se démarque des autres systèmes de fichiers : il partage en effet un pool de stockage composé de supports de stockage (disque dur...) inscriptibles. Le résultat n est pas négligeable : ces supports de stockage peuvent être supprimés ou ajoutés en fonction des besoins du système de fichiers. Nous parlons dans ce cas de notion d élasticité, paradigme du concept de cloud computing. ZFS représente le candidat parfait pour l équipement des datacenter. Notons que l International Data Corporation publia en 2011 une statistique sur le volume de données dans le cloud : "Celui-ci connaît ainsi une croissance exponentielle 1.1 qui pourrait le faire flirter avec les 8 000 Exabytes (8000 milliards de Gigabytes!) à l horizon 2015." 1 : Figure 1.1: Le volume de données dans le cloud en 2015 Par ailleurs, le système de fichiers grandit et diminue en fonction des exigences de ZFS sans avoir à répartitionner des unités de stockage sous-jacentes. Sun microsystem présente ici un 1. http://www.journaldunet.com/solutions/systemes-reseaux/cloud-computing-et-virtualisation/ volume-de-donnees.shtml 2

principe sécuritaire bien connu : l économie de mécanisme qui consiste à obtenir un design aussi petit et aussi simple que possible. Nous évitons ainsi des erreurs de design et d implémentation qui peuvent contourner les règles de sécurité en condition normale d utilisation. Il intègre d autres fonctionnalités et de ce fait s incorpore aisément dans de grands systèmes distribués. 1.2 Contexte de l expérience : ZFS avec les bureaux Citrix et la virtualisation d applications 1.2.1 Généralités Les gestionnaires de datacenter ont découvert à quel point il était difficile de manager un environnement distribué de bureaux en respectant les contraintes telles que la criticité des données et des applications. La tâche qui consiste en l implémentation d un tel cahier des charges est très laborieuse, onéreuse et semée d embûches. Face à ce constat, Citrix 2 a fait son choix en adoptant ZFS. La figure 1.2 montre un cas de déploiement typique de Citrix Xen Desktop avec la solution de stockage ZFS. Figure 1.2: Environnement Citrix XenDesktop avec ZFS Face à cet environnement obscur, nombre de gestionnaires implémentent les bureaux virtuels. Ils sont ainsi à la recherche de : l augmentation de l efficacité opérationnelle, la mise en place d une stratégie de protection fiable des données, la réduction des dépenses en immobilisation et exploitation, la centralisation et standardisation de l architecture d application et de bureaux à distance. 2. À l ère du cloud, Citrix entreprise multinationale américaine se donne pour objectif de révolutionner la méthode de travail des individus, des entreprises et des directions informatiques. Ses produits de collaboration, de virtualisation et de mise en réseau ont pour objectif de faciliter quotidiennement le travail mobile et l adoption des services du cloud. Citrix compte plus de 260 000 entreprises clientes. 3

Avec l emploi de ZFS, le gestionnaire a le pouvoir de standardiser l environnement de déploiement des bureaux virtuels. Ainsi, il est très facile de configurer des templates de déploiement : les gestionnaires réalisent ainsi des économies budgétaires et la solution est flexible et évolutive. 1.2.2 Efficacité de stockage Pendant la mise en production d un environnement de bureaux virtuels, la tâche la plus cruciale consiste en la consolidation des données lorsqu elles sont migrées vers le pool de stockage ZFS. Au cours de cette tâche l efficacité de ZFS accepte d approvisionner de grandes quantités de bureaux virtuels. Des caractéristiques clés comme la dé-duplication, la compression... ne sont permises que par ZFS. De plus, ces caractéristiques améliorent l efficacité du stockage en éliminant les blocs de données dupliqués, en compressant les données et en allouant à la volée de l espace de stockage. Une étude menée par le groupe Edison montre que Sun ZFS surpasse ses concurrents directs : 36 % de temps d administration en moins, 45 % de temps de configuration en moins tout en étant 38 % moins complexe à approvisionner. 1.2.3 Améliorer l efficacité opérationnelle Garder la disponibilité des bureaux virtuels s avère très laborieux, complexe et difficile. Cette tâche est drastiquement simplifiée avec la solution d administration ZFS. L utilisation de l outil d administration DTrace Storage Analytics implique une diminution de 44 % sur le temps du diagnostic des montées en charge du stockage et 44 % d étapes en moins pour réaliser ce diagnostic. 1.2.4 Protection fiable des données Avec la solution de stockage ZFS, les services de données critiques comme les snapshots et les clones sont fournis instantanément et optionnellement. De plus, les outils directement intégrés à ZFS procurent à long terme des backup et des restaurations pour l architecture Xen- Desktop. Les fonctions de réplication incluent des stratégies de fail-over 3 et de fail-back 4 que les administrateurs mettent aisément à profit en cas de souci. 1.2.5 Flexibilité, rapidité et performance Les performances sont importantes pour une infrastructure à bureaux distribués : les utilisateurs doivent pouvoir confortablement utiliser leurs applications sans temps de latence. Cette capacité est permise grâce à ZFS et à sa technologie de stockage hybride SSD. ZFS met à profit ses algorithmes qui lui confèrent des performances accrues en lecture et en écriture. 3. Le fail-over représente la capacité d un équipement à basculer automatiquement vers un chemin réseau alternatif ou en veille. 4. le fail-back représente un retour à la situation d origine après correction du problème. 4

1.2.6 Pistes de réflexion Nous faisons preuve de scepticisme et souhaitons vérifier dans les expériences ci-dessous si les arguments avancés par Oracle et Citrix sont valides. Nous nous pencherons donc sur la validation des arguments ci-après : ZFS est efficace en terme de stockage, ZFS simplifie l administration, ZFS est flexible, ZFS est évolutif, ZFS est performant, ZFS est sécuritaire, 1.3 Environnement de laboratoire 1.3.1 Hardware Pour cette expérience nous utilisons notre ordinateur Portable MacBookPro. La figure 1.3 nous informe sur les composants présents dans l ordinateur que nous utilisons pour effectuer nos tests. Figure 1.3: Configuration matériel du laboratoire de tests 1.3.2 Logiciel de virtualisation : Oracle Virtual Box L utilisation de Virtual Box est-elle judicieuse? VirtualBox, libre et gratuit, correspond à un outil de virtualisation d OS ; il appartient à la société Oracle qui développe également Solaris. Virtualbox connaît une communauté active ainsi qu un support de plateforme très vaste.v i.e. la mémoire centrale, le nombre de disques,... Cet outil admirable semble tout disposé à répondre à nos besoins dans le contexte de ce use-case. 5

1.3.3 Système d exploitation : Solaris Pourquoi Solaris? Solaris fut développé à l origine par Sun Microsystem ; l actuel propriétaire comme nous venons de le préciser précédemment s appelle Oracle. Nous privilégions cette plateforme car elle possède en natif le système de fichiers ZFS qui est l objet de ce travail. 6

Chapitre 2 Mise en place de l environnement 2.1 Configuration d Oracle Virtualbox Nous nous employons tout d abord à la création d une nouvelle machine que nous appelons "Solaris 11". De bonnes performances au final nécessitent en amont l attribution d une mémoire RAM adéquate pour notre machine virtuelle, nous dotons cette mémoire de 2 Go (figure 2.1) : Figure 2.1: Configuration de la RAM pour le serveur Nous allouons ensuite à la machine virtuelle un disque dur virtuel de 10 Go pour l arborescence de fichiers ZFS. Une pleine exploitation de la puissance du RAID ZFS nous amène à la création de 8 disques durs virtuels que nous rajoutons au disque qui contiendra les fichiers d installation de Solaris. Chaque disque possède une capacité allouée dynamiquement de 2 Go. Figure 2.2: Configuration du nombre de disques pour le serveur 7

2.2 Oracle Solaris 11 2.2.1 Installation de Solaris A. L installation de Solaris ne pose pas de souci majeur. Les étapes sont dispensées en annexe 2.2.2 Configuration de Solaris Vérification de la présence des disques Le répertoire "/dev/dsk" contient les disques logiques pour le montage ou le démontage des systèmes de fichiers. La figure 2.3 révèle le contenu de ce répertoire : Figure 2.3: Contenu du répertoire "/dev/dsk" Sachons que Solaris fait appel à une nomenclature de nommage i.e. cxtxdxsx pour ses disques appelés LUN (Logical Unit Number) : c : l id du contrôleur (controller ID) qui identifie l adaptateur du bus hôte, t : l id de la cible (target ID) qui identifie la cible SCSI sur ce bus, d : l id du disque (disk ID) qui identifie le numéro d unité logique (LUN) sur cette cible, s : l id de la tranche (slice ID) qui identifie une tranche spécifique sur ce disque. 8

Nous approfondissons notre étude en exécutant la commande format qui nous dévoile le nombre de disques : Figure 2.4: Exécution de la commande "format" Le compte-rendu de la commande prouve que les 8 disques rajoutés au préalable sont effectivement présents et bien acceptés par Solaris. 9

Chapitre 3 Expérimentations 3.1 Configuration du pool ZFS Nous réalisons une première étape de vérification des disques disponibles dans le répertoire "/dev/dsk". Notre attention se porte maintenant sur la création d un pool que nous appelons volontairement "mglpool" e.g. pool de la maîtrise en génie logiciel. Ce pool se compose d un miroir de deux disques respectivement intitulés "c3t2d0p0" et "c3t3d0p0" comme le montre la figure 3.1. Dans ce sens, nous entrons la commande : Figure 3.1: Configuration à appliquer zpool create poolmgl mirror c3t2d0p0 c3t3d0p0 Figure 3.2: Création d un pool ZFS appelé "poolmgl" Comme nous pouvons le constater sur la figure 3.2, nous sommes dispensés de formatage requis, de fdisk 1, ou encore de manipulation complexe de partition logique! 1. Selon Wikipédia, "fdisk est un outil de manipulation de partitions d un disque dur sous Linux, DOS et 10

3.2 Vérification de la configuration Vérifions à présent si la commande validée produit l effet escompté (3.3) et entrons pour vérification la commande : zpool list et observons le résultat : Figure 3.3: Liste des pool de stockage disponibles Comme nous pouvons le remarquer, le système de fichiers poolmgl est bien "Online" et propose une taille de 2 Go. De plus, ZFS vient de créer automatiquement un point de montage ("/poolmgl"). 3.3 Création d un fichier Pour la suite de notre expérience, nous décidons de créer un fichier d une taille de 1 Mo dans "/poolmgl" pour prendre connaissance du résultat sur le pool de stockage. Figure 3.4: Création d un fichier de 1 Mo La figure 3.4 montre que notre pool de stockage possède une taille actuelle de 1 Mo, ce résultat est à la hauteur de toutes nos espérances. MacOSX." 11

3.4 Création d un home Nous orientons à présent nos efforts sur la création d un nouveau système de fichiers "home" qui jouera le rôle de conteneur pour d autres systèmes de fichiers en l occurrence mathieu, benoît et omar. Nous entrons donc les commandes suivantes : zfs create poolmgl/home zfs create poolmgl/home/mathieu zfs create poolmgl/home/benoit zfs create poolmgl/home/omar Nous souhaitons vérifier le résultat (figure 3.5). Figure 3.5: Création d une arborescence de système de fichiers et vérification des résultats ZFS vient de créer correctement l arborescence ; qui plus est tous les utilisateurs partagent le même volume de données (2,0 Go). Poursuivons confiants nos investigations et notre expérimentation par le montage du fichier home directement dans le répertoire "/users". Figure 3.6: Changement du point de montage des "home" des utilisateurs Comme nous pouvons le remarquer, il nous est très facile de modifier le point de montage des répertoires "home". ZFS se chargera de la modification à la volée par une entrée au préalable de la commande : zfs set mountpoint=/users poolmgl/home La figure 3.6 montre que ZFS démonte et remonte parfaitement le système de fichiers. 12

3.5 Test d entrée/sortie Ce test nous informera si notre pool "poolmgl" traite effectivement de gros volumes de données. La commande : cat /dev/urandom > /users/mathieu/samplefile & permet la création d un fichier samplefile qui regorge de données créées aléatoirement dans le "home" de mathieu. Vérifions si les miroirs distribuent les données ; la figure 3.7 nous prouve que tout se passe pour le mieux. Figure 3.7: Vérification des entrées / sorties dans le cas d un gros fichier de données 13

3.6 Mise en place du striping dynamique 3.6.1 Rappel sur le striping dynamique Selon Wikipédia, "Le RAID 0 également connu sous le nom d «entrelacement de disques» ou de «volume agrégé par bandes» (striping en anglais) est une configuration RAID qui permet d augmenter significativement les performances de la grappe en faisant travailler n disques durs en parallèle (avec N >= 2 )." 3.6.2 Ajout d un miroir au pool "poolmgl" Nous décidons d ajouter au pool deux disques en miroir "c3t4d0p0" et "c3t5d0p0" (figure 3.8). Figure 3.8: Configuration à appliquer Pour effectuer cette opération, tapons la commande suivante : zpool add poolmgl mirror c3t4d0p0 c3t5d0p0 Observons le résultat sur la figure 3.9 : Figure 3.9: Ajout d un miroir dans le pool "poolmgl" Nous constatons la réussite du striping dynamique avec un doublement de la capacité du pool qui passe de 2,0 Go à 4,0 Go. 14

3.7 Mise en place de Quotas utilisateurs Un quota est une valeur en octet que l on attribue à un dossier ou à un utilisateur dans un but de non-dépassement de cette valeur. Nous allons concrètement par cette expérience donner un quota de 1 Go à omar et un quota de 1 Go au reste des utilisateurs : zfs set quota=1g poolmgl/home/omar zfs set quota=1g poolmgl/home Observons le résultat sur la figure 3.10 : Figure 3.10: Mise en place de quotas pour les utilisateurs Comme nous pouvons le voir, le "home" de Omar à un quota de 1 Go (1024M) et les autres utilisateurs du répertoire "home" se partagent 1 Go. 3.8 Mise en place de la compression de données Le système de fichiers ZFS propose la compression des données.le système de fichiers ZFS propose la compression des données qui contre-intuitivement a pour but d augmenter les performances. En effet, la durée d une compression/décompression des données est plus courte qu une lecture/écriture de données non-compressées sur le disque. Pour ce faire, nous entrons la commande : zfs set compression=on poolmgl/home 3.9 Création d un snapshot Les snapshots sont des volumes logiques qui effectuent une sauvegarde cohérente d un autre volume logique appartenant au même groupe de volumes. Dans ce use case, nous concevons un Snapshot pour l utilisateur Benoît. Nous créons au préalable un fichier intitulé "fichier" de 1 Mo. mkfile 1m /poolmgl/home/benoit/fichier zfs snapshot poolmgl/home/benoit@today 15

La figure 3.11 nous donne le résultat : Figure 3.11: Création d un snapshot du "home" de benoit Comme nous pouvons le constater, le snapshot a bien été créé et correspond à la copie identique du home de benoit! 3.10 Mise en place d une grappe RAID-Z Dans cette expérience, nous mettons en place un système raid-z composé de 4 disques. Pour les besoins de notre expérimentation, nous sommes tenus de rajouter un 9 ème disque virtuel à Solaris. Puis, nous créons par nécessité le pool de stockage que nous appelons "poolraidz" et lui affectons 4 disques (figure 3.12) : zpool create poolraidz raidz c3t6d0p0 c3t7d0p0 c3t8d0p0 c3t9d0p0 Figure 3.12: Configuration à appliquer Enfin, nous vérifions si le pool de stockage est bien créé : Figure 3.13: Vérification du pool "poolraidz" Nous pouvons confirmer sa création puisqu il affiche une taille de 4 disques x 2 Go = 8 Go (figure 3.13). 16

Vérifions à présent si les disques sont effectivement affectés au pool : satisfaits, nous pouvons Figure 3.14: Vérification de l affectation des disques dans le pool "poolraidz" conclure que tout a parfaitement fonctionné (figure 3.14). 3.11 Striping dynamique sur deux grappes RAID-Z Dans cette expérience, nous créons une seconde grappe RAID que nous plaçons en miroir avec la première grappe. Nous supprimons au préalable le pool "poolmgl" créé pour les besoins des expériences précédentes : zpool destroy poolmgl En effet,nous ne disposions pas suffisamment de disques virtuels, nous devions en posséder 8. Nous créons et ajoutons ensuite la seconde grappe RAID-Z en miroir au pool "poolraidz" (figure 3.15) grâce à la commande : zpool add poolraidz raidz c3t2d0p0 c3t3d0p0 c3t4d0p0 c3t5d0p0 Figure 3.15: Configuration à appliquer 17

Nous observons le résultat de la commande sur la figure 3.16. Figure 3.16: Vérification de la seconde grappe RAID-Z dans le pool "poolraidz" Nous confirmons que l opération s est admirablement déroulée. 3.12 Conclusion des expérimentations Ce lot d expériences réalisées nous prouve que ZFS est très flexible et évolutif ; l ajout d espaces de stockages supplémentaires, dans notre cas le supplément de miroir ou de grappe ZFS en mode striping dynamique s effectue instantanément. Par ailleurs, une seule commande bash suffit pour réaliser ces opérations rendant l administration très rapide et simplifiée. Dans le même ordre d idée, la création de snapshot et l attribution de quotas se fait aisément. Enfin, nous mesurons l importance des performances puisque la compression des données permet contre toute attente un gain de temps en lecture et en écriture. 18

Chapitre 4 Tests avancés sur la performance et l intégrité des données avec ZFS 4.1 Création de 100 systèmes de fichiers en miroir Par cette expérimentation nous souhaitons observer les performances en écriture de ZFS et dans ce but créer 100 systèmes de fichiers en miroir. Nous élaborons dans un premier temps un système de fichiers dans poolmgl que nous appelons "work" : zfs create poolmgl/work Nous démarrons ensuite la come time sur une boucle pour la création des 100 systèmes de fichiers : time for fs in seq 1 100 ; do zfs create poolmgl/work/$fs; done Figure 4.1: Création de 100 systèmes de fichiers en miroir La figure 4.1 nous montre qu il suffit de 17 secondes à peine pour créer cette panoplie de systèmes de fichiers, véritable performance! 19

Nous vérifions enfin si les systèmes de fichiers sont bien présents dans le répertoire "/poolmgl/work" : Figure 4.2: Les 100 systèmes de fichiers sont répertoriés 20

4.2 Capacité de correction des données 4.2.1 Définition de l expérimentation Par cette expérience nous voulons analyser la capacité de ZFS à garder les données intègres sur le disque. Nous commencerons tout d abord par corrompre les données d un disque appartenant à un miroir et analyserons les mesures prises par ZFS pour résoudre le problème. En cas de non résolution du problème par ZFS, nous prendrons les mesures nécessaires. 4.2.2 Création d un pool de stockage Nous créons dans un premier temps un pool de stockage composé de deux disques en miroir que nous nommons "poolsante" : zpool create poolsante mirror c3t6d0p0 c3t7d0p0 Nous vérifions ensuite la santé du pool de stockage (figure 4.3). Nous ne relevons aucune erreur. Figure 4.3: Santé du pool de stockage "poolsante" 4.2.3 Création d un marqueur témoin Nous voulons importer un fichier pdf dans notre système de fichiers pour en faire un marqueur avec l assistance de la fonction de hachage md5. La figure 4.4 nous montre le hachage du fichier importé. Figure 4.4: Création d un marqueur témoin 21

4.2.4 Corruption massive du système de fichiers Nous décidons de créer 20 Mo de données corrompues sur un côté du miroir. Nous choisissons le disque c3t6d0p0 : dd if=/dev/urandom of=/dev/dsk/c3t6d0p0 bs=1024 count=20480 Figure 4.5: Création de 20 M de données corrompues Nous sommes à nouveau estomaqués par la puissance de ZFS puisque celui-ci permet de choisir une taille de bloc via l argument "bs" (block size) (figure 4.5). 4.2.5 Analyse de la réaction du système de fichiers ZFS Nous démarrons la commande "zpool status" : Figure 4.6: Analyse du status des 2 disques en miroir La grappe conserve sa bonne santé comme en témoignent les données qui sont toujours en mémoire-cache. Nous choisissons de prendre les devant et effectuons un import/export du système de fichiers pour vider la mémoire cache. zpool export poolsante zpool import poolsante Nous procédons ensuite au hachage du fichier pdf et vérifions si celui-ci n a pas été corrompu (figure 4.7). Figure 4.7: Vérification de la corruption du fichier pdf 22

Nous constatons une absence de corruption puisque le md5 est égal au md5 que nous appelions marqueur témoin. Es-ce une erreur de notre part ou ZFS a-t-il réparé les secteurs défectueux? Nous allons répondre à la question et nous jugeons nécessaire de lancer la commande : zpool status La figure 4.8 donne le résultat suivant : Figure 4.8: Détection des erreurs par ZFS Nous observons que l état du pool est marqué comme dégradé et le status donne le motif de cette dégradation. De plus, le disque du miroir que nous avions corrompu (c3t6d0p0) marque 17 erreurs de somme de contrôle. 4.2.6 Nettoyage du disque infecté Nous savons le disque infecté et sa nécessité de le nettoyer ; nous lançons en conséquence la commande : zpool scrub poolsante ; sleep 1 ; zpool status Notre initiative à lancer cette commande est porteuse puisque le système de fichiers est à nouveau sain (figure 4.10). Figure 4.9: Disque nettoyé, sain Le mode scrubbing de ZFS détecte les erreurs latentes sur un disque infecté, les corrige dans la mesure du possible. Nous devons savoir qu indépendamment de la taille du disque, l opération de nettoyage (scrubbing) est très rapide puisque ZFS traite uniquement les portions du disque qui sont utilisées. Par contre, que faire si les erreurs ne sont pas correctibles? 23

4.2.7 Remplacement d un disque défectueux à chaud dans le miroir Le scrubbing ZFS donc ne permet pas systématiquement la correction de toutes les erreurs d où la nécessité de remplacer le disque infecté dans le miroir. Ainsi le disque infecté c0t6d0p0 est remplacé par le disquee c0t8d0p0 grâce à la commande : zpool replace poolsante c3t6d0p0 c3t8d0p0 Nous vérifions le résultat : Nous voyons que le miroir vient de se resynchroniser (message Figure 4.10: Resynchronisation du miroir "scan"). Notons que ZFS resynchronise uniquement les secteurs utilisés, il fait à nouveau preuve d une grande efficacité. 4.2.8 Remplacement automatique d un disque à chaud (hot spare) L administrateur s il le souhaite peut ajouter un disque en mode "hotspare", c est à dire que ce dernier sera mise en place automatiquement si un des disque du pool devient défectueux. Dans un premier temps, il est nécessaire de passer la valeur de l autoreplace à "on" car celle-ci est paramétrée à "off" par défaut. Nous lançons donc la commande : zpool set autoreplace=on poolsante Ensuite, il nous faut ajouter un disque de récupération au "poolsante". Dans ce sens, il est nécessaire de lancer la commande : zpool add poolsante spare c3t9d0p0 Sur la figure 4.11, nous pouvons constater que le disque c3t9d0p0 a bel et bien été ajouté au pool "poolsante". Figure 4.11: Ajout d un disque en mode Hot Spare au pool "poolsante" 24

4.2.9 Conclusion de l expérience ZFS autorise l emploi d outils comme le scrubbing qui permettent l utilisation de disques peu onéreux au final. De plus, la corruption des données silencieuses est corrigée automatiquement par le système de fichiers ZFS grâce à la méthode du copy-on-write explicitée dans notre rapport théorique : l intégrité des données est donc préservée. ZFS permet enfin la disponibilité des données en tout temps grâce à l ajout de disques qui précède la resynchronisation rapide du miroir! La solution semble adaptée pour des environnements hautement virtualisés comme le cloud computing ou des environnements destinés à héberger de gros volumes de données comme le big data. 25

Conclusion Les diverses expériences menées sur ce use case ont permis de démontrer que la solution ZFS répond aux besoins des entreprises en terme de virtualisation de bureaux comme Citrix Xen Desktop. En effet, nous avons démontré que la solution était : Évolutive : Nous pouvons aisément rajouter un miroir en striping dynamique à un pool de données, cette constatation est également valable pour le RAID-Z, Flexible : Nous disposons d une option de rajout de disques à chaud dans le pool de stockage, de création et de suppression des systèmes de fichiers à la volée, Performante : la création de systèmes de fichiers ainsi que la resynchronisation d un miroir sont très rapides, la compression permet un gain de temps, Sécurisé : l intégrité des données est garantie puisque le système corrige automatiquement les erreurs y compris celles de corruptions silencieuses de données ; de plus l encryption des fichiers assure leur confidentialité. Les données sont toujours disponibles même si un miroir est défaillant, User Friendly : L administration simplifiée propose uniquement deux commandes procurant un gain de temps, Peu coûteuse : ZFS permet l utilisation de disques à bas prix car il met à profit des outils comme le scrubing ou le remplacement à chaud de disques dans un pool, Cependant, la suppression des miroirs du système de fichiers est impossible. Nous aurions aimé disposer de vdev distants, c est-à-dire pouvoir accéder à des disques sur le réseau pour leur rajout sur notre pool de stockage. En ce qui me concerne : Ce use case m a initié au système d exploitation Solaris et au système de fichiers ZFS jusqu alors méconnus pour ma part. Cette étude de cas vient enrichir mes connaissances et me propose une nouvelle approche en matière informatique. Cette expérimentation est d autant plus gratifiante qu elle affine mon mémoire de maîtrise qui s oriente vers l intégrité des données dans le cloud. De cette manière, ZFS constitue un support de qualité par le test de son comportement dans le contexte d une intégrité dans le cloud. ZFS représente un bon collaborateur par sa facilité d administration et celle des pools ce qui le démarque des autres solutions de systèmes de fichiers où une administration lourde est bien souvent nécessaire et contraignante. 26

Table des figures 1.1 Le volume de données dans le cloud en 2015.................. 2 1.2 Environnement Citrix XenDesktop avec ZFS.................. 3 1.3 Configuration matériel du laboratoire de tests.................. 5 2.1 Configuration de la RAM pour le serveur.................... 7 2.2 Configuration du nombre de disques pour le serveur.............. 7 2.3 Contenu du répertoire "/dev/dsk"........................ 8 2.4 Exécution de la commande "format"...................... 9 3.1 Configuration à appliquer............................ 10 3.2 Création d un pool ZFS appelé "poolmgl".................... 10 3.3 Liste des pool de stockage disponibles...................... 11 3.4 Création d un fichier de 1 Mo.......................... 11 3.5 Création d une arborescence de système de fichiers et vérification des résultats 12 3.6 Changement du point de montage des "home" des utilisateurs......... 12 3.7 Vérification des entrées / sorties dans le cas d un gros fichier de données... 13 3.8 Configuration à appliquer............................ 14 3.9 Ajout d un miroir dans le pool "poolmgl".................... 14 3.10 Mise en place de quotas pour les utilisateurs.................. 15 3.11 Création d un snapshot du "home" de benoit.................. 16 3.12 Configuration à appliquer............................ 16 3.13 Vérification du pool "poolraidz"......................... 16 3.14 Vérification de l affectation des disques dans le pool "poolraidz"........ 17 3.15 Configuration à appliquer............................ 17 3.16 Vérification de la seconde grappe RAID-Z dans le pool "poolraidz"...... 18 4.1 Création de 100 systèmes de fichiers en miroir................. 19 4.2 Les 100 systèmes de fichiers sont répertoriés.................. 20 4.3 Santé du pool de stockage "poolsante"..................... 21 4.4 Création d un marqueur témoin......................... 21 4.5 Création de 20 M de données corrompues.................... 22 4.6 Analyse du status des 2 disques en miroir.................... 22 4.7 Vérification de la corruption du fichier pdf................... 22 4.8 Détection des erreurs par ZFS.......................... 23 4.9 Disque nettoyé, sain............................... 23 4.10 Resynchronisation du miroir........................... 24 4.11 Ajout d un disque en mode Hot Spare au pool "poolsante"........... 24 27

A.1 Installation Solaris : choix de la configuration du clavier............ 31 A.2 Installation Solaris : choix de la langue..................... 31 A.3 Installation Solaris : choix du disque d installation............... 32 A.4 Installation Solaris : utilisation de tout le disque................ 32 A.5 Installation Solaris : Configuration des paramètres réseau en mode automatique 32 A.6 Installation Solaris : choix du mdp root et création d un utilisateur (mathieu). 33 A.7 Installation Solaris : configuration de la zone de temps............. 33 A.8 Installation Solaris : installation des fichiers sur le disque............ 34 A.9 Installation Solaris : fin de l installation..................... 34 28

Bibliographie [1] FISMA : Federal information security management act of 2002. [En ligne]. Disponible :http://csrc.nist.gov/drivers/documents/fisma-final.pdf, 2002. [Consulté le 2 septembre 2012]. [2] Gartner : Personal cloud services will be integrated in most connected devices by 2013 : Gartner. [En ligne]. Disponible :http://www.gartner.com/it/page.jsp?id=1942015, 2012. [Consulté le 1 septembre 2012]. [3] Schmitt Mathieu : Tutoriel zfs. Rapport technique, Université du Quebec à Montréal, 2012. [4] Peter Mell et Tim Grance : The nist definition of cloud computing. National Institute of Standards and Technology, 53:50, 2009. [5] Sun Microsystem : Zfs on-disk specification draft. Rapport technique, Sun Microsystem, 2006. [6] Sun Microsystem : Oracle R solaris zfsadministration guide. Rapport technique, Sun Microsystem, 2010. [7] Wikipedia : Intégrité (cryptographie). [En ligne]. Disponible :http://fr.wikipedia. org/wiki/int%c3%a9grit%c3%a9_(cryptographie), 2012. [Consulté le 31 aout 2012]. [8] Wikipedia : Raid (informatique). [En ligne]. Disponible :http://fr.wikipedia.org/ wiki/raid5, 2012. [Consulté le 2 septembre 2012]. [9] Wikipedia : Zfs. [En ligne]. Disponible :http://fr.wikipedia.org/wiki/zfs, 2012. [Consulté le 30 aout 2012]. [10] Wikipedia : Zfs. [En ligne]. Disponible :http://en.wikipedia.org/wiki/zfs, 2012. [Consulté le 30 aout 2012]. 29

Appendices 30

Annexe A Installation de Solaris 11 Figure A.1: Installation Solaris : choix de la configuration du clavier Figure A.2: Installation Solaris : choix de la langue 31

Figure A.3: Installation Solaris : choix du disque d installation Figure A.4: Installation Solaris : utilisation de tout le disque Figure A.5: Installation Solaris : Configuration des paramètres réseau en mode automatique 32

Figure A.6: Installation Solaris : choix du mdp root et création d un utilisateur (mathieu) Figure A.7: Installation Solaris : configuration de la zone de temps 33

Figure A.8: Installation Solaris : installation des fichiers sur le disque Figure A.9: Installation Solaris : fin de l installation 34