Aller au contenu

Scoop?: Synology Raid0 Et Disques De Taille Diff


Oooops!

Messages recommandés

Bonsoir,

comme la très grande majorité d'entre vous je crois, j'en étais resté à l'idée que quand on fait un Raid0 avec 2 disques de taille différente, la capacité du volume obtenu est égale à 2 fois la taille du plus petit des 2 disques (on en a encore parlé tout récemment ).

C'est aussi ce que j'ai vu sur tous les sites que j'ai consultés sur internet; ou presque, car celui-ci indique bien:

Avantages
Utilisation de disques de tailles différentes ou non.
100% de l'espace disque est disponible.

mais juste en dessous

Inconvénient
Si les 2 disques n'ont pas la même capacité, la différence de taille sur le disque le plus grand est perdue.

Dans le message que j'ai mis en lien au début, j'avais signalé que le comparateur de Raid du site Syno avait un bug, puisque pour un disque de 640Go + un de 2To, en Raid0 il indique 2,6Go de capacité, et pas 1,2Go (2x640Mo), et qu'il faudrait le signaler à Synology.

J'ai donc utilisé la rubrique "Contactez-nous", "Commentaire sur le site web", pour signaler la chose, en indiquant aussi que Synology lui même, dans ce tutorial, appliquait bien la règle habituelle (2 x capacité du plus petit disque).

J'ai très vite reçu une réponse de Synology indiquant que effectivement il y avait une erreur et qu'elle allait être corrigée très vite; mais encore plus vite (moins de 5h) le rectificatif suivant (j'espère que l'auteur ne m'en voudra pas de copier/coller une partie de son message sans lui en avoir demandé l'autorisation avant :unsure:):

.../...
Après avoir eu une petite discussion avec nos ingénieurs, il s'avère que le calculateur est exact. Nous avons effectué quelques changements dans
la façon dont notre RAID0 fonctionne et l'espace total disponible sera bien égal à la somme des capacités des disques. Cela veut dire que le
problème est situé dans le tutorial. Nous allons faire quelques modifications pour rendre tout cela plus clair. Merci pour votre aide!

.../...

Un peu dubitatif, j'ai répondu en fin d'après-midi en insistant (confusion éventuelle entre Raid0 et JBOD?) et surtout en demandant comment cela était possible avec le principe de stripping du Raid0 ; mais là c'est le weekend et je vais probablement devoir attendre la réponse un peu plus longtemps.

En attendant, comme j'en avais la possibilité, j'ai décidé de tester avec 1 disque de 80Go + 1 disque de 1,5To montés dans le DX213 connecté à mon DS209+II, et effectivement ça fonctionne comme indiqué: chez Syno, le RAID0 additionne la capacité des disques, même s'ils sont de taille différente, cf la copie d'écran ci-dessous:

Raid0Syno.sized.jpg

Lien vers le commentaire
Partager sur d’autres sites

Oui c'est etrange, ca sent le SHR0 !! :D

Il y a de fortes chances que ce soit un LVM et que la mention RAID0 ne soit devenue qu'une etiquette.

Pour commencer, si tu pouvais lancer ces commandes ^_^

df -h

mount | grep /volume2

fdisk -l /dev/hd? 2> /dev/null

[EDIT] Correction de la commande fidsk en fdisk

Modifié par Fravadona
Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

j'étais quasiment sûr que ça te ferait réagir :D!

Syno209p> df -h
Filesystem                Size      Used Available Use% Mounted on
/dev/md0                  2.3G    450.9M      1.8G  20% /
/tmp                    251.7M    340.0K    251.4M   0% /tmp
/dev/md2                  3.6T      3.2T    409.1G  89% /volume1
/dev/md3                  1.4T    197.2M      1.4T   0% /volume2

Je ne suis pas sûr de comprendre comment relier ces résultats aux disques qui sont dans le Syno:

  • 2 disques de 4To en Raid1 classique => d'après le Gestionnaire de stockage, mon "Volume 1" de de 3,56Tio, dont 409,12Gio disponibles => c'est "md2"
  • 1 disque de 80Go + 1 de 1,5To en Raid0-Syno => d'après le Gestionnaire de stockage, mon "Volume 2" de de 1,41 vide (donc pourquoi 197,2Mo utilisé, c'est pour sa gestion de fichiers, comme quand on formate un disque?) => c'est "md3"
  • => "md0" est la partition système et "temp" est la partition de swap, et toutes les 2 sont dupliquées sur les 4 disques?
  • C'est DSM qui "transpose" le nom "Volume 1" en "nom Linux" "volume1"? (ou plutôt, l'inverse? et idem bien-sûr pour "Volume 2")
Syno209p> mount | grep /volume2
/dev/md3 on /volume2 type ext4 (usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0,synoacl)

Syno209p> fdisk -l /dev/hd? 2> /dev/null

Disk /dev/hda: 2199.0 GB, 2199023255040 bytes
255 heads, 63 sectors/track, 267349 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks  Id System
/dev/hda1               1      267350  2147483647+ ee EFI GPT

Disk /dev/hdb: 2199.0 GB, 2199023255040 bytes
255 heads, 63 sectors/track, 267349 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks  Id System
/dev/hdb1               1      267350  2147483647+ ee EFI GPT

