Redondant Array of Inexpensive Disk (RAID) TP

Transcription

Redondant Array of Inexpensive Disk (RAID) TP
BTS S.I.O.
2nd Année
Option S.I.S.R.
TP 14 - RAID
Redondant Array of Inexpensive Disk (RAID)
1. But à atteindre
Installer et mettre en œuvre une solution RAID1 et RAID5.
2. Présentation du déroulement
Ce TP se déroule en quatre étapes :
1. Créer 9 disques virtuels qui, vu de la machine virtuelle formeront 9 disques durs pour prendre
en charge le RAID.
2. Installer les paquets et les modules nécessaires ;
3. Réaliser un stockage de données en RAID 1, avec trois disques, dont un de secours (spare), et
tester la résistance aux pannes de cet agrégat ;
4. Réaliser un stockage de données en RAID 5, avec 6 disques, dont un de secours (spare), et
tester la résistance aux pannes de cet agrégat.
Nota : Les agrégat seront, dans ce TP, réalisés avec des disques virtuels situées sur le même disque
physique, simulant ainsi la présence de neuf disques physiques.
Il est bien évident que cette solution n'apporte strictement aucun avantage, ni en terme de sécurité,
ni en terme de performances puisque si le disque physique tombe en panne toutes les disques virtuels
seront perdus. Toutefois l'enchaînement des commandes et les réactions du système seront les mêmes
avec N disques virtuels qu'avec N disques physiques différents.
1. Matériels, architecture à utiliser, pré-requis et conception.
1.1. Connaissances considérées comme acquises et TP préalable
 Vous devez maîtriser la configuration réseau d'une machine physique, le clonage de
machines virtuelles et la configuration de machines virtuelles dans l'environnement du
contexte MLIF.
1.2. Préparation de la machine virtuelle « srv-web »
Ajoutez 9 disques virtuels Vdi Sata de taille fixe de 1Go chacun (vérifiez que vous avez bien
la place sur le disque physique) nommés :
 raid1-1.vdi, raid1-2.vdi, raid1-3.vdi
 raid5-1.vdi, raid5-2.vdi, raid5-3.vdi, raid5-4.vdi, raid5-5.vdi, raid5-6.vdi
Nota : La taille des disque qui formeront le Raid est fixé à 1 Go pour ne pas perdre de temps lors de la
construction et de la réparation des agrégats. Le résultat sera le même qu'avec des disque plus grands
mais évitera des temps d'attente pouvant atteindre plusieurs heures avec des gros disques. Bien sûr, en
production, un Raid aussi petit ne servirait pas à grand chose.
 Attacher ces 9 disques à la machine srv-web, sur le contrôleur Sata existant, sur les ports 1 à 9.
Nota : le port 0 est déjà occupé par le disque « system » de srv-web.
 Démarrez la machine virtuelle srv-web et vérifiez la présence des 9 disques et du disque
système avec la commande :
ls /dev/sd*
Vous devez voir, en plus de votre disque système qui est, en principe, nommé sda, les neuf autres
disques qui doivent s'appeler sdb, sdc ... sdj.

Avec la commande « mount » vérifiez que le nom physique de votre disque système (celui
monté sur /) est bien « sda1 ».
 Utiliser la commande
cfdisk /dev/sdb
et créer une partition primaire prenant tout l'espace du disque de type « linux Raid Autodetect » (FD)

Conception V.Perrin , révision V.Mauduit
Document1
1/8


Recommencer l'opération pour les disques « sdc » à « sdj »
Vérifier avec la commande :
ls /dev/sd*
que les partitions sdb1, à sdj1 apparaissent. Si ces partitions nouvellement créées n'apparaissent
pas dans « /dev/ alors rebooter la machine « srv-web » ».
1 - Appelez-moi pour que je vienne vérifier cette partie du TP
1. Réalisation
1.1. Préparation de la machine « srv-web »
a) Le noyau que vous utilisez n'intègre pas directement la gestion des RAID logiciels, il va
donc falloir lui adjoindre les modules nécessaires à cette gestion grâce à la commande
« modprobe ». Pour cela :
 Lancer les commandes :
modprobe raid1
puis
modprobe raid456
b) Installer le paquet « mdadm » qui permet l'administration des RAID (Multiple Disk
ADMinistration) et accepter les valeurs proposées par défaut pour la configuration de la
messagerie.
1.2. Mise en place du RAID 1 sur « srv-web »
a) Création de l'agrégat
Pour créer un agrégat il faut indiquer son nom, son type, le nombre de disques le constituant,
le nombre de disques de secours (spare) et fournir la liste des partitions à agréger.
Par tradition les agrégats se nomment md (Multiple Disks) et sont numérotés à partir de 0. Ils
se présenteront donc sous la forme : /dev/md0 pour le premier agrégat, /dev/md1 pour le
second, etc...
 Lancer la commande (sur une seule ligne) :
