User Tools

Site Tools


informatique:linux:raid0_sous_linux

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
informatique:linux:raid0_sous_linux [2011/02/16 21:33] – [Augmenter un lv] pteuinformatique:linux:raid0_sous_linux [2012/11/03 00:01] – modification externe 127.0.0.1
Line 120: Line 120:
  
 =====Divers===== =====Divers=====
- 
-====Monitorer son RAID==== 
- 
-<code> 
-cat /proc/mdstat  
- Personalities : [raid0]  
- md1 : active raid0 sda3[0] sdb3[1] 
-       1945696256 blocks 64k chunks 
-        
- md0 : active raid0 sda2[0] sdb2[1] 
-       5863552 blocks 64k chunks 
-        
- unused devices: <none> 
-</code> 
- 
-On peut avoir plus de détails avec : 
-<code> 
-mdadm --detail /dev/md1 
-    /dev/md1: 
-         Version : 00.90 
-   Creation Time : Sat Feb  7 12:49:57 2009 
-      Raid Level : raid0 
-      Array Size : 1945696256 (1855.56 GiB 1992.39 GB) 
-    Raid Devices : 2 
-   Total Devices : 2 
- Preferred Minor : 1 
-     Persistence : Superblock is persistent 
-  
-     Update Time : Tue Feb 10 20:31:42 2009 
-           State : clean 
-  Active Devices : 2 
- Working Devices : 2 
-  Failed Devices : 0 
-   Spare Devices : 0 
-  
-      Chunk Size : 64K 
-   
-            UUID : 9695e8d2:87d83bd5:e070d1d4:842cdf7e 
-          Events : 0.5 
-   
-     Number   Major   Minor   RaidDevice State 
-        0              3        0      active sync   /dev/sda3 
-        1             19        1      active sync   /dev/sdb3 
-</code> 
  
 ====Créer un volume RAID1 avec un seul disque==== ====Créer un volume RAID1 avec un seul disque====
