FUNIX

Mettez un manchot dans votre PC



Raid 5

Configurer un volume raid 5 logiciel


Dernière modification 5 septembre 2010

Administration système

Présentation

L'objet de cette page n'est pas d'exposer la théorie du RAID est en particulier du RAID 5 pour cela je vous invite à consulter la page wikipedia à ce sujet.
Cette page vous présente la configuration du raid 5 logiciel avec Mandriva, cela dit comme la configuration se fait en ligne de commande, ça devrait marcher sur n'importe quelle distribution linux.

Configuration initiale

La configuration minimum pour du raid 5 est de 3 disques, c'est le type de configuration que j'ai adopté. La première chose à faire est de brancher physiquement vos disques durs, en rebootant dans le /var/log/messages, vous devriez avoir des lignes du style

Sep  3 18:42:06 power kernel: ata2.00: ATA-8: ST31000528AS, CC38, max UDMA/133
Sep  3 18:42:06 power kernel: ata2.00: 1953525168 sectors, multi 16: LBA48 NCQ (depth 31/32)
Sep  3 18:42:06 power kernel: ata2.00: configured for UDMA/100
Sep  3 18:42:06 power kernel: scsi 2:0:0:0: Direct-Access     ATA      ST31000528AS     CC38 PQ: 0 ANSI: 5
Sep  3 18:42:06 power kernel: sd 2:0:0:0: [sdb] 1953525168 512-byte logical blocks: (1.00 TB/931 GiB)
Sep  3 18:42:06 power kernel: sd 2:0:0:0: [sdb] Write Protect is off
Sep  3 18:42:06 power kernel: sd 2:0:0:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
Sep  3 18:42:06 power kernel: sd 2:0:0:0: [sdb] Attached SCSI disk
Sep  3 18:42:06 power kernel: ata3: SATA link up 3.0 Gbps (SStatus 123 SControl 0)
Sep  3 18:42:06 power kernel: ata3.00: ATA-8: SAMSUNG HD103SJ, 1AJ10001, max UDMA/133
Sep  3 18:42:06 power kernel: ata3.00: 1953525168 sectors, multi 16: LBA48 NCQ (depth 31/32)
Sep  3 18:42:06 power kernel: ata3.00: configured for UDMA/100
Sep  3 18:42:06 power kernel: scsi 3:0:0:0: Direct-Access     ATA      SAMSUNG HD103SJ  1AJ1 PQ: 0 ANSI: 5
Sep  3 18:42:06 power kernel: sd 3:0:0:0: [sdc] 1953525168 512-byte logical blocks: (1.00 TB/931 GiB)
Sep  3 18:42:06 power kernel: sd 3:0:0:0: [sdc] Write Protect is off
Sep  3 18:42:06 power kernel: sd 3:0:0:0: [sdc] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
Sep  3 18:42:06 power kernel: sd 3:0:0:0: [sdc] Attached SCSI disk
Sep  3 18:42:06 power kernel: ata4: SATA link up 3.0 Gbps (SStatus 123 SControl 0)
Sep  3 18:42:06 power kernel: ata4.00: ATA-8: Hitachi HDS721010CLA332, JP4OA3EA, max UDMA/133
Sep  3 18:42:06 power kernel: ata4.00: 1953525168 sectors, multi 16: LBA48 NCQ (depth 31/32)
Sep  3 18:42:06 power kernel: ata4.00: configured for UDMA/100
Sep  3 18:42:06 power kernel: scsi 4:0:0:0: Direct-Access     ATA      Hitachi HDS72101 JP4O PQ: 0 ANSI: 5
Sep  3 18:42:06 power kernel: sd 4:0:0:0: [sdd] 1953525168 512-byte logical blocks: (1.00 TB/931 GiB)
Sep  3 18:42:06 power kernel: sd 4:0:0:0: [sdd] Write Protect is off
Sep  3 18:42:06 power kernel: sd 4:0:0:0: [sdd] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
Sep  3 18:42:06 power kernel: sd 4:0:0:0: [sdd] Attached SCSI disk

Mon premier disque seagate est désigné par /dev/sdb, le deuxième Samsung par /dev/sdc et le dernier Hitachi par /dev/sdd.
Il faut maintenant lancer le module raid456, par la suite il suffira de rajouter la ligne raid456 dans le fichier /etc/modprobe.preload. On installe ensuite le gestionnaire raid mdadm en tapant