Là, j'ai l'impression que la commande est trompée par le fait que les 2 disques internes du DS sont des 4To, donc supérieurs aux classiques 2,2To.

Par contre, pourquoi les 2 disques du DX n'apparaissent-ils pas ici?

Remaque à propos de "Il y a de fortes chances que ce soit un LVM et que la mention RAID0 ne soit devenue qu'une etiquette.": j'ai pensé la même chose (en moins précis car je ne connais pas assez bien Linux et en particuler les LVM <_<), mais si c'est ça, je ne sais pas d'où vient cette spécificité (version de DSM ou tailles différentes des disques), car en DSM2.3, puis en DSM3.2 (alors que là le SHR existait déjà chez Syno) j'avais fait un Raid0 dans mon DS211J, et au vu de la perte de performance quand je l'ai passé en Raid1 je crois que ce Raid0-là était un "vrai" Raid0; certes je l'ai fait sur de nouveaux disques et avec une autre version de DSM, mais je ne crois pas que ces 2 facteurs justifieraient la très nette baisse constatée des performances en écriture (env 60Mo/s en Raid0 -disques 1,5To/DSM3.2- et 45Mo/s en Raid1 -disques 4To/DSM4.2-).

[Edit]

Je pense que la suite des tests sera de faire un JBOD, puis de refaire un Raid0 mais avec 2 disques de 1,5To (et idem en JBOD)?

[Fin Edit]

Modifié par Oooops!
Lien vers le commentaire
Partager sur d’autres sites

Arf, sans le partionnement des disques du DX on pourra difficilement comprendre le fonctionnement du "nouveau" RAID0, mais a priori on peut dire qu'il est base sur du RAID "MD" plutot que du LVM (a moins que ce ne soit un LVM + RAID, inverse du SHR qui est RAID + LVM, on verra ca plus tard).

Pourquoi les disques du DX ne s'affichent pas avec la commande fdisk ? la reponse est simple : ils ne semblent pas apparaitre sous la forme /dev/hda, /dev/hdb, etc, au niveau du systeme -> ce doit etre aussi la "raison" du bridage qui fait qu'on ne peut pas installer DSM sur le DX sur les modele de NAS non supportes.

La commande qui va lever certaines incertitudes car elle va nous donner le niveau de RAID et les "devices" utilisees :

mdadm --detail /dev/md3
Modifié par Fravadona
Lien vers le commentaire
Partager sur d’autres sites

Syno209p> df -h
Filesystem                Size      Used Available Use% Mounted on
/dev/md0                  2.3G    450.9M      1.8G  20% /
/tmp                    251.7M    340.0K    251.4M   0% /tmp
/dev/md2                  3.6T      3.2T    409.1G  89% /volume1
/dev/md3                  1.4T    197.2M      1.4T   0% /volume2

Je ne suis pas sûr de comprendre comment relier ces résultats aux disques qui sont dans le Syno:

  • 2 disques de 4To en Raid1 classique => d'après le Gestionnaire de stockage, mon "Volume 1" de de 3,56Tio, dont 409,12Gio disponibles => c'est "md2"
  • 1 disque de 80Go + 1 de 1,5To en Raid0-Syno => d'après le Gestionnaire de stockage, mon "Volume 2" de de 1,41 vide (donc pourquoi 197,2Mo utilisé, c'est pour sa gestion de fichiers, comme quand on formate un disque?) => c'est "md3"
  • => "md0" est la partition système et "temp" est la partition de swap, et toutes les 2 sont dupliquées sur les 4 disques?
  • C'est DSM qui "transpose" le nom "Volume 1" en "nom Linux" "volume1"? (ou plutôt, l'inverse? et idem bien-sûr pour "Volume 2")

1) C'est bien cela. Je ne sais plus si c'est une limitation de la commande fdisk ou juste parce ce que sur ton systeme fdisk est 32bits, mais dans les 2 cas elle aura du mal a gerer les disques de plus de 2To (il y a encore quelques annees la plupart des cartes meres pouvaient pas non plus reconnaitre les disques de capacite superieure a 2To).

A la vu du resultat de ta commande fdisk (partition GPT) il faut utiliser la commande parted pour avoir toutes les infos :

parted --list

2) 197Mo utilises sur le volume2 ... Je ne sais pas trop, il y a toujours une partie utilises par le systeme de fichiers mais la ca me parait un peu trop gros. il faudrait voir ce qu'il y a sur ce volume avec la commande

ls -la /volume2

3) Normalement les partitions systeme et swap sont en RAID1 sur tous les disques internes, peut-etre meme sur les disques des DX quand l'expansion est supportee sur eux. Si tu veux voir sur quels disques ces partitions sont dupliquee tu peux taper :

* pour le systeme

mdadm --detail /dev/md0

* pour la swap

mdadm --detail /dev/md1

4) La relation "Volume 1" vers le point de montage "/volume1" est artificielle, il n'y a aucune raison que ce soit le cas mais a priori Synology a decide de faire comme ca, surement pour des raisons de comprehension.

[Edit] ajout de la commande parted dans la section 1)

Modifié par Fravadona
Lien vers le commentaire
Partager sur d’autres sites

[Edit]

Je pense que la suite des tests sera de faire un JBOD, puis de refaire un Raid0 mais avec 2 disques de 1,5To (et idem en JBOD)?