Line 176: Line 132:
  
 =====Création d'un raid5 + LVM===== =====Création d'un raid5 + LVM=====
 +
 +====Volume RAID 5====
  
 Un raid0 avec de la redondance pour la sécurité des données ? C'est un raid5 et c'est ce que je vais tenté ("tenter" car c'est un raid software avec un processeur [[http://fr.wikipedia.org/wiki/Intel_Atom#Pineview|atom n550]], et c'est un processeur un peu léger pour du calcul de parité). Un raid0 avec de la redondance pour la sécurité des données ? C'est un raid5 et c'est ce que je vais tenté ("tenter" car c'est un raid software avec un processeur [[http://fr.wikipedia.org/wiki/Intel_Atom#Pineview|atom n550]], et c'est un processeur un peu léger pour du calcul de parité).
 +
 +Première chose : repérer les noms des disques :
 +<code bash>
 +sudo fdisk -l | grep Disk
 +Disk /dev/sda: 64.0 GB, 64023257088 bytes
 +Disk /dev/sdb: 2000.4 GB, 2000398934016 bytes
 +Disk /dev/sdc: 2000.4 GB, 2000398934016 bytes
 +Disk /dev/sdd: 2000.4 GB, 2000398934016 bytes
 +</code>
 +Dans mon cas je vais utiliser /dev/sdb, /dev/sdc et /dev/sdd pour mon RAID 5.
 +
 +Puis, créer des partitions de type "Raid auto detect" (code : FD) et de même taille sur tous les disques. Je vous conseille d'utiliser cfdisk plutôt que fdisk car dans mon cas, j'obtenais ce message d'erreur en créant mon volume RAID (pourtant les modifications étaient bien écritent (w) sur les disques) :
 +<code bash>
 +mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3 --assume-clean /dev/sd[bdd]1
 +mdadm: layout defaults to left-symmetric
 +mdadm: layout defaults to left-symmetric
 +mdadm: chunk size defaults to 512K
 +mdadm: cannot open /dev/sdc1: No such file or directory
 +</code>
 +
 +Après les avoir créés avec cfdisk, j'obtient encore une erreur !
 +<code bash>
 +mdadm --create --verbose /dev/md0 --level 5 --assume-clean --raid-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1
 +mdadm: layout defaults to left-symmetric
 +mdadm: layout defaults to left-symmetric
 +mdadm: chunk size defaults to 512K
 +mdadm: super1.x cannot open /dev/sdc1: Device or resource busy
 +mdadm: /dev/sdc1 is not suitable for this array.
 +mdadm: super1.x cannot open /dev/sdd1: Device or resource busy
 +mdadm: /dev/sdd1 is not suitable for this array.
 +mdadm: create aborted
 +</code>
 +
 +D'après http://www.righteoushack.net/?p=197 il pourrait s'agir d'un reliquat de bug lié aux drivers d'un fake-raid (configuré dans le BIOS) ; je teste :
 +<code bash>
 +sudo aptitude remove dmraid
 +</code>
 +
 +... mais toujours le même problème :(
 +
 +N'ayant rien à perdre je décide de passer la prise en charge des disques SATA dans le BIOS en "AHCI" plutôt que "IDE enhanced" comme auparavent. Normalement les disques SATA doivent toujours être configurés en AHCI car cela permet la prise en charge du NCQ et autres, mais il me semble que lorsqu'on créer un RAID software cela est générateur de problème. Mais au point où j'en suis..
 +
 +Au reboot, les disques ont été renumérotés :
 +<code bash>
 +sudo fdisk -l | grep Disk
 +Disk /dev/sda: 2000.4 GB, 2000398934016 bytes
 +Disk /dev/sdb: 2000.4 GB, 2000398934016 bytes
 +Disk /dev/sdc: 64.0 GB, 64023257088 bytes
 +Disk /dev/sdd: 2000.4 GB, 2000398934016 bytes
 +</code>
  
 <code bash> <code bash>
-#création du raid 5 avec 3 partitions : /dev/sda1 /dev/sdc1 /dev/sdd1+Création du raid 5 avec 3 partitions : /dev/sda1 /dev/sdb1 /dev/sdd1
 # --assume-clean permet d'éviter le calcul de parité à la création # --assume-clean permet d'éviter le calcul de parité à la création
-mdadm --create --verbose /dev/md0 --level=raid5 --raid-devices=3 --assume-clean /dev/sd[abd]1+mdadm --create --verbose /dev/md0 --level 5 --assume-clean --raid-devices=3 /dev/sd[abd]1 
 +mdadm: layout defaults to left-symmetric 
 +mdadm: layout defaults to left-symmetric 
 +mdadm: chunk size defaults to 512K 
 +mdadm: /dev/sdb1 appears to be part of a raid array: 
 +    level=raid5 devices=3 ctime=Thu Sep  6 23:40:51 2012 
 +mdadm: size set to 1953381888K 
 +Continue creating array? y 
 +mdadm: Defaulting to version 1.2 metadata 
 +mdadm: array /dev/md0 started.
 </code> </code>
 +
 +Rofl ! It works !
  
 Il faut attendre un peu le temps de la construction du raid, puis on vérifie : Il faut attendre un peu le temps de la construction du raid, puis on vérifie :
 <code bash> <code bash>
-mdadm --detail /dev/md0 + sudo mdadm --detail /dev/md0 
- /dev/md0:+/dev/md0:
         Version : 1.2         Version : 1.2
-  Creation Time : Tue Feb 15 18:58:18 2011+  Creation Time : Wed Sep 12 21:35:52 2012
      Raid Level : raid5      Raid Level : raid5
-     Array Size : 3907020800 (3726.03 GiB 4000.79 GB) +     Array Size : 3906763776 (3725.78 GiB 4000.53 GB) 
-  Used Dev Size : 1953510400 (1863.01 GiB 2000.39 GB)+  Used Dev Size : 1953381888 (1862.89 GiB 2000.26 GB)
    Raid Devices : 3    Raid Devices : 3
   Total Devices : 3   Total Devices : 3
     Persistence : Superblock is persistent     Persistence : Superblock is persistent
  
-    Update Time : Wed Feb 16 12:32:05 2011+    Update Time : Thu Sep 13 18:00:13 2012
           State : clean           State : clean
  Active Devices : 3  Active Devices : 3
Line 209: Line 228:
  
            Name : ymir2: (local to host ymir2)            Name : ymir2: (local to host ymir2)
-           UUID : 9c8c8486:625dbdfd:98aa755c:b4266366+           UUID : 5766333b:7721932e:a40ebe2e:0c6fe1d0
          Events : 2          Events : 2
  
Line 220: Line 239:
 # ou : # ou :
 cat /proc/mdstat cat /proc/mdstat
- md0 : active raid5 sdd1[2] sdb1[1] sda1[0] +Personalities : [raid6] [raid5] [raid4] [linear] [multipath] [raid0] [raid1] [raid10] 
-      3907020800 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/3] [UUU]+md0 : active raid5 sdd1[2] sdb1[1] sda1[0] 
 +      3906763776 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/3] [UUU]
  