urpmi mdadm

Il faut maintenant partionner les 3 disques grâces à fdisk, pour le premier disque il suffit de taper

fdisk /dev/sdb

taper n pour créer une nouvelle partition, choisissez ensuite p pour primary partition, puis 1, pour les tailles laissez les valeurs par défaut (elles permettent d'occuper l'ensemble du disque) et taper [enter] à chaque fois. On tape ensuite w pour sauvegarder et quitter. On fait de même pour les autres disques.

On crée maintenant le volume raid5 à partir des 3 disques en tapant

mdadm --create /dev/md0 --level=5 --raid-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1

A présent c'est très simple en lançant drakdisk, pour chacun des disques, j'obtiens l'image suivante



si je clique sur raid, il suffit ensuite de sélectionner la partition, d'y créer un file system et de définir le point de montage.



Et voilà le travail pour 3 disques de 931Go, j'ai 2x931Go d'utiles, soit 1,8To. Pour avoir le détail du volume raid à partir de la ligne de commande, il suffit de taper

mdadm --detail /dev/md0

et voilà le résultat
                     
/dev/md0:                                                          
        Version : 1.2                                              
  Creation Time : Thu Sep  2 18:01:39 2010                         
     Raid Level : raid5                                            
     Array Size : 1953517568 (1863.02 GiB 2000.40 GB)              
  Used Dev Size : 976758784 (931.51 GiB 1000.20 GB)                
   Raid Devices : 3                                                
  Total Devices : 3                                                
    Persistence : Superblock is persistent                         

    Update Time : Sun Sep  5 13:15:53 2010
          State : clean                  
 Active Devices : 3                      
Working Devices : 3                      
 Failed Devices : 0
  Spare Devices : 0

         Layout : left-symmetric
     Chunk Size : 512K

           Name : power.kervao.fr:0  (local to host power.kervao.fr)
           UUID : 7c42944e:bc92382d:c5f4b614:f7fa4fe7
         Events : 46450

    Number   Major   Minor   RaidDevice State
       0       8       17        0      active sync   /dev/sdb1
       1       8       33        1      active sync   /dev/sdc1
       3       8       49        2      active sync   /dev/sdd1

Rajout d'un disque

Si vous voulez rajouter un disque, placez le physiquement. Il faut ensuite démonter le volume raid

umount /dev/md0

et rajouter le disque partitionné désigné par /dev/sde1

mdadm --add /dev/md0 /dev/sde1

le volume est alors automatiquement reconstruit sans perte de données, l'avancement de la reconstruction est donné en tapant

cat /proc/mdstat

voilà le résultat

Every 2,0s: cat /proc/mdstat                                                Sat Sep  4 14:20:23 2010

Personalities : [raid6] [raid5] [raid4]
md0 : active raid5 sdd1[3] sdb1[0] sdc1[1]
      1953517568 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/2] [UU_]
      [>....................]  recovery =  0.2% (2705664/976758784) finish=549.3min speed=29550K/sec

unused devices: <none>

ca peut durer plusieurs heures. Voilà ce que ça donne quand la reconstruction est terminée.

Every 2,0s: cat /proc/mdstat                                                Sun Sep  5 13:15:59 2010

Personalities : [raid6] [raid5] [raid4]
md0 : active raid5 sdd1[3] sdb1[0] sdc1[1]
      1953517568 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/3] [UUU]

unused devices: <none>

au besoin si rien ne se passe, pour reconstruire le volume raid il suffit de taper

mdadm --grow /dev/md0  --raid-devices=5

Administration des disques

Pour l'administration des disques, sous mandriva vous pouvez toujours utiliser drakdisk qui est relativement simple. Je vous recommande plutôt palimpsest. Voici quelques copies d'écran, une vue d'ensemble des disques, le volume raid est sélectionné, on peut voir également disque virtuel SAS qui est constitué de deux disques SAS en RAID 1 (mirroring) hard



Quand on sélectionne un disque physique, on a accès à un certain nombre d'information de fonctionnement.


A ce jour je n'ai pas trouvé de doc digne de ce nom, voici donc la page officielle.
 
[Retour page d'accueil FUNIX]