mdadm --create /dev/md0 --level=1 --raid-device=2
--spare-device=1 --assume-clean /dev/sdb1 /dev/sdc1
/dev/sdd1
Dans cette commande, vous demandez :

La création d'un agrégat (--create), nommé « md0 »

en Raid 1 (level=1)

avec 2 disques (raid-device=2)

et un spare (spare-device=1)

On laisse les partitions intactes (assume-clean)

Les trois partitions à utiliser sont sdb1, sdc1 et sdd1.
Pour syntaxe complète de mdadm voir « man mdadm ».
L'agrégat est maintenant créé et un identifiant unique (uuid) sur 128 bits (16 octets) à été inscrit sur chaque
partition le constituant.
b) Observer l'agrégat
Lancer la commande suivante et observer les informations fournies :
mdadm --detail /dev/md0
Si vous avez tapé cette commande assez rapidement après la création de l'agrégat, vous devriez voir la
construction de l'agrégat progresser.
Remarquez que l'agrégat est constitué des disques « sdb1 » et « sdc1 » et que le spare est « sdd1 ».
Noter l'UUID de l'agrégat.
UUID :bfbd7367:bc1d7909:3eee4a42:deafed1d4
Conception V.Perrin , révision V.Mauduit
Document1
2/8
c) Formatage de l'agrégat
Un agrégat se comporte exactement comme un disque dur. Il faut donc le formater (lui
implanter un système de fichier).
mkfs /dev/md0
d) Montage de l'agrégat
Comme tout disque, un agrégat ne peut être utilisé qu'après avoir été monté. Créer un
répertoire pour l'accueillir et montez l'agrégat dessus
mkdir /raid1/
mount /dev/md0 /raid1/
Vérifier par « df » que le montage est correct.
e) Taille de l'agrégat
Vous venez de faire un agrégat en Raid1 de trois disques de 1Go chacun. Lancer la commande :
df | grep md0
 Quelle est la taille du disque agrégé ?
Taille de l'agrégat :1027224

