# [Raid] Comment ca marche ?

## Vi66cent

Bonjour

Je dois installer un petit serveur, j'aimerais faire un raid 1 pour sécuriser les données. Donc je pense acheter 2 disqueq de 250 et une carte raid pour avoir du raid hardware.

Par contre je ne sais pas du tout comment ca se passe au niveau du système... Est-ce que Gentoo ne vera qu'un disque de 250 ou est-ce qu'il faudrat parametrer des truc pour avoir le raid fonctionnel ?

Merci !

----------

## -KuRGaN-

Si tu prend un raid hardware, tout se configure dans le "bios" de la carte raid. Si tu choisis un raid 1, c'est à dire du mirroring, alors ta gentoo ne verra qu'un disque, et c'est la carte qui fera le boulot en arrière, c'est à dire écrire les données sur les deux disques.

----------

## Vi66cent

Merci, ca répond tout a fait a ma question  :Smile: 

Donc je vais faire du raid 1 hardware qui semble très simple a mettre en place !

----------

## neysx

Avec une vraie carte raid hardware (p.ex. 3ware), Linux ne voit que le disque raid /dev/sdX pour autant que le pilote soit disponible.

Les gros problèmes liés à du raid matériel sont:

1. Le prix : ces cartes sont chères.

2. La fiabilité : la carte devient un point individuel de défaillance (SPOF) et si ta carte flanche, tu dois la remplacer par une carte identique. Avec du raid logiciel, tu ne dois remplacer que la carte SATA/IDE/SCSI, ou la carte mère. Tu peux brancher test disques sur n'importe quelle autre machine, charger les modules raid et monter ton raid.

3. Manque de souplesse : avec la plupart des cartes raid, tu choisis le type de raid au niveau du disque, p.ex. raid-1 pour tous les disques. Avec du raid logiciel, tu peux combiner.

http://www.gentoo.org/doc/fr/gentoo-x86+raid+lvm2-quickinstall.xml

----------

## anigel

Après avoir longuement expérimenté ce type de solutions, mon avis rejoint grandement celui de neysx. Dans le cas d'un mirroring, l'achat d'une carte RAID ne se justifie pas (plus) forcément aujourd'hui. Le RAID soft sous Linux est aussi rapide, il est beaucoup plus flexible, et pour peu que l'on prenne quelques précautions de base, aussi fiable.

Concernant ces précautions :

Si les disques utilisés pour le mirroring sont en PATA (IDE), veiller à ne pas les mettre sur la même nappe. Autrement dit : chacun sur un contrôleur séparé (hda et hdc par exemple). d'abord ça améliore énormément les perfs, ensuite ça permet d'éviter une cata si un contrôleur perd les pédales.

Si les disques sont en SATA, éviter comme la peste les contrôleurs non-intel (les contrôleurs SATA Via, pour ne citer que mon pire ennemi). A la limite, un contrôleur NVidia marche pas trop mal en général

dans tous les cas, éviter strictement d'utiliser les RAIDS "soft" inclus dans les cartes mères actuelles. Mieux vaut même les désactiver carrément dans le BIOS pour éviter les ennuis.

Pour ma part, sur un "ancien" serveur reconverti en hôte pour serveurs virtuels, j'ai du RAID-1 soft qui m'a donné entière satisfaction, y compris lors d'une panne de disque : mdadm m'a prévenu par mail, j'ai échangé le disque et reconstruit le RAID en 20 minutes, personne n'a rien vu. Avec le support software limité des cartes du commerce, je ne suis pas certain que j'aurais pus obtenir ce type de performances avec une solution propriétaire (je sais que 3ware a bonne presse sur ce point précis, mais je ne connais pas leurs solutions, je ne peux donc pas m'exprimer).

----------

## Vi66cent

Merci pour ces informations supplementaires !

Ce qui m'attirait dans le raid hardware c'était plutot la facilité...Je branche et j'install comme s'il n'y avait qu'un disque.  :Smile: 

Avec vos arguments ca change pas mal la donne...

Est-ce que le raid 1 software est compliqué a mettre en place ?

----------

## neysx

 *Vi66cent wrote:*   

> Est-ce que le raid 1 software est compliqué a mettre en place ?

 non

----------

## ghoti

Par contre, si tu as besoin de performances (je veux dire "rapidité"), oublie LVM !

----------

## _droop_

+1 pour neysx et anigel.

à noter : avec des controlleurs pas extraordinaires, la machine peut bloquer quand un disque meurt. (Par contre, merci au raid 1, elle redémarre très vite sans intervention).

----------

## anigel

 *ghoti wrote:*   

> Par contre, si tu as besoin de performances (je veux dire "rapidité"), oublie LVM !

 

