[gull] RAID 1 + LVM (ex: RAID 10)

Daniel Cordey dc at pxcluster.com
Wed Aug 21 20:24:39 CEST 2019


Frédéric,

> Intéressant, je ne savais pas que le débit nominal (dans mon cas, 
> 300Mo/s nominal sur ces contrôleurs SATA2) devait encore être divisé 
> entre plusieurs ports. Je croyais que ce n'était le cas qu'en PATA 
> (nappe IDE 80 brins + Master/Slave).

En fait... le marketinĝ est passé par là. Que signifie SATA ? Simplement 
sérial ATA ! On a subtilement passé de IDE an ATA sans faire trop de 
bruit en espérant que les gens se diraient "wow un nouvel interface qui 
va plus vite". Oui, en quelque sortes. La sérialisation a permit 
d'augmenter la vitesse de transfert, mais... on a conserver le même 
"handschaking"... et toc. C'est à dire que la notion de Master/Slave est 
restée, mais qu'on t'as aussi enlevé la possibilité de faire joujou avec 
les jumpers. On a aussi profité de renommer (en silence aussi) IDE en 
PATA. Et voilà le tour est joué ! Donc, lorsque tu veux lire/écrire 
quelque chose sur un disque/cd/dvd/floppy, le bus est bloqué jusqu'à 
réception du "handschake" final par le "Master". Ce qui fait que même 
avec un SSD ce n'est pas optimum. On peut donc facilement saturer un bus 
SATA avec deux disques. C'est en fait un bus de type "synchrone" ce qui 
est très pénalisant. C'est sans doute pour cette raison que l'on n'avait 
pas de disque 15'000 tours sur des bus SATA.

Mais alors, quel bus pour les disques >10'000 tours ? Simple, le bus 
SAS. ET donc, que signifie SAS ? "Serial Attached SCSI". ET là, on a un 
bus "asynchrone", ce qui permet de paraléliser les transaction. Le 
protocole SCSI est ainsi fait qu'il permet de scinder les requêtes SCSI 
et de ne pas monopoliser le bus en ne faisant rien. C'est beaucoup plus 
intelligent, mais c'est aussi plus complexes. Ce qui explique que SAS ne 
soit disponible que sur les disques plus chers et plus performants. IL 
est donc plus difficile de saturer un bus SAS. En SCSI on commençait à 
saturer les bus avec 5-6 disques (bon, ça dépend des requêtes).

Avec les SSD, les choses ont changé. On a du SATA, su SAS, du mSATA, du 
M.2, du PCIe et du NVME (si vous voulez les détails du mixage de mSATA, 
M.2, PCIe et NVME, veuillez consulter internet... c'est trop long).

Bon, ce qui importe est la capacité du bus et son protocole. SATA reste 
ce qu'il est et est un bon bus pour des disques d'archivages. Quoique... 
en augmentant la taille des disques, on augment aussi le besoin de taux 
de transfert, etc SATA a des limites... je ne pense pas que l'on verra 
un SATA 5 ou 6. Bref, aujourd'hui, c'est M.2/NVMe ou PCI*/NVMe. Mais ne 
soyez pas ébloui par les taux de transfert annoncés et le nombre d'I/O 
annoncés. Ces valeurs peuvent être atteintes dans des conditions très 
particulières et, à part le transfert de gros paquets qui atteint 
effectivement des valeurs intéressantes, le nombre d'I/O par secondes 
chute drastiquement avec des petits paquets... vous pouveu facilement 
diviser les valeurs annoncées par 10 ! On peut donc aussi arriver à 
saturer ces bus. On peut saturer n'importe quel bus, et ça se fait 
toujours avec des petits paquets. Ce qui fait que la performance d'un 
bus est fonction de sa vitesse de "commutation" et non de son taux de 
transfert.

> Ce sera plus vrai avec les SSD que les HDD; difficile pour la mécanique 
> de deux HDD de saturer le débit d'un contrôleur SATA, même mutualisé 
> entre les deux.

C'est d'ailleurs une question intéressante... avec du RAID0 (ou 10), on 
réparti l'écriture sur les deux disques, ce qui fait qu'avec du SATA sur 
le même contrôleur, le deuxième disque doit attendre que le premier ait 
valider son écriture avant de pouvoir recevoir l'ordre d'écriture le 
concernant. Donc, il faut mettre le disque 1 sur un des contrôleur et le 
deuxième sur l'autre. Il faut donc deux contrôleurs. Ce problème ne se 
voit quasi pas avec un bus SAS.

> Je comprends mieux maintenant pourquoi:
> 
>   - deux connecteurs SATA sont en plastique rouge, deux autres en orange;
>   - le BIOS signale deux disques SATA "master" et deux autres "slave".

C'est déjà pas mal :-)

> 
> Il faudra brancher chaque disque de la grappe RAID1 sur chacun des ports 
> "master": plus de redondance (sur le papier) et plus de bande passante 
> pour des écritures parallèles.

Exactement.

dc



More information about the gull mailing list