[Fin Edit]

Oui ca permettrait de lever quelques inconnues (JBOD fait avec LVM ou RAID ?). Pour le RAID-0, on n'a pas encore determine comment il etait fait avec 2 disques de capacites differentes, mais en fonction du resultat on pourra faire le test avec 2 disques identiques.

J'ajouterais aussi un test avec un disque en basique, car au final je ne sais pas non plus a quoi il correspond sous DSM (partition directement utilisee ? LVM ?? RAID ???)

Modifié par Fravadona
Lien vers le commentaire
Partager sur d’autres sites

Re-,

alors les commandes et leurs résultats, par ordre chronologique de tes messages ;):

1)

Syno209p> mdadm --detail /dev/md3
/dev/md3:
        Version : 1.2
  Creation Time : Fri Mar 28 18:46:55 2014
     Raid Level : raid0
     Array Size : 1533820800 (1462.77 GiB 1570.63 GB)
   Raid Devices : 2
  Total Devices : 2
    Persistence : Superblock is persistent

    Update Time : Fri Mar 28 18:46:55 2014
          State : clean
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

     Chunk Size : 64K

           Name : Syno209p:3  (local to host Syno209p)
           UUID : .../...
         Events : 0

    Number   Major   Minor   RaidDevice State
       0      68      227        0      active sync   /dev/sdca3
       1      68      243        1      active sync   /dev/sdcb3

pour le ".../...", je suis probablement parano mais je n'aime pas afficher des choses en rapport avec un "ID" (ici "UUID") dedans quand je ne sais pas de quoi il s'agit...?

Une 'tite remarque au passage, par rapport à et ma réponse un peu plus bas: ici on voit apparaître en clair des "ioctets" :lol:

2)

Syno209p> ls -la /volume2
drwxr-xr-x    3 root     root          4096 Mar 30 14:44 .
drwxr-xr-x   28 root     root          4096 Mar 30 14:44 ..
drwxrwxrwx    2 root     root          4096 Mar 30 14:44 @tmp
-rw-------    1 root     root          6144 Mar 28 18:52 aquota.group
-rw-------    1 root     root          6144 Mar 28 18:52 aquota.user

3)

-Système:

Syno209p> mdadm --detail /dev/md0
/dev/md0:
        Version : 0.90
  Creation Time : Sat Jan  1 01:00:04 2000
     Raid Level : raid1
     Array Size : 2490176 (2.37 GiB 2.55 GB)
  Used Dev Size : 2490176 (2.37 GiB 2.55 GB)
   Raid Devices : 2
  Total Devices : 2
Preferred Minor : 0
    Persistence : Superblock is persistent

    Update Time : Sun Mar 30 15:14:44 2014
          State : clean
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

           UUID : .../...
         Events : 0.315551

    Number   Major   Minor   RaidDevice State
       0       8        1        0      active sync   /dev/hda1
       1       8       17        1      active sync   /dev/sdb1

-swap:

Syno209p> mdadm --detail /dev/md1
/dev/md1:
        Version : 0.90
  Creation Time : Sat Jan  1 01:00:04 2000
     Raid Level : raid1
     Array Size : 2097088 (2048.28 MiB 2147.42 MB)
  Used Dev Size : 2097088 (2048.28 MiB 2147.42 MB)
   Raid Devices : 2
  Total Devices : 2
Preferred Minor : 1
    Persistence : Superblock is persistent

    Update Time : Fri Mar 28 18:51:51 2014
          State : clean
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

           UUID : .../...
         Events : 0.20

    Number   Major   Minor   RaidDevice State
       0       8        2        0      active sync   /dev/sda2
       1       8       18        1      active sync   /dev/sdb2
Modifié par Oooops!
Lien vers le commentaire
Partager sur d’autres sites

Je suis un peu perplexe, le RAID-0 md semble maintenant pouvoir utiliser des disques de taille differente o_O, mais de la a savoir comment il reparti les donnees et quelle perf est obtenue avec ca ...

Par contre on a trouve les devices correspondant aux disques dans le DX : /dev/sdca et /dev/sdcb

On peut essayer de lister leur table de partition avec fdisk :

fdisk -l /dev/sdca /dev/sdcb

Et si ca ne fonctionne pas (table de partition GPT), je viens de faire quelques tests et la commande parted affiche tous les disques/partitionnements du systeme : il faudra peut-etre repondre "c" (Cancel) a une ou 2 erreurs

parted --list

EDIT:

1) Ne t'inquiete pas pour l'UUID, il est totalement arbitraire et c'est le systeme qui le genere pour s'y retrouver dans les partitions.

2) Tu as un @tmp dans ton Volume 2, quelle taille fait-il ? que contient-t-il ?

du -sh /volume2/@tmp

find /volume2/@tmp -print

3) le systeme et la swap sont bel et bien installes sur tous les disques internes au NAS mais pas dans les disques du DX.

Modifié par Fravadona
Lien vers le commentaire
Partager sur d’autres sites

La suite:

Syno209p> fdisk -l /dev/sdca /dev/sdcb

Disk /dev/sdca: .0 GB, 80000000000 bytes
255 heads, 63 sectors/track, 9726 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

    Device Boot      Start         End      Blocks  Id System
