Plan du site  
pixel
pixel

Articles - Étudiants SUPINFO

RAID matériel sous Linux

Par Georgy MARINE Publié le 07/01/2017 à 19:55:53 Noter cet article:
(0 votes)
Avis favorable du comité de lecture

Aujourd'hui, nous allons voir comment réaliser des RAID (0, 1 et 5) sous Linux, mais avant de commencer un peu d'histoire. Originellement, le terme RAID signifiait « Redundant Arrays of Inexpensive Disks » (regroupement redondant de disques peu onéreux), mais aujourd'hui ce dernier a évolué pour devenir « Redundant Array of Independent Disks » (regroupement redondant de disques indépendants).

Le stockage RAID permet de constituer une unité de stockage à partir de plusieurs disques durs, afin de fournir de la tolérance aux pannes, d'améliorer la vitesse d'écriture et de lecture et aussi augmenter la capacité de stockage dans un système.

RAID logiciel ou RAID matériel ?

Il existe deux principales façons de mettre en place une solution RAID :

  • Le RAID logiciel : Toutes les fonctions RAID sont gérées par l'hôte, ce qui peut gravement amputer les performances de ce dernier.

  • Le RAID matériel : Les fonctions RAID sont exécutées sur un microprocesseur situé sur le contrôleur RAID indépendant de l'hôte.

Pour ce tuto, nous nous penchons uniquement sur le RAID de type logiciel.

Installation de l’utilitaire mdadm

Nous allons installer le paquet mdadm qui va gérer notre RAID logiciel.

Sous CentOS

# sudo yum install mdadm

Sous Debian

# sudo apt-get install mdadm

Sous RedHat

# sudo yum install mdadm

Sous Ubuntu

# sudo apt-get install mdadm

Création des partitions pour le RAID

Pour repérer les disques, faites la commande qui suit :

# fdisk –l

Sur chaque disque, on va créer une partition principale avec « cfdisk », par exemple :

# cfdisk /dev/sdb

Attention : Veuillez à ce que les disques disposent de la même taille.

Construction des matrices RAID

Pour un RAID 0 (entrelacement) :

Table 1. 

Nombre minimal de disques Avantage Tolérance aux pannes Capacité utilisable Applications types
2 Les temps d’accès et les taux de lectures/écritures sont plus élevés que sur un seul disque Pas de tolérance face aux pannes. Si un disque tombe en panne toutes les données sont perdues 100% Ordinateur haut de gamme, rendu en temps réel, etc.

Ici, nous disposons de 2 disques et nous souhaitons créer une partition RAID 0 :

# modprobe raid0
# mdadm --create /dev/md0 --level=raid0 --raid-devices=2 /dev/sdb1 /dev/sdc1

Pour vérifier le statut du RAID en live :

# watch cat /proc/mdstat

Pour un RAID 1 (écriture miroir) :

Table 2. 

Nombre minimal de disques Avantage Tolérance aux pannes Capacité utilisable Applications types
2 Les données sont écrites simultanément sur les 2 disques Pas de tolérance face aux pannes. Si un disque tombe en panne toutes les données sont perdues 50% Ordinateur haut de gamme, rendu en temps réel, etc.

Nous avons 2 disques et nous souhaitons créer une partition RAID 1 :

# modprobe raid1
# mdadm --create /dev/md0 --level=raid1 --raid-devices=2 /dev/sdb1 /dev/sdc1

Pour vérifier le statut du RAID en live :

# watch cat /proc/mdstat

Pour un RAID 5 (entrelacement avec parité) :

Table 3. 

Nombre minimal de disques Avantage Tolérance aux pannes Capacité utilisable Applications types
3 Sur chaque disque sont écrits des bits de parité, réservant automatiquement 1/3 du disque Si panne d’un disque (et pas plus) la réinsertion d’un nouveau disque reconstruira le volume et les données sur celui-ci 67% - 94% Ordinateur haut de gamme, rendu en temps réel, etc.

Pour cette partie, nous possédons 3 disques et nous allons créer un RAID 5 :

# modprobe raid5
# mdadm --create /dev/md0 --level=raid5 --raid-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1

Pour vérifier le statut du RAID en live :

# watch cat /proc/mdstat

Formatage et création du point de montage de votre RAID

Formatage de la partition