Sur du RAID-1 effectivement, LVM "coûte", en terme de perfs. en revanche, en-dehors de toute considération de sécurité des données, LVM2 en stripping sur 2 disques SATA, les perfs m'ont coupé le souffle... J'aurais du mal à revenir en arrière maintenant. Par contre, bizarrement, j'ai eu plein de plantages bizarres avec cette conf sur une base gentoo-sources, alors que je n'ai plus aucun problème depuis que je suis revenu à mes vanilla-sources. Pas fait de bugreport, puisque je suis incapable de savoir ce qui a déconné dans mon cas...

----------

## billiob

 *Vi66cent wrote:*   

> j'aimerais faire un raid 1 pour sécuriser les données.

 

Juste pour dire que le raid n'est en aucun cas une solution pour empêcher totalement de perdre ses données. Les bonnes vieilles sauvegardes seront toujours nécessaires.

----------

## ghoti

 *anigel wrote:*   

> LVM2 en stripping sur 2 disques SATA, les perfs m'ont coupé le souffle

 

Alors là, je suis étonné. Justement, je n'osais par faire du lvm sur raid0 vu qu'en raid1 ce n'était pas terrible   :Crying or Very sad: 

Le but de mon raid0, c'est justement la rapidité (pour la partie système) et j'ai préféré faire 3 volumes raid0 plutôt qu'un seul avec lvm par dessus.

Il faut tout de même bien que lvm pompe un peu de ressources, non ?Last edited by ghoti on Mon Mar 05, 2007 11:28 pm; edited 1 time in total

----------

## ghoti

 *billiob wrote:*   

>  *Vi66cent wrote:*   j'aimerais faire un raid 1 pour sécuriser les données. 
> 
> Juste pour dire que le raid n'est en aucun cas une solution pour empêcher totalement de perdre ses données. Les bonnes vieilles sauvegardes seront toujours nécessaires.

 

"En aucun cas"  ?  :Confused: 

C'est plutôt radical comme affirmation !

Disons, qu'en effet, même en raid1, il faut tout de même des backups. 

Y a pas à discuter : Il faut TOUIJOURS des backups, même en raid3753 !  :Wink: 

Cependant, un raid1 est tout de même plus "secure" qu'un disque unique tout pourri  :Wink: 

En entreprise, évidemment ...

----------

## novazur

 *anigel wrote:*   

> Pour ma part, sur un "ancien" serveur reconverti en hôte pour serveurs virtuels, j'ai du RAID-1 soft qui m'a donné entière satisfaction, y compris lors d'une panne de disque : mdadm m'a prévenu par mail, j'ai échangé le disque et reconstruit le RAID en 20 minutes, personne n'a rien vu.

 

3 questions "bêtes" :

1) il faut quand même arrêter la machine pour changer le disque défectueux, non ? Je dis ça parce que j'ai cru lire qu'on pouvait maintenant changer les disques IDE à chaud sous Linux (j'ai bien dit : "j'ai cru lire"). Si cela est vrai, dans quelles conditions ? Et était-ce ton cas ?

2) La reconstruction, elle se fait automatiquement au reboot (s'il y a eu reboot) et c'est parfaitement transparent ou il faut partitionner le deuxième disque, puis le ré-inclure dans le raid (et si oui, comment ?) ?

3) quand on remplace le disque défectueux, il faut mettre un disque identique, ou au moins de la même capacité ?

J'avais prévenu...  :Sad: 

Je demande ça parce que j'ai une machine qui tourne en raid1 soft, et que je ne sais pas du tout à quoi m'attendre quand un disque va me lâcher...

Merci d'avance.

----------

## _droop_

Bonjour,

Questions pas idiotes...

 *novazur wrote:*   