/dev/sdca1               1         311     2490240  fd Linux raid autodetect
Partition 1 does not end on cylinder boundary
/dev/sdca2             311         572     2097152  fd Linux raid autodetect
Partition 2 does not end on cylinder boundary
/dev/sdca3             588        9726    73405503  fd Linux raid autodetect

Disk /dev/sdcb: 1500.3 GB, 1500301910016 bytes
255 heads, 63 sectors/track, 182401 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

    Device Boot      Start         End      Blocks  Id System
/dev/sdcb1               1         311     2490240  fd Linux raid autodetect
Partition 1 does not end on cylinder boundary
/dev/sdcb2             311         572     2097152  fd Linux raid autodetect
Partition 2 does not end on cylinder boundary
/dev/sdcb3             588      182401  1460417440+ fd Linux raid autodetect

et

Syno209p> parted --list
Model: ATA ST4000VN000-1H41 (scsi)
Disk /dev/hda: 4001GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size    File system     Name  Flags
 1      131kB   2550MB  2550MB  ext4                  raid
 2      2550MB  4698MB  2147MB  linux-swap(v1)        raid
 3      4832MB  4001GB  3996GB                        raid


Model: ATA ST4000VN000-1H41 (scsi)
Disk /dev/hdb: 4001GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size    File system     Name  Flags
 1      131kB   2550MB  2550MB  ext4                  raid
 2      2550MB  4698MB  2147MB  linux-swap(v1)        raid
 3      4832MB  4001GB  3996GB                        raid


Model: ATA ST4000VN000-1H41 (scsi)
Disk /dev/sda: 4001GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size    File system     Name  Flags
 1      131kB   2550MB  2550MB  ext4                  raid
 2      2550MB  4698MB  2147MB  linux-swap(v1)        raid
 3      4832MB  4001GB  3996GB                        raid


Model: ATA ST4000VN000-1H41 (scsi)
Disk /dev/sdb: 4001GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size    File system     Name  Flags
 1      131kB   2550MB  2550MB  ext4                  raid
 2      2550MB  4698MB  2147MB  linux-swap(v1)        raid
 3      4832MB  4001GB  3996GB                        raid


Model: ATA ST380013AS (scsi)
Disk /dev/sdca: .0GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:

Number  Start   End     Size    Type     File system  Flags
 1      131kB   2550MB  2550MB  primary  ext4         raid
 2      2550MB  4698MB  2147MB  primary               raid
 3      4832MB  .0GB  75.2GB  primary               raid


Model: ATA ST31500541AS (scsi)
Disk /dev/sdcb: 1500GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:

Number  Start   End     Size    Type     File system  Flags
 1      131kB   2550MB  2550MB  primary               raid
 2      2550MB  4698MB  2147MB  primary               raid
 3      4832MB  1500GB  1495GB  primary               raid


Model: Linux Software RAID Array (md)
Disk /dev/md0: 2550MB
Sector size (logical/physical): 512B/512B
Partition Table: loop
Disk Flags:

Number  Start  End     Size    File system  Flags
 1      0.00B  2550MB  2550MB  ext4


Model: Linux Software RAID Array (md)
Disk /dev/md1: 2147MB
Sector size (logical/physical): 512B/512B
Partition Table: loop
Disk Flags:

Number  Start  End     Size    File system     Flags
 1      0.00B  2147MB  2147MB  linux-swap(v1)


Model: Linux Software RAID Array (md)
Disk /dev/md2: 3996GB
Sector size (logical/physical): 512B/512B
Partition Table: loop
Disk Flags:

Number  Start  End     Size    File system  Flags
 1      0.00B  3996GB  3996GB  ext4


Model: Linux Software RAID Array (md)
Disk /dev/md3: 1571GB
Sector size (logical/physical): 512B/512B
Partition Table: loop
Disk Flags:

Number  Start  End     Size    File system  Flags
 1      0.00B  1571GB  1571GB  ext4

C'est bizarre, la réponse à la commande semble "bégayer" pour le DS: on voit 4 instances (hda, hdb, sda, sdb) de disques de 4To alors que je n'en ai que 2;

Par contre dans le DX, c'est correct (sdca et sdcb)

Remarque: je n'ai pas eu d'erreur avec cette commande (pas de "c" nécessaire).

Syno209p> du -sh /volume2/@tmp
236.0K  /volume2/@tmp

et