Vous devez maintenant formater votre partition. Dans cet exemple, nous allons formater ce dernier en utilisant « ext4 » :

# mkfs.ext4 /dev/md0

Montage de la partition

Maintenant on va créer un répertoire pour monter la grappe RAID dedans :

# mkdir /mnt/md0
# mount /dev/md0 /mnt/md0

Afin que le montage se fasse automatiquement à chaque démarrage il faudra vous rendre dans le fichier « /etc/fstab ». Et on écrit à la fin du fichier :

/dev/md0     /mnt/md0     ext4     defaults     0    2

Pour être sûr que votre volume se monte bien :

# mount –a 

Pour vérifier le statut du RAID :

# cat /proc/mdstat

Pour être sûr que votre volume est bien monté :

# df -h

Sauvegarde des configurations RAID

Pour finir, nous allons enregistrer notre configuration au sein du fichier « mdadm.conf ».

# mdadm -E -s -v >> /etc/mdadm.conf
# cat /etc/mdadm.conf

Quelques astuces pour mdadm

Voici quelques commandes utiles afin de manager au mieux vos volumes RAID :

Besoin d’aide ?

# mdadm --manage --help

Pour déconnecter votre RAID :

# mdadm --manage /dev/md0 --stop

Pour connecter votre RAID :

# mdadm --assemble --scan

Si le RAID ne se reconnecte pas :

# mdadm --manage /dev/md0 --run

Ajouter un disque à votre matrice RAID :

# mdadm --manage /dev/md0 --add /dev/sdX1

Marquer un disque comme étant défectueux et l’éjecter de la matrice :

# mdadm --manage /dev/md0 --fail /dev/sdX1
# mdadm --manage /dev/md0 --remove /dev/sdX1

Ré-ajouter un disque préalablement enlevé :

# mdadm --manage /dev/md0 --re-add /dev/sdX1

Remplacer l’un des disques de votre matrice RAID :

# mdadm --manage /dev/md0 --replace /dev/sdb1 --with /dev/sdd1

Connaître l’état du RAID :

# mdadm --detail /dev/md0

Glossaire

--add ou -a : Ajoute les disques/partitions à la liste (ajout à chaud) ;

--assemble ou -A : Assemble une matrice préexistante ;

--create ou -C : Permet la création du RAID ;

--detail ou -D : Permet de surveiller les grappes ;

--examine ou -E : Consiste à examiner une partition pour contrôler si elle fait bien partie d'un RAID ;

--fail ou -f : Passe le status des disques à fail ;

--help ou -h : Affiche une aide ;

--level ou -l : Le type de RAID à créer (les options sont : linear, raid0, 0, stripe, raid1, 1, mirror, raid4, 4, raid5, 5, raid6, 6, multipath, mp, fautly) ;

--manage : Gère le volume RAID ;

--raid-devices ou -n : Nombre de disques utilisée pour la matrice ;

--re-add : Ajouter un disque qui a été récemment retiré d'un RAID ;

--remove ou -r : Supprime les disques/partitions de la liste ;

--replace : Permet de remplacer un disque par un autre ;

--run ou -R : Permet de démarrer un RAID partiellement construit ;

--scan ou -s : Scan un fichier de configuration ou « /proc/mdstat », afin de trouver des informations ;

--stop ou -S : Arrête le RAID ;

--verbose ou -v : Indique que l'on veut voir à l'écran ce qui va se passer pendant la création ;

/dev/md0 : Représentant de la matrice RAID ;

/dev/sdb1, /dev/sdc1, /dev/sdd1 ou bien /dev/sdX1 : Disques/partitions ;

A propos de SUPINFO | Contacts & adresses | Enseigner à SUPINFO | Presse | Conditions d'utilisation & Copyright | Respect de la vie privée | Investir
Logo de la société Cisco, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société IBM, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Sun-Oracle, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Apple, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Sybase, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Novell, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Intel, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Accenture, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société SAP, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Prometric, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Toeic, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo du IT Academy Program par Microsoft, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management

SUPINFO International University
Ecole d'Informatique - IT School
École Supérieure d'Informatique de Paris, leader en France
La Grande Ecole de l'informatique, du numérique et du management
Fondée en 1965, reconnue par l'État. Titre Bac+5 certifié au niveau I.
SUPINFO International University is globally operated by EDUCINVEST Belgium - Avenue Louise, 534 - 1050 Brussels