Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
tutoriel:installation_raid_lvm [Le 27/11/2010, 17:52]
58.26.247.139 yzLGcqIui
tutoriel:installation_raid_lvm [Le 11/09/2022, 12:23] (Version actuelle)
moths-art Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892)
Ligne 1: Ligne 1:
-x6eeh0 ​ <​a ​href="http://htpsimrilvgz.com/">​htpsimrilvgz<​/a>, [url=http://lcixscippthw.com/]lcixscippthw[/​url], [link=http://wwavytxzddha.com/]wwavytxzddha[/link], http://wwefgiieyeia.com/+{{tag>​tutoriel raid}} 
 +---- 
 + 
 +====== Installation robuste : utilisation de mdadm + LVM2+UBUNTU-alternate-CD ====== 
 + 
 +Le but de ce tutoriel est d'​expliquer comment installer un système permettant le remplacement d'un disque dur en panne sans perte de données. Nous utiliserons deux types de raid: 
 +  * le **raid1** pour le point de montage **/boot** 
 +    ​<note important>​en effet Grub ne sait pas booter sur du LVM. 
 +En revanche, **Grub2** le permet désormais (au moins depuis la version présente dans Debian/​lenny). Cette limitation devient donc caduque même avec une partition de boot LVM+RAID (software).</​note>​ 
 + 
 +  * le **raid5+LVM** pour la **racine** et **/home** (j'ai choisi de faire des partions LVM sur le raid5 car celle-ci peuvent être facilement dimensionnées  ​posteriori. 
 +=== AVERTISSEMENT : === 
 +  * Ce tutoriel n'est en aucun cas un manuel de référence,​ il est juste le fruit de mon expérience qu'il me semblait intéressant de partager. 
 +  * Ce tutoriel n'​explique pas non plus ce qu'est le RAID ou le LVM, je vous laisse lire les nombreux wiki qui existent sur la question. 
 +  * Je vous conseille ​ de faire quelques tests de pannes tant que vous n'avez pas de données sensibles. 
 +=== CONFIGURATION : === 
 +  * UBUNTU Gutsy 7.10 
 +  * 3 disques durs de 40 Go 
 +=== AVANT DE COMMENCER : === 
 +  * Télécharger et graver le alternate-CD de Ubuntu 
 + 
 +=== ARCHITECTURE DE L'​INSTALLATION : === 
 +{{tutoriel:​config.png|}} 
 + 
 + 
 +=====  Installation ===== 
 + 
 +Booter sur le CD, taper F2 pour choisir la langue française puis sélectionner le menu **« Installer sur le disque dur »**. 
 + 
 +(en mode texte, pour éviter certains bugs, avec les disques ide) 
 + 
 + 
 + 
 + 
 +==== Partitionnement des disques ==== 
 +Nous allons utiliser l'​outil de partitionnement du CD et le faire manuellement. Choisir donc **« partitionnement manuel »** 
 +Les 3 disques doivent normalement apparaitre comme ci-dessous:​ 
 + 
 +{{tutoriel:​disques-avant-partions.jpg|}} 
 + 
 +Sélectionner un espace libre et créer les 3 partitions : 
 +  * une  de 500Mo utilisée comme **« swap »** 
 +  * une de 500Mo utilisée comme **« raid »** et rajouter l'​indicateur d'​amorçage sur "présent"​ 
 +  * une dernière de 39 Go utilisé comme  **« raid »** 
 + 
 +Répéter l'​opération sur les 3 disques. Cela doit donner quelque chose dans ce gout là: 
 + 
 +{{tutoriel:​disques-partitionnes.jpg|}} 
 + 
 +==== Création des périphériques RAID ==== 
 +A l'aide de la barre de défilement verticale remonter et sélectionner le menu « Configurer le  RAID logiciel » 
 + 
 +{{tutoriel:​menu-config-raid.jpg|}} 
 + 
 +Là un écran apparait pour savoir si il faut appliquer les changements,​ répondre **« oui »**, après quelques minutes d'​attente un nouveau menu apparait, celui-ci vous permettra de **«  créer un périphérique multidisque »** autrement dit les deux périphériques RAID. 
 +A ce stade on va vous demander le type de RAID à créer ​ ici du RAID 1 (ATTENTION la photo est trompeuse) 
 + 
 +{{tutoriel:​type-de-raid.jpg|}} 
 + 
 +Pour le premier périphérique en RAID 1 choisir les partitions **sda2,​sdb2,​sdc2** en utilisant la touche « espace » pour sélectionner et la touche « TAB » pour changer d'​endroit dans la zone graphique. 
 + 
 +{{tutoriel:​creation-raid1.jpg|}} 
 + 
 +Répondre aux quelques questions qui vous sont posées concernant les caractéristiques du RAID : j'ai personnellement choisi 3 disques, et 0 en secours. 
 +Réaliser la même opération pour créer le RAID 5 à l'aide des partitions sda3,sdb3 et sdc3 
 + 
 + 
 +Continuer jusqu'​à obtenir un écran comme le suivant, confirmant bien la création des périphériques RAID. 
 + 
 +{{tutoriel:​config-lvm.jpg|}} 
 + 
 +C'est à ce moment que le RAID 5 se construit. Avant de faire toutes autres choses, laissez lui le temps de se construire entièrement. Pour vérifier celà, allez en mode console (CTRL ALT F2) et tapez la commande suivante : 
 +cat /proc/mdstat 
 + 
 +Vous voyez l'​avancement de la construction de votre RAID 5 (pourcentage et minutes restantes) puis CTRL ALT F1 pour revenir sous l'​install d' Ubuntu. 
 + 
 +Une fois fini, 
 +Pour le périphérique RAID 5: __changer le type de système de fichier de partitions, mettre utilisé comme **« LVM »**__ 
 + 
 + 
 + 
 + 
 +==== Configuration du LVM === 
 +A ce stade doit apparaître un menu **« Configurer le gestionnaire de volumes logiques (LVM) » ** qui va nous permettre de créer nos différents:​ 
 +  * volumes physiques,​ 
 +  * groupes de volumes 
 +  * et volumes logiques 
 +sur le RAID 5. 
 + 
 +FIXME Ajout de la possibilité de chiffrer entièrement la LVM à ce stade. 
 + 
 +A l'aide des différents écrans, créer : 
 +  * Un volume physique sur le périphérique RAID5 ici /dev/md1 
 + 
 +__Remarque:​__ les périphériques RAID sont nommés md0 et md1 
 + 
 +  * Un groupe de volume appelé //« mvg »//, contenant le volume physique précédent 
 +  * Et deux volumes logiques, le 1er  appelé //« racine »// de 10Go et le 2nd appelé //« home »// de 68Go, 
 + 
 +A la fin de la configuration vous devez obtenir quelque chose comme ceci: 
 + 
 +{{tutoriel:​fin-lvm.jpg|}} 
 + 
 +puis vous obtenez une nouvelle table de partition 
 + 
 +{{tutoriel:​fin-partionnement.jpg|}} 
 + 
 +__Remarque :__ On peut voir les partitions LVM apparaître. 
 + 
 + 
 + 
 +==== Finalisation ==== 
 +Il ne nous reste plus qu'à paramétrer le type de système de fichier ​"ext3" que l'on souhaite sur les partitions et les différents points de montages. A la fin cela doit donner quelque chose dans ce goût là: 
 + 
 +{{tutoriel:​fin-montage.jpg|}} 
 + 
 +Il ne vous reste plus qu'à continuer l'​installation normale de UBUNTU 
 + 
 + 
 + 
 + 
 + 
 +===== Modifications complémentaires ===== 
 +Votre système est maintenant installé, démarrez-le. Si vous voulez qu'il arrive à démarrer avec des lecteurs en panne il va falloir faire quelques modifications. 
 + 
 + 
 + 
 + 
 + 
 +==== Modification du fichier de configuration de mdadm ==== 
 +Il ne faut pas oublier de renseigner le fichier de configuration **/etc/​mdadm/​mdadm.conf** sur les différents RAID existant, voici le mien 
 + 
 + # definitions of existing MD arrays 
 + DEVICE /dev/sda2 /dev/sdb2 /dev/sdc2 /dev/sda3 /dev/sdb3 /dev/sdc3 
 + ARRAY /dev/md0 devices=/​dev/​sda2,/​dev/​sdb2,/​dev/​sdc2 level=raid1 num-devices=3 UUID=80ebfd5f:​2385410e:​988bcc54:​d4011508 
 + ARRAY /dev/md1 devices=/​dev/​sda3,/​dev/​sdb3,/​dev/​sdc3 level=raid5 num-devices=3 UUID=74c43784:​06f6be21:​90a22a85:​a8e3aa21 
 + 
 +On peut commencer à remplir automatiquement le fichier en utilisant la commande suivante: 
 + 
 + #​mdadm ​ --examine --scan ​>> /​etc/​mdadm/​mdadm.conf 
 + 
 +==== Installation de Grub sur les autres disques ==== 
 +il suffit de taper les commandes:​ 
 + #​grub-install hd1 
 + #​grub-install hd2 
 + 
 +==== Modification du fichier de configuration de GRUB ==== 
 +Par défaut GRUB se sert du premier disque pour démarrerdans certaines conditions il peut être utile de démarrer à partir des autres disques. Nous allons donc modifier le fichier de configuration ​ **/​boot/​grub/​menu.lst**. et y ajouter deux autres menus. 
 + 
 +NOUVEAU CODE: 
 + fallback 1 2 
 + 
 + title ​          ​Ubuntu 7.10, kernel 2.6.22-14-generic (disque 0) 
 + root            (hd0,1) 
 + kernel ​         /​vmlinuz-2.6.22-14-generic root=/​dev/​mapper/​mvg-racine ro quiet splash 
 + initrd ​         /​initrd.img-2.6.22-14-generic 
 + quiet 
 + 
 + title ​          ​Ubuntu 7.10, kernel 2.6.22-14-generic (disque 1) 
 + root            (hd1,1) 
 + kernel ​         /​vmlinuz-2.6.22-14-generic root=/​dev/​mapper/​mvg-racine ro quiet splash 
 + initrd ​         /​initrd.img-2.6.22-14-generic 
 + quiet 
 + 
 + title ​          ​Ubuntu 7.10, kernel 2.6.22-14-generic (disque 2) 
 + root            (hd2,1) 
 + kernel ​         /​vmlinuz-2.6.22-14-generic root=/​dev/​mapper/​mvg-racine ro quiet splash 
 + initrd ​         /​initrd.img-2.6.22-14-generic 
 + quiet 
 + 
 + title ​          ​Ubuntu 7.10, kernel 2.6.22-14-generic (recovery mode) 
 + root            (hd0,1) 
 + kernel ​         /​vmlinuz-2.6.22-14-generic root=/​dev/​mapper/​mvg-racine ro single 
 + initrd ​         /​initrd.img-2.6.22-14-generic 
 + 
 + title ​          ​Ubuntu 7.10, memtest86+ 
 + root            (hd0,1) 
 + kernel ​         /​memtest86+.bin 
 + quiet 
 + 
 +==== Désinstaller dmraid si nécessaire ==== 
 +Des problèmes peuvent surgir quand dmraid est installé en même temps que mdadm, voir [[http://ubuntuforums.org/showthread.php?​t=1149669&​highlight=%2Fdev%2Fblock%2F252%3A1 | ce poste]]
 + 
 +Bien que les disques sont toujours présent dans /dev (/dev/sda/​dev/​sdb,​..) les partitions des disques (/dev/sda1, /dev/sda2, /dev/sdb1, ..) ont disparu. 
 +On ne sait dès lors plus manipuler le raid avec mdadm comme il se doit (--add, --fail, --remove) car la partition n'​existe plus dans /dev/. 
 + 
 +Il suffit de désinstaller dmraid pour régler le problème. 
 + 
 +<​code>​ 
 +sudo apt-get remove dmraid 
 +</​code>​ 
 + 
 +===== Simulation de pannes ===== 
 +===ATTENTION ​:=== 
 +La reconstruction du RAID 5 peut être longue. 
 + 
 +==== 1er test ==== 
 +Mettre en panne le sda2 
 + #mdadm --fail /dev/md0 /dev/sda2 
 +en avoir la confirmation 
 + #cat /​proc/​mdstat 
 +le supprimer du tableau RAID 
 + #mdadm --remove /dev/md0 /dev/sda2 
 +vous pouvez redémarrer le PC et l'​ajouter à nouveau 
 + #mdadm --add /dev/md0 /dev/sda2 
 +Voir l'​avancement de la reconstruction **(Ctrl C pour sortir)** 
 + #watch cat /​proc/​mdstat 
 + 
 + 
 + 
 +==== 2ème test ==== 
 +débrancher le //sdb// et redémarrer,​ là le PC bloque, au bout de //10 minutes// vous tombez sur une invite de commande **( Initramfs )**Le système n'est pas arrivé à assembler les périphériques RAID, il vous suffit alors de taper : 
 + #/sbin/mdadm  --assemble --scan 
 +Puis 
 + #exit 
 +le système devrait arriver à démarrer. Puis en faisant 
 + #cat /​proc/​mdstat 
 +vous vous apercevez que //sdb2 et sdb3// ​ sont défectueux,​ votre système marche bien sur 2 disques. Arrêter le système rebrancher le disque et démarrer le système. //( il vous faudra peu être assembler à nouveau les disques)//​ 
 + 
 +Vous pouvez constater que //sdb2 et sdb3// ​ sont encore défectueux il faut donc les ajouter à nouveau aux deux tableaux RAID. (quelquefois il faut faire un //​--remove//​ avant le //​--add//​) 
 + #mdadm --add /dev/md0 /dev/sdb2 
 + #mdadm --add /dev/md1 /dev/sdb3 
 +suivre la reconstruction 
 + #watch cat /​proc/​mdstat 
 + 
 +__Remarque :__ si **/​sbin/​mdadm --assemble --scan** ne marche pas vous pouvez mieux spécifier:​ 
 + #/​sbin/​mdadm ​ --assemble /dev/md0 /dev/sdb2 
 + #/​sbin/​mdadm ​ --assemble /dev/md1 /dev/sdb3 
 + 
 + 
 +==== 3ème test ==== 
 +débrancher le sda et redémarrer,​ là normalement vous tombez sur le shell GRUB, pour lancer le menu de GRUB taper: 
 + configfile (hd0,​1)/​grub/​menu.lst 
 +vous devez tomber sur le même invite de commande que pour le **2ème test**, faite donc la même chose mais cette fois ci avec sda 
 + 
 +__Remarque :__ Le clavier de GRUB est configuré en qwerty a vous de retrouver les bonnes touches. 
 + 
 +==== Conclusion ==== 
 +On est donc arrivé à démarrer le système sur seulement 2 disques ce qui permet de changer le 3ème. une fois le nouveau disque inséré il faut le partitionner à l'aide de //cfdisk// par exemple et ajouter chaque partitions dans le bon tableau RAID. 
 + 
 + 
 +===== Alerte de panne ===== 
 + 
 +Si un disque dur tombe en panne il faut le savoir, le système fonctionnera encore même avec 2 disques (c'est d'​ailleurs pour cela que l'on s'est donné tout ce mal), il sera sûrement un peu plus lent. 
 + 
 +//mdadm// permet de vous envoyer un mail automatiquement quand un disque est défaillant. Il faut dans un premier temps installer Postfix pour gérer l'​envois des mails, cf. « [[:​postfix_systeme_satellite]] ». 
 + 
 +Il faut en suite renseigner la variable **MAILADDR** en la faisant suivre de votre adresse EMAIL dans le fichier **/​etc/​mdadm/​mdadm.conf**on peu même spécifier l'​expéditeur avec **MAILFROM**. 
 +Exemple ​: 
 + 
 +  MAILADDR monadresse@domaine.fr  
 +  MAILFROM root@localhost 
 + 
 +il faut que //mdadm// soit mis en démon en mode //​--monitor//,​ par exemple dans un script de démarrage. 
 + 
 +  # mdadm --monitor --scan --daemonise 
 + 
 +et le tour est joué. 
 + 
 +===== Listes de commandes utiles ===== 
 +Après avoir beaucoup perdu de temps en cherchant des informations à droite et à gauche qui me permettent de récupérer mon système sachant que j'​avais installé du RAID ou du LVM ou les deux j'ai donc fait une petite compilation des commandes les plus utiles. Il faut aussi savoir que **mdadm** et **LVM** sont dans **/sbin**. et vous y avez accès même si vous tombez sur une invite de commande du style **( Initramfs )**. 
 +une fois vos périphérique RAID et vos partitions LVM retrouvées à la main faites un **« exit »** pour continuer le démarrage. 
 + 
 + 
 +==== Commandes RAID ==== 
 +Renseignement sur les périphériques RAID 
 + #mdadm --detail /dev/md0 
 +Renseignement sur une partition particulière 
 + #mdadm --examine /dev/sda2 
 +Assembler un tableau RAID déjà existant sans préciser 
 + #mdadm --assemble --scan 
 +Assembler un tableau RAID déjà existant en précisant (redémarrer le RAID) 
 + #mdadm --assemble /dev/md0 /​dev/​sd[abc]2 
 +Déclarer un disque dur en panne 
 + #mdadm --fail /dev/md0 /dev/sdb2 
 +Supprimer un disque dur d'un tableau RAID 
 + #mdadm --remove /dev/md0 /dev/sdb2 
 +Pour ajouter un nouveau disque dans le tableau RAID 
 + #mdadm --add /dev/md0 dev/sdb2 
 + 
 +Recréer les périphériques multidisque si ils ne sont pas présent dans répertoire /dev 
 + ​ #​mknod /dev/md0 b 9 0 
 + #mknod /dev/md1 b 9 1 
 + 
 +Créer un nouveau tableau RAID 
 + #mdadm --create --verbose /dev/md0 --level=1 --raid-devices=3 /dev/sda2 /dev/sdb2 /dev/sdc2 
 + 
 +Pour voir l'​état des différents disques RAID consulter le fichier **/​proc/​mdstat ** en tapant la commande: 
 + #watch cat /​proc/​mdstat  
 +pour sortir ​ un bon vieux //« Crtl C »// 
 + 
 +__Remarque :__ le fichier de configuration de mdadm est **/​etc/​mdadm/​mdadm.conf** 
 + 
 + 
 +==== Commande LVM ==== 
 + 
 +Recréer les périphériques node dans /​dev/​mapper 
 + #​vgmknodes 
 +Activer des Groupes Volumes qui existent déjà. 
 + #vgchange -a y 
 + 
 +Voir aussi **pvs**, **vgs** et **lvs** pour voir ce qui existe comme groupes physiques, groupes de volumes et  volumes logiques. 
 + 
 + 
 + 
 + 
 +===== Conclusion ===== 
 +Dans ce document j'ai donc essayé d'​avoir une approche très pratique du problème en compilant différentes informations sur mdadm, LVM2, GRUB et l'​ALTERNATE-CD de UBUNTU.
  • tutoriel/installation_raid_lvm.1290876779.txt.gz
  • Dernière modification: Le 18/04/2011, 14:50
  • (modification externe)
  • Actuellement bloqué par: 3.133.123.185,10.42.2.254