Syno209p> find /volume2/@tmp -print
/volume2/@tmp
/volume2/@tmp/pkglist.tmp
/volume2/@tmp/pkglist.tmp/icon
/volume2/@tmp/pkglist.tmp/icon/INST
/volume2/@tmp/pkglist.tmp/icon/INST/Perl
/volume2/@tmp/pkglist.tmp/icon/INST/Perl/5.8.6-0003
/volume2/@tmp/pkglist.tmp/icon/INST/Perl/5.8.6-0003/thumb_72.png
/volume2/@tmp/pkglist.tmp/icon/INST/AudioStation
/volume2/@tmp/pkglist.tmp/icon/INST/AudioStation/5.1-2549
/volume2/@tmp/pkglist.tmp/icon/INST/AudioStation/5.1-2549/thumb_72.png
/volume2/@tmp/pkglist.tmp/icon/INST/AntiVirus
/volume2/@tmp/pkglist.tmp/icon/INST/AntiVirus/1.2-2275
/volume2/@tmp/pkglist.tmp/icon/INST/AntiVirus/1.2-2275/thumb_72.png
/volume2/@tmp/pkglist.tmp/icon/INST/PhotoStation
/volume2/@tmp/pkglist.tmp/icon/INST/PhotoStation/6.0-2626
/volume2/@tmp/pkglist.tmp/icon/INST/PhotoStation/6.0-2626/thumb_72.png
/volume2/@tmp/pkglist.tmp/icon/INST/iTunesServer
/volume2/@tmp/pkglist.tmp/icon/INST/iTunesServer/1.1-2270
/volume2/@tmp/pkglist.tmp/icon/INST/iTunesServer/1.1-2270/thumb_72.png
/volume2/@tmp/pkglist.tmp/icon/INST/MediaServer
/volume2/@tmp/pkglist.tmp/icon/INST/MediaServer/1.1-2407
/volume2/@tmp/pkglist.tmp/icon/INST/MediaServer/1.1-2407/thumb_72.png
/volume2/@tmp/pkglist.tmp/icon/INST/SurveillanceStation
/volume2/@tmp/pkglist.tmp/icon/INST/SurveillanceStation/6.1-2976
/volume2/@tmp/pkglist.tmp/icon/INST/SurveillanceStation/6.1-2976/thumb_72.png
/volume2/@tmp/pkglist.tmp/icon/INST/TimeBackup
/volume2/@tmp/pkglist.tmp/icon/INST/TimeBackup/1.2-2301
/volume2/@tmp/pkglist.tmp/icon/INST/TimeBackup/1.2-2301/thumb_72.png
/volume2/@tmp/pkglist.tmp/synoserver.fre

A priori il n'y a que les paquets installés.

[Edit]

Pour les performances ça semble pas mal du tout, car malgré les vieux disques utilisés et le fait de passer par la liaison eSata entre le DS et le DX, l'écriture sur le Raid0 du DX est nettement plus rapide (env 20% pour 1,17Gio en 2 fichiers) que sur le Raid1 du DS.

[Fin Edit]

Modifié par Oooops!
Lien vers le commentaire
Partager sur d’autres sites

C'est bien dommage de ne pas pouvoir multiplier ses disques aussi facilement ^^

FravadoNAS> ls -l /dev/hda /dev/hdb /dev/sda /dev/sdb
brw-r--r--    1 root     root        8,   0 Feb 12 08:17 /dev/hda
brw-r--r--    1 root     root        8,  16 Feb 12 08:17 /dev/hdb
brw-rw----    1 root     6           8,   0 Mar 24 01:22 /dev/sda
brw-rw----    1 root     6           8,  16 Mar 24 01:22 /dev/sdb

En fait /dev/hda correspond au meme disque que /dev/sda , et /dev/hdb correspond au meme disque que /dev/sdb; on le voit aux nombres major/minor 8, 0 et 8, 16 (c'est un peu l'equivalent des ports reseaux mais pour les peripheriques)

La commande parted liste tous les disques actifs quelle trouve dans /dev , et vu que tes disques de 4To ont 2 entrees chacuns il seront listes 2 fois.

Pour en revenir au RAID, au final le RAID-0 de Syno est un RAID-0 Linux (pas un LVM) mais je ne sais pas ce qu'il advient des donnees a l'interieur (strippees sur les deux disques jusq'a remplir le plus petit puis utilisation de l'espace restant sur le plus gros, ou bien s'il utilise un disque a la suite de l'autre), c'est difficile a determiner mais c'est faisable (si tu veux bien ^_^ ).

1) Copier un fichier video d'au moins quelques Mo sur le Volume 2

2) On recapitule les resultats importants qu'on a obtenu precedemment (pour la partie "3)" qui va suivre :

* df -h : La "device" correspondant au Volume 2 est /dev/md3

* mdadm --detail /dev/md3 : Les partitions (disques) du DX composant le RAID0 sont /dev/sdca3 et /dev/sdcb3

* fdisk -l /dev/sdca /dev/sdcb : La taille des secteurs des disques du DX est de 512 octets

* mdadm --detail /dev/md3 : Le superblock RAID se reserve 2048 secteurs pour les metadonnees (au debut de chaque partition composant le RAID0)

* mdadm --detail /dev/md3 : Le chunk size (taille des blocks RAID) est de 64Kio, ce qui correspond a 128 secteurs

3) Copie des deux premiers blocks du RAID0 (a partir du volume, puis directement a partir des disques)

* Copie du premier block RAID du Volume 2 :

dd if=/dev/md3 of=/root/md3_1 bs=512 count=128

* Copie du deuxieme block RAID du Volume 2 :

dd if=/dev/md3 of=/root/md3_2 bs=512 skip=128 count=128

* Copie du premier block RAID du premier disque du DX :

dd if=/dev/sdca3 of=/root/sdca3_1 bs=512 skip=2048 count=128

* Copie du premier block RAID du deuxieme disque du DX :

dd if=/dev/sdcb3 of=/root/sdcb3_1 bs=512 skip=2048 count=128

4) Tests pour savoir quels blocks sont identiques :

diff /root/sdca3_1 /root/md3_1
diff /root/sdca3_1 /root/md3_2
diff /root/sdcb3_1 /root/md3_1
diff /root/sdcb3_1 /root/md3_2
Modifié par Fravadona
Lien vers le commentaire
Partager sur d’autres sites

