OVH Community, votre nouvel espace communautaire.

RAID 10 ou RAID 1E ?


cassiopee
17/02/2015, 22h14
Wow, merci Pascal pour cette réponse très détaillée

En ce qui me concerne, ce sera pour un serveur de messagerie, donc plutôt beaucoup de petits fichiers,
(certaines BAL vont atteindre les 50 Go ...) même si avec les pièces jointes, je m'attends à avoir aussi des fichiers "moyens",
disons jusqu'à 10-30 Mo grand maxi.

La valeur actuelle "near 2" semble donc être le meilleur compromis pour mon cas.

Le mode f2 est étonnant par ses performances en effet.

- - - Mise à jour - - -

Citation Envoyé par FelixK
Une documentation bien précise de comment fonctionne le Raid10 du kernel Linux/mdadm se trouve chez SUSE:

https://www.suse.com/documentation/s...admr10cpx.html

le mode "near=2" (le "2" dit qu'il y a 2 copies de chaque bloc) constitue un bon compromis entre performances en lecture et écriture, et est le mode standard de mdadm pour le raid10.

Félix
Merci Félix pour cette documentation très claire.

Donc pas de souci de fiabilité particulier à prévoir avec 5 disques plutôt qu'avec 4 disques ?

fritz2cat
17/02/2015, 21h17
Merci à tous pour ces lectures très intéressantes.
Je n'avais jamais entendu parler du Raid 1E.

FelixK
17/02/2015, 15h50
Une documentation bien précise de comment fonctionne le Raid10 du kernel Linux/mdadm se trouve chez SUSE:

https://www.suse.com/documentation/s...admr10cpx.html

le mode "near=2" (le "2" dit qu'il y a 2 copies de chaque bloc) constitue un bon compromis entre performances en lecture et écriture, et est le mode standard de mdadm pour le raid10.

Félix

Pascal [ZR]
17/02/2015, 11h19
Oui en RAID 10 "non standard" le nombre de disque n'a pas besoin d'être pair car c'est la taille du stripe qui va déterminer la distribution sur les disques (comme expliqué dans les schémas du lien Wikipedia de Kioob).
Dans la config d'OVH, c'est le
Code:
Layout : near=2
qui te renseigne sur le layout utilisé (içi du "n2", c'est à dire du "near" avec 2 copies des données).

J'avais fait des tests assez poussés sur les perfs des différents layout du RAID10 et comme d'hab cela dépend de ce que tu va faire avec ton stockage.
En gros:

- Mode "far" RAID10 f2: excellent pour les lectures séquentielles, moyen pour les randoms I/O
Le mode "far" donne de trés bonnes perfs en lecture sequencielle (presque 3,5x la vitesse d'un seul disque) et du RAID1 en écriture (1,5x la vitesse d'un seul disque). Les points négatifs sont l'écriture en mode dégradé où on tombe à 0,5x la vitesse d'un seul disque et les randoms I/O qui sont moins bons qu'en near à cause de la distance physique entre les données sur le disque.

- Mode "near" RAID10 n2: moyen/faible en lecture séquentielle, bon en random I/O
La lecture séquentielle est moyenne mais la proximité physique des données donne par contre de bonne perfs en random I/O (moins de déplacement des têtes de lecture).

- Mode "offset" RAID10 o2: Moyen en séquentiel, moyen en random I/O
Le mode "offset" est plus consistant avec des perfs moyennes, mais la proximité physique des données sur les disques donne de meilleurs résultats lorsqu'il y a plusieurs threads/workers simultanés et les randoms I/O sont corrects. C'est le plus équilibré mais il ne fait pas d'étincelle, et il a un autre défaut: dans tous les cas, il ne faut pas perdre plus d'un seul disque à la fois sinon perte de données.


A l'époque de mes tests je cherchais les meilleurs perfs séquentielles pour lire des gros fichiers et le f2 est vraiment impressionnant!

Quelques benchs en mode f2 que j'ai conservés:

Controleur LSI 2308 SAS, mode JBOD.
4 disques Seageate SV35 de 1To, environ 180Mo/s en lecture/ecriture brute par disque.
Code:
root@strong ~ # mdadm -v --create /dev/md0 --name=SV35R10F2 --metadata=1.0 --bitmap=internal --chunk=256 --level=raid10 --layout=f2 --raid-devices=4 /dev/sd[abcd]1

root@strong ~ # echo 3 > /proc/sys/vm/drop_caches
root@strong ~ # dd if=/dev/zero of=/dev/md/SV35R10F2 bs=256K count=15000 conv=fdatasync
15000+0 enregistrements lus
15000+0 enregistrements écrits
3932160000 octets (3,9 GB) copiés, 14,8906 s, 264 MB/s

root@strong ~ # echo 3 > /proc/sys/vm/drop_caches
root@strong ~ # dd if=/dev/md/SV35R10F2 of=/dev/null bs=256K count=15000
15000+0 enregistrements lus
15000+0 enregistrements écrits
3932160000 octets (3,9 GB) copiés, 5,55804 s, 707 MB/s


root@strong ~ # mkfs.ext4 -b 4096 -E stride=64 -E stripe-width=256 -O dir_index,large_file -L DATAS-SV /dev/md/SV35R10F2
root@strong ~ # mount /dev/md/SV35R10F2 /mnt/SV35R10F2/
root@strong ~ # mkdir /mnt/SV35R10F2/test

root@strong ~ # echo 3 > /proc/sys/vm/drop_caches
root@strong ~ # dd if=/dev/zero of=/mnt/SV35R10F2/test/tmp bs=256K count=15000 conv=fdatasync
15000+0 enregistrements lus
15000+0 enregistrements écrits
3932160000 octets (3,9 GB) copiés, 23,2838 s, 169 MB/s

root@strong ~ # echo 3 > /proc/sys/vm/drop_caches
root@strong ~ # dd if=/mnt/SV35R10F2/test/tmp of=/dev/null bs=256K count=15000
15000+0 enregistrements lus
15000+0 enregistrements écrits
3932160000 octets (3,9 GB) copiés, 5,04759 s, 779 MB/s
Même si les bench sont anciens, ces pages m'avaient pas mal aidées à chosir à l'époque:
http://blog.jamponi.net/2007/12/some...e-numbers.html
Pour le choix des schedulers:
http://blog.jamponi.net/2008/07/raid...-26255_10.html
et aussi les liens dans cette page:
https://raid.wiki.kernel.org/index.php/Performance

cassiopee
17/02/2015, 09h01
Bien vu, merci

Cela semble donc être une spécificité du RAID software sous Linux où l'on peut faire du RAID 10 avec un nombre impair de disques.

Ce qui m'embête avec le RAID 1E (ou cette version du RAID 10 qui en semble quand même très proche), c'est qu'apparemment
certains disques de l'ensemble seraient davantage sollicités en lecture/écriture (donc éventuellement souci d'usure prématurée
de l'un des disques et/ou pb de performances).

Avec un RAID 10 et un nombre pairs de disques, ce n'est pas possible.

Ceci dit, je ne sais pas si c'est réel, perceptible ou si c'est seulement une vue de l'esprit mais que concrètement,
c'est totalement marginal et par conséquent négligeable ?

Kioob
17/02/2015, 08h01
Bonjour,

je ne connais pas spécialement, mais c'est plutôt bien expliqué sur Wikipedia. On peut comparer ça à du RAID1E, mais c'est surtout une implémentation particulière de MD.

cassiopee
17/02/2015, 01h02
J'installe actuellement un FS-30T disposant de 5 disques de 6 To.

J'aurais besoin de faire du RAID 10, donc j'imaginais :

- Grappe n°1 : (6 To + 6To) en RAID 1
- Grappe n°2 : (6 To + 6To) en RAID 1

Les deux grappes étant liées en RAID 0, pour former le RAID 10 complet.

Reste 1 disque isolé de 6 To, soit perdu, soit utilisé pour le système d'exploitation.


Hors, à ma grande surprise, le système d'installation d'OVH m'a proposé de
faire un RAID 10 sur les 5 disques physiques de la machine.

Je me retrouve ainsi avec une partition "/home" de 15 To
(au lieu de 12 To).

Tous les voyants sont au vert :

Code:
# mdadm --detail /dev/md4

/dev/md4:
        Version : 1.2
  Creation Time : Tue Feb 17 00:35:09 2015
     Raid Level : raid10
     Array Size : 14572857344 (13897.76 GiB 14922.61 GB)
  Used Dev Size : 5829143040 (5559.10 GiB 5969.04 GB)
   Raid Devices : 5
  Total Devices : 5
    Persistence : Superblock is persistent

    Update Time : Tue Feb 17 01:04:17 2015
          State : active
 Active Devices : 5
Working Devices : 5
 Failed Devices : 0
  Spare Devices : 0

         Layout : near=2
     Chunk Size : 512K

           Name : rescue.ovh.net:4
           UUID : 362a7a7f:92505767:33988e8a:d42b84a9
         Events : 3

    Number   Major   Minor   RaidDevice State
       0       8        4        0      active sync   /dev/sda4
       1       8       20        1      active sync   /dev/sdb4
       2       8       36        2      active sync   /dev/sdc4
       3       8       52        3      active sync   /dev/sdd4
       4       8       68        4      active sync   /dev/sde4
Sauf qu'à ma connaissance, le RAID 10 à besoin d'un nombre pair de disques
et donc, bien que mdadm me renvoie ci-dessus :

Code:
Raid Level : raid10
je me demande si ça n'est pas en réalité du RAID 1E ?

Connaissez-vous un moyen de distinguer les deux situations à coup sûr ?

Comme la capacité de 12 To me suffit largement, je ne cherche pas à "gratter"
les 3 To supplémentaires pour aller jusqu'à 15 To.

Le mieux serait-il de refaire l'installation (il n'y rien dans le serveur pour le moment)
et de ne sélectionner que 4 disques parmi les 5 dans le système d'installation d'OVH
afin d'être sûr d'avoir un "vrai" RAID 10 ?