Pourquoi cette taille n'est pas égale à 3 fois 1Go
Réponse :
Conception V.Perrin , révision V.Mauduit
Document1
3/8
f) Remplissage de l'agrégat
Vérifier de contenu de l'agrégat avec la commande :
ls /raid1/
Il ne contient qu'un seul répertoire (lost+found), en principe vide, qui est implanté systématiquement
lors du formatage.
Pour tester le fonctionnement de l'agrégat, il va falloir mettre quelques données dessus
cp -R /usr/* /raid1/
g)
Simulation d'une panne
mdadm /dev/md0 --fail /dev/sdb1
va simuler la panne du disque sdb.
mdadm --detail /dev/md0
Vous permet de constater que le disque de « spare » prend automatiquement le relais du disque en
panne et qu'il permet la réparation de l'agrégat. Lancez cette commande plusieurs fois pour contrôler
l'avancement de la reconstruction. Pendant ce temps, vous pouvez constater que les données de
l'agrégat sont intactes et restent accessibles.
h) Simulation d'une seconde panne
mdadm /dev/md0 --fail /dev/sdc1
va simuler la panne du disque sdc.
mdadm --detail /dev/md0
Vous permet de constater que deux disques sont en panne et que l'agrégat fonctionne toujours, mais en
mode « dégradé ». Vous pouvez vérifier que les données sont intactes alors que les deux disques qui
les contenaient à l'origine sont en panne.
i) Simulation du remplacement des disques en panne
On simule le retrait des deux disques défectueux de l'agrégat avec :
mdadm /dev/md0 --remove /dev/sdb1
mdadm /dev/md0 --remove /dev/sdc1
On simule le remplacement des deux disques en panne par deux disques « en état de marche » dans
l'agrégat avec :
mdadm /dev/md0 --add /dev/sdb1
mdadm /dev/md0 --add /dev/sdc1
Avec la commande
mdadm --detail /dev/md0
On peut constater que le premier disque sert à reconstituer l'agrégat et que le second disque se place
automatiquement en « spare », prêt à remplacer le prochain disque défectueux.
j) Assemblage des agrégats au démarrage
Pour qu'au boot de la machine, les agrégat soient reconstitués automatiquement, il faut
renseigner le fichier
/etc/mdadm/mdadm.conf
Conception V.Perrin , révision V.Mauduit
Document1
4/8
Pour l'instant il comporte plusieurs lignes dont une marquée :
DEVICE partitions
Indiquant que toutes les partitions de la machine seront scannées et susceptibles de faire partie d'un
agrégat.
A la suite de cette ligne, il faut ajouter les informations sur l'agrégat qui vient d'être créé :
ARRAY /dev/md0 uuid=11111111:222222222:333333333:444444444
En remplaçant bien sûr la valeur de l'uuid par celle que vous avez relevée lors de la création de
l'agrégat. Pour plus d'informations sur ce fichier, sa syntaxe et ses nombreuses possibilités vous
pouvez consulter « man mdadm.conf »
k) Vérification
Rebooter la machine, si tout est correct, l'agrégat devrait être assemblé sous le nom de
/dev/md0, ce que vous pouvez vérifier avec la commande
mdadm /dev/md0
l) Montage de l'agrégat au démarrage
L'assemblage de l'agrégat ne réalise pas son montage. Pour que le montage s'effectue
automatiquement, il faut, comme pour un disque dur, modifier le fichier « /etc/fstab »
et ajouter la ligne :
/dev/md0
/raid1
ext2 defaults
0
0
m)
Vérification
Rebooter la machine, si tout est correct, l'agrégat devrait être assemblé sous le nom de
/dev/md0 et ses données accessibles sous « /raid1/ ».
2 - Appelez-moi pour que je vienne vérifier cette partie du TP
Conception V.Perrin , révision V.Mauduit
Document1
5/8
1.3. RAID 5 ici on est ICI OOHOHOHOHOH
a) Création de l'agrégat
Lancer la commande (sur une seule ligne) :
mdadm --create /dev/md1 --level=5 -–raid-device=5 –-spare-device=1
--assume-clean /dev/sde1 /dev/sdf1 /dev/sdg1 /dev/sdh1 /dev/sdi1 /dev/sdj1
Cette fois on demande la création d'un agrégat en raid 5, avec 5 disques plus un spare. Les disques se
nomment : sde1, sdf1, sdg1, sdh1, sdi1 et sdj1.
b) Observer l'agrégat
mdadm --detail /dev/md1
Observer les informations fournies. Si vous avez tapé cette commande assez rapidement après la
création de l'agrégat, vous devriez voir sa construction progresser.
Noter l'UUID de l'agrégat.
UUID :
c) Formatage de l'agrégat
mkfs /dev/md1
L'agrégat est maintenant créé et son uuid a été inscrit sur chaque partition le constituant.
d) Montage de l'agrégat
mkdir /raid5
mount /dev/md1 /raid5
Vérifier par « df » que le montage est correct.
e) Taille de l'agrégat
Vous venez de faire un agrégat en Raid5 de six disques de 1Go chacun.
 Lancer la commande :
df | grep md1.
 Quelle est la taille du disque agrégé ?
Taille de l'agrégat :9848352

Pourquoi cette taille n'est pas égale à 6 fois 1Go
Réponse :
f) Remplissage de l'agrégat
cp -R /usr/* /raid5
Conception V.Perrin , révision V.Mauduit
Document1
6/8
g) Simulation d'une panne
mdadm /dev/md1 --fail /dev/sde1
mdadm --detail /dev/md1
Vous permet de constater que le disque de spare prend automatiquement le relais du disque en panne et
qu'il permet la réparation de l'agrégat. Lancez cette commande plusieurs fois pour contrôler
l'avancement de la reconstruction. Pendant ce temps, vous pouvez constater que les données de
l'agrégat sont intactes et restent accessibles.
h) Simulation d'une seconde panne
Lorsque la reconstitution des données sera terminée, lancer la commande :
mdadm /dev/md1 --fail /dev/sdi1
mdadm --detail /dev/md1
Vous permet de constater que deux disques sont en panne et que l'agrégat fonctionne en mode
« dégradé ». Vous pouvez constater toutefois que les données sont intactes alors que deux des cinq
disques qui les contenaient à l'origine sont en panne.
i) Simulation du remplacement des disques en panne
On enlève les deux disques défectueux de l'agrégat
mdadm /dev/md1 --remove /dev/sde1
mdadm /dev/md1 --remove /dev/sdi1
On les remplace par deux disques en « état de marche »
mdadm /dev/md1 --add /dev/sde1
mdadm /dev/md1 --add /dev/sdi1
On vérifie le fonctionnement
mdadm --detail /dev/md1
On constate que le premier disque réparé sert à reconstituer un agrégat correct et que le second disque
se place automatiquement en « spare », prêt à remplacer le prochain disque défectueux.
j) Assemblage des agrégats au démarrage
Ajouter les informations sur l'agrégat au fichier « /etc/mdadm/mdadm.conf »
ARRAY /dev/md1 uuid=11111111:222222222:333333333:444444444
En remplaçant bien sûr l'uuid par celui que vous avez relevé lors de la création de l'agrégat.
k) Montage de l'agrégat au démarrage
Modifier le fichier /etc/fstab et ajouter la ligne :
/dev/md1
/raid5
ext2 defaults
0
0
l) Vérification
Rebooter la machine, si tout est correct, les deux agrégats (md0 et md1) devraient être
montés sur /raid1 et sur /raid5 et leurs données accessibles sans aucune intervention.*
Conception V.Perrin , révision V.Mauduit
Document1
7/8
3 - Appelez-moi pour que je vienne vérifier cette partie du TP
Conception V.Perrin , révision V.Mauduit
Document1
8/8

Documents pareils