Re-,

j'ai dû rater quelque chose, car j'obtiens 4 fois les mêmes résultats:

1) j'ai créé un dossier partagé "Test" sur le Volume 2 et j'y ai copié un fichier vidéo de 228Mio

2) j'ai lancé successivement tes 8 commandes:

Syno209p> dd if=/dev/md3 of=/root/md3_1 bs=512 count=128
128+0 records in
128+0 records out

Syno209p> dd if=/dev/md3 of=/root/md3_2 bs=512 skip=128 count=128
128+0 records in
128+0 records out

Syno209p> dd if=/dev/sdca3 of=/root/sdca3_1 bs=512 skip=2048 count=128
128+0 records in
128+0 records out

Syno209p> dd if=/dev/sdcb3 of=/root/sdcb3_1 bs=512 skip=2048 count=128
128+0 records in
128+0 records out

Syno209p> diff /root/sdca3_1 root/md3_1
diff: can't stat 'root/md3_1': No such file or directory

Syno209p> diff /root/sdca3_1 root/md3_2
diff: can't stat 'root/md3_2': No such file or directory

Syno209p> diff /root/sdcb3_1 root/md3_1
diff: can't stat 'root/md3_1': No such file or directory

Syno209p> diff /root/sdcb3_1 root/md3_2
diff: can't stat 'root/md3_2': No such file or directory

Pour ce qui est du mode de fonctionnement du Raid, j'avais bien pensé à ta 1ère solution (Raid0 "classique" en stripping, concaténé avec ce qui reste du gros disque) mais j'en avais aussi envisagé une autre (mais c'est peut-être idiot): faire des bandes de taille différentes sur les 2 disques, selon leur capacité?

Autre chose: tu parles de copie ("Copie du premier block RAID du Volume 2"), mais après, ce qui est copié se retrouve où, et je le supprime comment?

[Edit]

ou alors, à l'étape 1 il ne fallait pas que je passe par une copie (Windows) dans un dossier partagé?

Mais si c'est ça, en ligne de commande je copie où et comment?

[Fin Edit]

Modifié par Oooops!
Lien vers le commentaire
Partager sur d’autres sites

Il y avait une erreur dans les commandes diff, un oubli de / , j'ai corrige en Edit.

Je ne suis pas sur de l'efficacite de la copie du fichier, apres tout, s'il n'est pas enregistre au debut du volume (ce que l'on ne peut pas forcer), alors ca ne servira a pas a grand chose.

La commande pour copier un fichier en ligne de commande serait :

cp /volume1/partage/fichier /volume2/

-> astuce Shell : la touche Tab permet de completer automatiquement le chemin. Par exemple si je commence a taper ls /vo et que j'appuie sur Tab cela va donner ls /volume : il n'aura complete qu'une partie car il y a plusieurs chemins possibles (/volume1, /volume2, /volumeUSB1, etc). Puis si tu appuies 2 fois sur Tab il te listera ces possibilites. C'est pratique car il protege automatiquement les caracteres qui peuvent poser probleme (espaces, crochets, etc). Ce sera a l'utilisateur de lever l'incertitude en ecrivant la suite.

Pour supprimer les fichiers que tu as a cree pour le test ce sera :

rm /root/md3_* /root/sdc*
Modifié par Fravadona
Lien vers le commentaire
Partager sur d’autres sites

Avec la commande diff modifiée:

Syno209p> diff /root/sdca3_1 /root/md3_1

Syno209p> diff /root/sdca3_1 /root/md3_2
Files /root/sdca3_1 and /root/md3_2 differ

Syno209p> diff /root/sdcb3_1 /root/md3_1
Files /root/sdcb3_1 and /root/md3_1 differ

Syno209p> diff /root/sdcb3_1 /root/md3_2
Lien vers le commentaire
Partager sur d’autres sites

Ok, le resultat de ces commandes indique que le premier block du volume RAID0 (/dev/md3) est sur le disque DX1 et que le second block est sur le disque DX2.

On peut donc supposer/deduire que le debut du Volume 2 est reparti entre les deux disques du DX jusqu'a remplir le plus petit (tel un RAID-0 standard), puis qu'il continue sur le disque de plus grande capacite.

Lien vers le commentaire
Partager sur d’autres sites

Bonsoir,

il y a peut-être un moyen de vérifier ton hypothèse (ou au moins de la renforcer): comme l'un des 2 disques est tout petit, je dois pouvoir assez facilement remplir le Raid0 correspondant; ce faisant, je note le taux de transfert en écriture; une fois dépassée la valeur correspondante (env 2 x 80Mo), je copie d'autres gros fichiers et je compare le taux de transfert en écriture: "normalement" il devrait être assez nettement inférieur?; je pourrai aussi comparer ce taux plus tard, en faisant un volume Basic avec le seul 1,5To.

Modifié par Oooops!
Lien vers le commentaire
Partager sur d’autres sites

Bon, les tests que j'ai faits donnent des résultats "bizarres":

1) comme je n'étais pas absolument sûr de la capacité (notemment encore à cause des questions d'octets et ioctets), pour surveiller ce qui se passerait à la fin du "remplissage" j'ai créé 2 répertoires Remp1 et Remp2 dans lesquels j'ai successivement copié les mêmes 74,2Gio de données en 39 fichiers.