> 
> 
> 1) il faut quand même arrêter la machine pour changer le disque défectueux, non ? Je dis ça parce que j'ai cru lire qu'on pouvait maintenant changer les disques IDE à chaud sous Linux (j'ai bien dit : "j'ai cru lire"). Si cela est vrai, dans quelles conditions ? Et était-ce ton cas ?
> 
> 

 

A priori les IDE ne sont pas "hotplug", donc obligation d'arrêter la machine.

Normalement le SATA est hotplug, mais certains controleurs/disques ne le sont pas (la plupart ?), donc en théorie un coup de sdparm pour désactiver le disque et on peut le débrancher... En pratique il faut vérifier la combinaison disque/controleur, sinon risque de griller le matériel... Il peut y avoir un ordre pour le branchement...

Avec un disque defectueux, tu as un risque non nul que la machine bloque (ça dépend du matériel et de la panne), donc redémarrage obligatoire, voir arrêt si le démarrage bloque (avec par exemple un tac-tac-tac du plus bel effet).

 *novazur wrote:*   

> 
> 
> 2) La reconstruction, elle se fait automatiquement au reboot (s'il y a eu reboot) et c'est parfaitement transparent ou il faut partitionner le deuxième disque, puis le ré-inclure dans le raid (et si oui, comment ?) ?
> 
> 

 

Il faut partitionner le nouveau disque dur (même taille de partition que l'autre disque, avec sfdisk c'est pas très dur de cloner un shémas de partition d'un disque à l'autre) et reconstruire les array à coup de mdadm manage /dev/mdX --add /dev/nouvelle_partition. Il y a peut être des scripts pour faire de façon automatique...

La reconstruction prend un temps assez important (il faut qu'il copie toutes les données de la partition active vers la nouvelle partition). Il ne reconstruit qu'un array à la fois (pour ne pas saturer le disque).

 *novazur wrote:*   

> 
> 
> 3) quand on remplace le disque défectueux, il faut mettre un disque identique, ou au moins de la même capacité ?
> 
> 

 

Il faut recréer les mêmes partitions donc il faut un disque aussi gros (ou un peu plus pour être tranquille).

----------

## anigel

 *ghoti wrote:*   

>  *anigel wrote:*   LVM2 en stripping sur 2 disques SATA, les perfs m'ont coupé le souffle 
> 
> Alors là, je suis étonné. Justement, je n'osais par faire du lvm sur raid0 vu qu'en raid1 ce n'était pas terrible  

 

Attention ! Je n'ai pas parlé de LVM sur RAID-0 (qui n'aurait pas vraiment de sens), j'ai parlé de LVM en stripping. Autrement dit, LVM permet de créer des partitions, en les agrégeant par bandes sur les 2 disques, ce qui accélère énormément les taux de transferts (quasiment du simple au double pour moi). Mais sur cette config, je n'ai pas de RAID. C'est au moment du lvcreate que l'on peut demander la création d'un volume de ce type.

 *ghoti wrote:*   

> Cependant, un raid1 est tout de même plus "secure" qu'un disque unique tout pourri 

 

Et 2 disques tout pourris vs 1 disque tout neuf ? OK, je sors --> [ ]

 *novazur wrote:*   

> 3 questions "bêtes" :

 

Il n'y a pas de question bête. Seules les réponses peuvent parfois l'être  :Wink:  !

 *novazur wrote:*   

> 1) il faut quand même arrêter la machine pour changer le disque défectueux, non ? Je dis ça parce que j'ai cru lire qu'on pouvait maintenant changer les disques IDE à chaud sous Linux (j'ai bien dit : "j'ai cru lire"). Si cela est vrai, dans quelles conditions ? Et était-ce ton cas ?

 

Mon cas est particulier : je travaille sur du matériel professionnel, qui supporte ce type de changement à chaud. Mais la machine valait, en 2001, près de 60 000 Frs. Forcément... Après, tout dépend du hardware. Mais dans le cas d'architectures de type PC "de bureau", je préfère éteindre quelques minutes plutôt que de risquer une catastrophe.

 *novazur wrote:*   

> 2) La reconstruction, elle se fait automatiquement au reboot (s'il y a eu reboot) et c'est parfaitement transparent ou il faut partitionner le deuxième disque, puis le ré-inclure dans le raid (et si oui, comment ?) ?

 

Inutile de paraphraser l'excellent Software-RAID HOWTO  :Wink: .

 *novazur wrote:*   

> 3) quand on remplace le disque défectueux, il faut mettre un disque identique, ou au moins de la même capacité ?

 

Un disque qui ait au moins la même capacité est suffisant. si tu mets un disque plus grand, tu perds de la place, ce qui reste moins gênant que de perdre... des données  :Wink: .

 *novazur wrote:*   

> Je demande ça parce que j'ai une machine qui tourne en raid1 soft, et que je ne sais pas du tout à quoi m'attendre quand un disque va me lâcher...

 

Lis bien la doc que je te link, elle te permettra de "simuler" une panne, c'est toujours formateur !

----------

## novazur

Merci _droop et anigel pour vos réponses précieuses et précises.

Le Raid fait partie de ces choses qu'on n'utilise souvent qu'une fois, et qu'on oublie, jusqu'au jour où...

Et moi, inquiet de nature, je me demande toujours si j'ai les bonnes infos pour ce jour là  :Sad: 

----------

## novazur

Une dernière question, toujours aussi "naïve"  :Wink: 

Supposons une machine chez un hébergeur, comportant 2 disques identiques, mais pas de Raid Hard, sur laquelle l'hébergeur est en mesure d'installer une gentoo de base (un noyau et un accès ssh root en résumé).

Est-il envisageable d'y installer un raid1 soft ?

Autant, je vois bien comment faire en partant d'une machine sur laquelle j'ai la main, avec un livecd. Autant là, j'ai du mal à me faire une idée, si ce n'est d'installer une autre gentoo, en chroot, dans d'autres partitions qui elles, seront initialement montées en raid 1.