- unused devices: <none>+unused devices: <none>
 </code> </code>
- 
  
 ---- ----
- 
  
 Dans le première commande on pourrait tilter sur la ligne : Dans le première commande on pourrait tilter sur la ligne :
Line 280: Line 298:
  
  
-Une fois le raid construit, si tout va bien, il faudra le monter automatiquement au démarrage la prochaine fois :+Une fois le raid construit, si tout va bien, il faudra le monter automatiquement au démarrage la prochaine fois ; commenter la ligne "ARRAY xxx" dans le fichier ''/etc/mdadm/mdadm.conf'' et ajouter le résultat de la commande :
 <code bash> <code bash>
-echo "DEVICE partitions" >> /etc/mdadm/mdadm.conf 
 mdadm --detail --scan >> /etc/mdadm/mdadm.conf mdadm --detail --scan >> /etc/mdadm/mdadm.conf
 +
 +# PI le résultat de la commande :
 +ARRAY /dev/md0 metadata=1.2 name=ymir2:0 UUID=5766333b:7721932e:a40ebe2e:0c6fe1d0
 </code> </code>
 +
 +====Raid en vrac au reboot====
 +
 +Sous Ubuntu 10.10 cette fois j'ai rencontré un problème lors du reboot car il me montait /dev/md avec 2 disques et /dev/md_d0 avec le dernier. Hideux. Même en retouchant le mdadm.conf celà n'a rien changé. Je suis alors tombé sur [[http://ubuntuforums.org/showpost.php?p=7424082&postcount=11|ce post sur ubuntuforums]] qui décrit cette procédure qui a résolu mon problème : 
 +<code bash>
 +# arrêt du raid triso
 +mdadm --stop /dev/md_d0
 + mdadm: metadata format 00.90 unknown, ignored.
 + mdadm: stopped /dev/md_d0
 +
 +mdadm --auto-detect
 +
 +/usr/share/mdadm/mkconf force-generate /etc/mdadm/mdadm.conf
 +
 +update-initramfs -u
 + update-initramfs: Generating /boot/initrd.img-2.6.35-25-generic
 +
 +# puis on reboot
 +init 6
 +</code>
 +
 +Au redémarrage le volume RAID est monté correctement \o/.
 +
 +===D'autres pistes :===
 +
 +<code bash>
 +cat /proc/mdstat
 +Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
 +md126 : inactive sdc[1]
 +      1953514496 blocks
 +
 +md127 : active (auto-read-only) raid5 sdd[2] sdb[0]
 +      3907028992 blocks level 5, 64k chunk, algorithm 2 [3/2] [U_U]
 +
 +unused devices: <none>
 +</code>
 +
 +<code bash>
 +mdadm --examine /dev/sdb1
 +/dev/sdb1:
 +          Magic : a92b4efc
 +        Version : 0.90.00
 +           UUID : cc5892bf:a52da5c0:2ddc0efe:cce42a60 (local to host ymir2)
 +  Creation Time : Fri Aug 19 18:22:07 2011
 +     Raid Level : raid5
 +  Used Dev Size : 1953511936 (1863.01 GiB 2000.40 GB)
 +     Array Size : 3907023872 (3726.03 GiB 4000.79 GB)
 +   Raid Devices : 3
 +  Total Devices : 3
 +Preferred Minor : 0
 +
 +    Update Time : Thu Nov 17 19:32:24 2011
 +          State : clean
 + Active Devices : 3
 +Working Devices : 3
 + Failed Devices : 0
 +  Spare Devices : 0
 +       Checksum : 26f6dd32 - correct
 +         Events : 39
 +
 +         Layout : left-symmetric
 +     Chunk Size : 64K
 +
 +      Number   Major   Minor   RaidDevice State
 +this                 17        0      active sync   /dev/sdb1
 +
 +                   17        0      active sync   /dev/sdb1
 +                   33        1      active sync   /dev/sdc1
 +                   49        2      active sync   /dev/sdd1
 +
 +mdadm --examine /dev/sdc1
 +/dev/sdc1:
 +          Magic : a92b4efc
 +        Version : 0.90.00
 +           UUID : cc5892bf:a52da5c0:2ddc0efe:cce42a60 (local to host ymir2)
 +  Creation Time : Fri Aug 19 18:22:07 2011
 +     Raid Level : raid5
 +  Used Dev Size : 1953511936 (1863.01 GiB 2000.40 GB)
 +     Array Size : 3907023872 (3726.03 GiB 4000.79 GB)
 +   Raid Devices : 3
 +  Total Devices : 3
 +Preferred Minor : 0
 +
 +    Update Time : Thu Nov 17 19:32:24 2011
 +          State : clean
 + Active Devices : 3
 +Working Devices : 3
 + Failed Devices : 0
 +  Spare Devices : 0
 +       Checksum : 26f6dd44 - correct
 +         Events : 39
 +
 +         Layout : left-symmetric
 +     Chunk Size : 64K
 +
 +      Number   Major   Minor   RaidDevice State
 +this                 33        1      active sync   /dev/sdc1
 +
 +                   17        0      active sync   /dev/sdb1
 +                   33        1      active sync   /dev/sdc1
 +                   49        2      active sync   /dev/sdd1
 +
 +mdadm --examine /dev/sdd1
 +/dev/sdd1:
 +          Magic : a92b4efc
 +        Version : 0.90.00
 +           UUID : cc5892bf:a52da5c0:2ddc0efe:cce42a60 (local to host ymir2)
 +  Creation Time : Fri Aug 19 18:22:07 2011
 +     Raid Level : raid5
 +  Used Dev Size : 1953511936 (1863.01 GiB 2000.40 GB)
 +     Array Size : 3907023872 (3726.03 GiB 4000.79 GB)
 +   Raid Devices : 3
 +  Total Devices : 3
 +Preferred Minor : 0
 +
 +    Update Time : Thu Nov 17 19:32:24 2011
 +          State : clean
 + Active Devices : 3
 +Working Devices : 3
 + Failed Devices : 0
 +  Spare Devices : 0
 +       Checksum : 26f6dd56 - correct
 +         Events : 39
 +
 +         Layout : left-symmetric
 +     Chunk Size : 64K
 +
 +      Number   Major   Minor   RaidDevice State
 +this                 49        2      active sync   /dev/sdd1
 +
 +                   17        0      active sync   /dev/sdb1
 +                   33        1      active sync   /dev/sdc1
 +                   49        2      active sync   /dev/sdd1
 +</code>
 +
 +<code bash>
 +egrep -v "^$|^#" /etc/mdadm/mdadm.conf
 +DEVICE partitions
 +CREATE owner=root group=disk mode=0660 auto=yes
 +HOMEHOST <system>
 +MAILADDR root
 +ARRAY /dev/md0 level=raid5 num-devices=3 metadata=0.90 UUID=cc5892bf:a52da5c0:2ddc0efe:cce42a60
 +   devices=/dev/sdb1,/dev/sdc1,/dev/sdd1
 +</code>
 +
 +<code bash>
 +mdadm --detail --scan
 +ARRAY /dev/md/0_0 metadata=0.90 UUID=c50da923:2bb088ef:2ddc0efe:cce42a60
 +ARRAY /dev/md/0_1 metadata=0.90 UUID=cb278753:2d171315:2ddc0efe:cce42a60
 +</code>
 +
 +<code bash>
 +mdadm --stop /dev/md126
 + mdadm: stopped /dev/md126
 +mdadm --stop /dev/md127
 + mdadm: stopped /dev/md127
 +mdadm --assemble /dev/md0
 + mdadm: /dev/md0 has been started with 3 drives.
 +</code>
 +
 +<code bash>
 +mdadm --detail --scan
 +ARRAY /dev/md0 metadata=0.90 UUID=cc5892bf:a52da5c0:2ddc0efe:cce42a60
 +</code>
 +
 +<code bash>
 +cat /proc/mdstat
 +Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
 +md0 : active raid5 sdb1[0] sdd1[2] sdc1[1]
 +      3907023872 blocks level 5, 64k chunk, algorithm 2 [3/3] [UUU]
 +
 +unused devices: <none>
 +</code>
 +
 +
 +====LVM====
  
 Création du bousin LVM : déclaration dans l'ordre : Création du bousin LVM : déclaration dans l'ordre :
Line 310: Line 506:
 </code> </code>
  
 +Vérifications : afficher les résumés des volumes physiques, des groupes de volumes et des volumes logiques :
 +<code bash>
 +pvs
 +  PV         VG     Fmt  Attr PSize  PFree
 +  /dev/md0   md0_vg lvm2 a-    3,64t    0
 +  /dev/sda5  ymir2  lvm2 a-   59,38g    0
 +
 +vgs
 +  VG     #PV #LV #SN Attr   VSize  VFree
 +  md0_vg       0 wz--n-  3,64t    0
 +  ymir2    1     0 wz--n- 59,38g    0
 +
 +lvs
 +  LV      VG     Attr   LSize  Origin Snap%  Move Log Copy%  Convert
 +  data_lv md0_vg -wi-ao  3,64t
 +  root    ymir2  -wi-ao 56,91g
 +  swap_1  ymir2  -wi-ao  2,47g
 +</code>
  
 =====Management du raid===== =====Management du raid=====
 +
 +====Monitorer son RAID====
 +
 +<note warning>
 +Attention les commandes qui vont suivre ne proviennent pas toutes du même RAID !
 +</note>
 +
 +<code>
 +cat /proc/mdstat 
 + Personalities : [raid0] 
 + md1 : active raid0 sda3[0] sdb3[1]
 +       1945696256 blocks 64k chunks
 +       
 + md0 : active raid0 sda2[0] sdb2[1]
 +       5863552 blocks 64k chunks
 +       
 + unused devices: <none>
 +</code>
 +
 +On peut avoir plus de détails avec :
 +<code>
 +mdadm --detail /dev/md1
 +    /dev/md1:
 +         Version : 00.90
 +   Creation Time : Sat Feb  7 12:49:57 2009
 +      Raid Level : raid0
 +      Array Size : 1945696256 (1855.56 GiB 1992.39 GB)
 +    Raid Devices : 2
 +   Total Devices : 2
 + Preferred Minor : 1
 +     Persistence : Superblock is persistent
 + 
 +     Update Time : Tue Feb 10 20:31:42 2009
 +           State : clean
 +  Active Devices : 2
 + Working Devices : 2
 +  Failed Devices : 0
 +   Spare Devices : 0
 + 
 +      Chunk Size : 64K
 +  
 +            UUID : 9695e8d2:87d83bd5:e070d1d4:842cdf7e
 +          Events : 0.5
 +  
 +     Number   Major   Minor   RaidDevice State
 +        0              3        0      active sync   /dev/sda3
 +        1             19        1      active sync   /dev/sdb3
 +</code>
  
 Arrêter/Supprimer le raid : Arrêter/Supprimer le raid :
Line 425: Line 687:
  Sys. fich.    Type  Taille  Uti. Disp. Uti% Monté sur  Sys. fich.    Type  Taille  Uti. Disp. Uti% Monté sur
  /dev/mapper/md0_vg-data_lv  /dev/mapper/md0_vg-data_lv
-               ext4    3,0T  200M  3,0T   1% /mnt/data+             ext4    3,6T  196M  3,6T   1% /mnt/data
 </code> </code>
 +
 =====Tests et banchmarks===== =====Tests et banchmarks=====
  
Line 541: Line 804:
  
 Étonnant : on a un meilleur débit en écriture qu'en lecture sur ce raid0... Étonnant : on a un meilleur débit en écriture qu'en lecture sur ce raid0...
 +
 +
 +=====Test avec bonnie++=====
 +
 +bonnie++ est un logiciel tierce qui mesure les performances d'un disque.
 +
 +
 +=====Suppression totale d'un volume RAID=====
 +
 +Parce que mdadm est coriace, et que la procédure de suppression d'un RAID pour récupérer les disques n'est pas si anodine que cela, voici une petite check-list :
 +
 +Supprimer les metadata avec dmraid
 +<code bash>
 +sudo dmraid -r -E /dev/sdb
 +no raid disks and with names: "/dev/sdb"
 +
 +sudo dmraid -r -E /dev/sdc
 +Do you really want to erase "ddf1" ondisk metadata on /dev/sdc ? [y/n] :y
 +ERROR: ddf1: seeking device "/dev/sdc" to 1024204253954048
 +ERROR: writing metadata to /dev/sdc, offset 2000398933504 sectors, size 0 bytes returned 0
 +ERROR: erasing ondisk metadata on /dev/sdc
 +
 +sudo dmraid -r -E /dev/sdd
 +Do you really want to erase "ddf1" ondisk metadata on /dev/sdd ? [y/n] :y
 +ERROR: ddf1: seeking device "/dev/sdd" to 1024204253954048
 +ERROR: writing metadata to /dev/sdd, offset 2000398933504 sectors, size 0 bytes returned 0
 +ERROR: erasing ondisk metadata on /dev/sdd
 +</code>
 +
 +Si ça ne marche pas on observe encore :
 +<code bash>
 +cat /proc/mdstat
 +Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
 +md0 : inactive sdd[0](S) sdb[2](S)
 +      3907028992 blocks
 +unused devices: <none>
 +</code>
 +
 +<code bash>
 +umount /dev/md0
 +mdadm --manage /dev/md0 --stop
 +mdadm --manage /dev/md0 --remove
 +rm /etc/mdadm/mdadm.conf
 +</code>
 +
 +Suppression de la partition "raid" de chaque disque
 +<code bash>
 +sudo fdisk /dev/sdb
 +d
 +p
 +w
 +</code>
 +
 +On efface les superblocks :
 +<code bash>
 +sudo mdadm --zero-superblock /dev/sdb
 +sudo mdadm --zero-superblock /dev/sdb1
 +mdadm: Couldn't open /dev/sdb1 for write - not zeroing
 +</code>
 +
 +Cela évite de se retrouver bloquer au boot par le prompt busybox !
 +
 +Dans mon cas au reboot un nouveau volume raid est apparu tout seul : "md127". Il y a une procédure avec Ubuntu pour l'éradiquer (source : http://ubuntuforums.org/showthread.php?t=1764861%29: ) :
 +<code bash>
 +sudo update-initramfs -u
 +sudo reboot
 +</code>
  
  
informatique/linux/raid0_sous_linux.txt · Last modified: 2024/06/29 14:10 by pteu