* pour Remp1 ça a pris 24'05, soit une vitesse d'écriture de 52,64Mio/s

* pour Remp2 ça n'a pris que 18'55, soit une vitesse de 67Mio/s (j'ai vérifié les mesures, il n'y a pas d'erreur dans les chiffres)

2) pensant que ce n'était pas assez pour remplir la partie qui correspondrait à un Raid0-standard, dans un répertoire Remp3 j'ai copié 2 fichiers totalisant 4,79Gio en 95s (soit 51,63Mio/s); après les avoir renommés dans la cible j'ai relancé la copie, pour voir si ce que j'avais constaté entre Remp2 et Remp1 se reproduisait => bin non, toujours 95s.

Là j'en étais à 157, 90Gio, soit nettement plus que ce que permettrait un Raid0 classique entre un disque de 80Go (càd 74,5Gio) et un disque de 1,5To (74,5x2 càd 149Gio).

3) dans Remp j'ai copié 2 autres fichiers totalisant 4,80Gio => de nouveau 95s; et idem après renommage et nouvelle copie.

Donc pour Remp1 seul et les manip faites dans Remp3, ça ne semble pas significatif: 52,64Mio/s vs 51,36Mio/s; mais la partie constituée du Raid0 "classique" n'était pas pleine.

Par contre si on fait la moyenne pour Remp1 et Remp2, ce qui doit correspondre au remplissage du Raid0 "standard" ça fait 59,82Mio/s, ce qui là est peut-être significatif par rapport aux 51,63Mio/s dans Remp3 (et là ça "devrait" bien être uniquement sur le reste du disque 1,5To); mais d'où vient la différence entre Remp1 et Remp2, alors que tous les 2 sont censés avoir été rempli dans le 80Go et sa partie correspondante du 1,5To en Raid0?

[Edit]

Tout bien réfléchi et même si la différence de comportement entre Remp1 et Remp2 reste curieuse, il n'est peut-être pas étonnant que ces tests ne soient pas significatifs: je ne sais pas comme l'EXT4 gère "physiquement" les fichiers, mais après tout même sur un volume vide rien ne garantit que l'écriture de fichiers se fasse physiquement de manière linéaire depuis le début jusqu'à la fin (un peu comme si on empilait des galettes).

=> c'est quoi la suite des tests à faire? passer en JBOD?

[Edit]

Modifié par Oooops!
Lien vers le commentaire
Partager sur d’autres sites

Normalement avec un RAID-0 on obtient un debit global presque egal a la somme des debits de chaque disque.

Vu que tes tests de debits sont plutot etranges (car trop homogenes), l'hypothese que le debut du Volume est "strippe" entre les deux disques est peut-etre erronee.

Pour verifier il suffit de trouver ou sont situes les 3ie et 4ie blocks du volume RAID.

dd if=/dev/md3 of=/root/md3_3 bs=512 skip=256 count=128
dd if=/dev/md3 of=/root/md3_4 bs=512 skip=384 count=128
dd if=/dev/sdca3 of=/root/sdca3_2 bs=512 skip=2176 count=128
dd if=/dev/sdcb3 of=/root/sdcb3_2 bs=512 skip=2176 count=128
diff /root/sdca3_2 /root/md3_3
diff /root/sdca3_2 /root/md3_4
diff /root/sdcb3_2 /root/md3_3
diff /root/sdcb3_2 /root/md3_4
Modifié par Fravadona
Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

Syno209p> dd if=/dev/md3 of=/root/md3_3 bs=512 skip=256 count=128
128+0 records in
128+0 records out
Syno209p> dd if=/dev/md3 of=/root/md3_4 bs=512 skip=384 count=128
128+0 records in
128+0 records out
Syno209p> dd if=/dev/sdca3 of=/root/sdca3_2 bs=512 skip=2176 count=128
128+0 records in
128+0 records out
Syno209p> dd if=/dev/sdcb3 of=/root/sdcb3_2 bs=512 skip=2176 count=128
128+0 records in
128+0 records out

À noter que le Syno était en veille => l'accès avec Putty a réveillé les disques du DS => RAS avec les 2 premières lignes de commande; par contre la 3ème ligne a réveillé les disques du DX.

Syno209p> diff /root/sdca3_2 /root/md3_3
Syno209p> diff /root/sdca3_2 /root/md3_4
Files /root/sdca3_2 and /root/md3_4 differ
Syno209p> diff /root/sdcb3_2 /root/md3_3
Files /root/sdcb3_2 and /root/md3_3 differ
Syno209p> diff /root/sdcb3_2 /root/md3_4
Lien vers le commentaire
Partager sur d’autres sites

On va mettre un peu de couleurs ^^

Les tests ont seulement montré ou étaient situes (sur les disques) les block 1,2,3 et 4 du Volume2, mais vu leur agencement on peut extrapoler que le reste du volume est organise comme ceci :

14033108120816625912113164.png

PS: pour les commandes qui n'ont PAS reveille le NAS de sa veille, on peut supposer que le Volume2 est en partie "en cache", alors que l'acces direct aux disques (et pas au volume) a besoin de demarrer les disques.

Modifié par Fravadona
Lien vers le commentaire
Partager sur d’autres sites

Bonsoir,