Voyez-vous une autre solution si l'hébergeur n'est pas en mesure lui-même de mettre en place le raid nécessaire initialement ?

J'espère que vous m'aurez compris.

----------

## ghoti

 *anigel wrote:*   

> j'ai parlé de LVM en stripping. Autrement dit, LVM permet de créer des partitions, en les agrégeant par bandes sur les 2 disques, ce qui accélère énormément les taux de transferts (quasiment du simple au double pour moi). Mais sur cette config, je n'ai pas de RAID. C'est au moment du lvcreate que l'on peut demander la création d'un volume de ce type.

 

Aaah d'accord ! 

Sais pas pourquoi mais j'avais toujours cru que la répartition de charge devait reposer sur le raid0.

Dans ce cas, je vais réexaminer sérieusement la piste lvm !  :Smile: 

----------

## anigel

 *novazur wrote:*   

> Supposons une machine chez un hébergeur, comportant 2 disques identiques, mais pas de Raid Hard, sur laquelle l'hébergeur est en mesure d'installer une gentoo de base (un noyau et un accès ssh root en résumé). Est-il envisageable d'y installer un raid1 soft ?
> 
> 

 

C'est possible, mais ça demande de "bidouiller". Si vraiment la question se pose à toi, je détaillerai demain (là je commence à fatiguer  :Wink: ).

 *novazur wrote:*   

> J'espère que vous m'aurez compris.

 

"Je vous ai compris !"

----------

## novazur

 *anigel wrote:*   

> 
> 
> C'est possible, mais ça demande de "bidouiller". Si vraiment la question se pose à toi, je détaillerai demain (là je commence à fatiguer ).

 

Et bien finalement non, la solution d'hébergement choisi comporte finalement un Raid hard, un peu pour cette raison d'ailleurs, mais pas seulement.

Cependant, si quand tu te sens plus en forme, tu veux revenir dessus, la réponse m'intéresse toujours autant, au moins par curiosité, et pour savoir si la façon dont j'aurais tenté la chose était viable (en fait, celle que j'envisageais dans mon post).

 *Quote:*   

> "Je vous ai compris !"

 

C'est bien, nous sommes sur la même longueur d'onde  :Wink: 

----------

## anigel

 *novazur wrote:*   

> Cependant, si quand tu te sens plus en forme, tu veux revenir dessus, la réponse m'intéresse toujours autant, au moins par curiosité, et pour savoir si la façon dont j'aurais tenté la chose était viable (en fait, celle que j'envisageais dans mon post).

 

Alors, schématiquement, le principe est de créer un système "minimal", sur une partition quelconque d'un des disques, et d'être capable de booter dessus. Dans ce système, compiler un noyau avec support du RAID soft et éventuellement du LVM. Rebooter sur ce noyau.

Sur la place restante sur ce disque, créer des partitions de type Linux RAID autodetect (code hexa FD). Dupliquer ces partitions, de façon totalement identique sur le second disque. Rebooter pour prendre en compte ces nouvelles tables de partitions. Ensuite, c'est un jeu d'enfant : activer le RAID soft sur ces partitions, les "monter", puis, soit transférer le système actuel sur ces partitions (hyper-simple en ext3), soit en compiler un nouveau, et rebooter dessus. Voilà, tu es sur du RAID soft.

Enfin, une fois l'opération effectuée, je te conseille de considérer l'espace occupé par l'ancien système comme "perdu" : en cas de besoin tu seras content de le retrouver, sain et sauf  :Wink:  !

Sinon, solution plus rapide, mais plus "technique" : une fois sur le système minimal de départ, créer sur le second disque une partition de type RAID, la déclarer dans un volume RAID-1 ne comportant qu'un seul disque (l'autre est présume fautif), et recopier le système dessus). Rebooter sur ce système, et ensuite seulement, utiliser la partition du système de départ comme seconde partition membre de la grappe RAID, et reconstruire le RAID depuis le disque (présumé) sain. Mais là, ça demande à (très) bien connaître le système...

----------

## novazur

 *anigel wrote:*   

> [.../...]Enfin, une fois l'opération effectuée, je te conseille de considérer l'espace occupé par l'ancien système comme "perdu" : en cas de besoin tu seras content de le retrouver, sain et sauf  !

 

Ok, c'est donc bien à ça que je pensais, et ce qui me gênait justement était cet espace perdu, et toutes ces manipulations. Parce que les reboot, à distance, chez un hébergeur qui n'a pas de système de "rescue", ça me fait toujours trembler  :Sad: 

 *Quote:*   

> [.../...]Mais là, ça demande à (très) bien connaître le système...

 

Ah oui, chaud !

Mais intéressant, ça vaut le coup d'essayer un jour avec une machine sur laquelle j'ai la main, ou alors avec un système de "rescue".

Merci.

----------