on a bien raison de dire qu'un (bon) dessin vaut mieux qu'un (long) discours :D.

Ici le "discours" était nécessaire pour essayer de comprendre comment ça fonctionne, mais ton super schéma résume très bien la situation.

Donc on reste sur l'idée que ça commence par une mise en Raid0 du petit disque et de sa partie correspondante du gros, concaténée avec le reste du gros.

Il ne me reste plus qu'à lancer la commande rm que tu m'as indiquée hier pour "nettoyer" les disques des fichiers créés depuis hier (avec les commandes dd) et on passe à la suite (JBOD? Basic?) ;)

[Edit]

en rédigeant ce message, je viens de penser que je n'ai pas encore eu le temps d'aller voir ma boîte mél privée; et justement, mon interlocuteur confirme l'hypothèse émise (d'abord remplissage en bande sur les 2 disques puis quand le petit est plein suite du remplissage sur le reste du gros), en précisant que "C'est un fonctionnement similaire qui est à la base de notre RAID hybride". La question que j'ai posée aussi et qui concernait l'influence éventuelle de ce type de montage sur la possibilité de mise en œuvre de la procédure de récupération en montant les disques dans un PC sous Linux "standard" -cf cette FAQ- fera l'objet d'un réponse un peu plus tard.

[Fin Edit]

Lien vers le commentaire
Partager sur d’autres sites

Bonsoir ;-)

Ce type d'organisation est surement le standard Linux car je vois mal Synology modifier le driver RAID du noyau.

Pour contre il est certain que cette possibilite est meconnue (ou denigree) car on met generalement en place un RAID0 pour avoir de la perf et qu'avec cette configuration on ne peut etre sur de rien: des fois ca ira plus vite, des fois non ...

Prochain test sur un disque en mode basique ? ;)

Modifié par Fravadona
Lien vers le commentaire
Partager sur d’autres sites

Bonsoir,

oui, pour la perf en Raid0, je pense qu'elle ne reste assurée de bout en bout que si on utilise 2 disques de même taille.

Avec 2 disques de taille différente, c'est là que ré-apparaît une question qui revient regulièrement sur le forum: pouvoir "partitionner" (dans le cas présent je ne sais pas si le terme serait réellement adapté) le plus gros disque en 2, une partition correspondant à la taille du plus petit disque, et l'autre au le reste; la première, associée au petit disque, permettrait de faire un volume en Raid0 (ou en Raid1, suivant les besoins), tandis que la 2ème ferait un volume basic "indépendant". Mais ça, j'ai déjà testé un tas de combinaisons, sans résultat => je pense que ce n'est pas possible avec DSM (du moins en interface graphique avec le Gestionnaire de stockage).

Sinon, pour en revenir à ta dernière question, c'est prêt: j'ai supprimé le volume en Raid0 sur le DX et j'ai créé un petit volume Basic avec le disque de 80Go => tu peux me poster une liste de commandes à tester ;).

Par contre, ne vaudrait-il pas mieux ouvrir un autre topic pour faire ça, puisque le sujet change?

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

1) c'est vrai que je commence à reconnaître des commandes, mais je préfère que tu continues à me les donner pas-à-pas (ou par lot quand c'est possible) car j'avoue que je ne suis pas toujours sûr de bien savoir ce que fait chacun d'entre elles.

2) Si on s'intéressait au mode JBOD ça ne m'aurait pas gêné de continuer ici (et de trouver un titre adapté, le thème commun étant une sorte de "cumul" de disques); mais là comme on passe sur un mode différent (y compris dans son usage) je pense que ça facilitera la recherche dans le forum si on fait des sujets différents => il m'a semblé préférable d'ouvrir .

Mais si les modos préfèrent regrouper les 2, bien-sûr pas de souci pour qu'ils le fassent B).

Lien vers le commentaire
Partager sur d’autres sites

Bonsoir,

Bonsoir ;-)

Ce type d'organisation est surement le standard Linux car je vois mal Synology modifier le driver RAID du noyau.

Pour contre il est certain que cette possibilite est meconnue (ou denigree) car on met generalement en place un RAID0 pour avoir de la perf et qu'avec cette configuration on ne peut etre sur de rien: des fois ca ira plus vite, des fois non ...

Prochain test sur un disque en mode basique ? ;)

je reviens sur cette organisation du Raid0: si j'ai bien compris les résultats des commandes testées, la "concaténation" obtenue reste au final un Raid "classique" de Linux, pas une spécificité genre LVM.

Et si ça n'est pas une modif de Synology sur le driver Raid du noyau Linux, ça veut dire que ça devrait fonctionner comme ça aussi un PC sous Linux quelconque (du moins dans une distribution pas trop vieille).

Si c'est ça, comment se fait-il que personne n'en ai jamais parlé ou qu'aucun site ne le mentionne?

J'avoue que pour Linux je n'ai pas trop l'habitude de ce genre d'info donc je ne sais pas où chercher, mais n'y a-t-il pas "quelque part" un journal "officiel" de mise à jour qui permettrait de savoir si/quand ce type de fonctionnement a été introduit dans le Linux "standard"?

et accessoirement, de passer l'info à tous les sites consacrés à Linux dont tous ceux que j'ai vus jusqu'à maintenant en restent à "l'ancienne" définition du Raid0?

Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.